diff --git a/rs/.rustc_info.json b/rs/.rustc_info.json index 706de253d..780d5b5e0 100644 --- a/rs/.rustc_info.json +++ b/rs/.rustc_info.json @@ -1 +1 @@ -{"rustc_fingerprint":8576827126288002184,"outputs":{"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.69.0 (84c898d65 2023-04-16)\nbinary: rustc\ncommit-hash: 84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc\ncommit-date: 2023-04-16\nhost: x86_64-unknown-linux-gnu\nrelease: 1.69.0\nLLVM version: 15.0.7\n","stderr":""},"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/runner/.rustup/toolchains/1.69-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"unknown\"\nunix\n","stderr":""}},"successes":{}} \ No newline at end of file +{"rustc_fingerprint":10379912411964340053,"outputs":{"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/runner/.rustup/toolchains/1.69-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"unknown\"\nunix\n","stderr":""},"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.69.0 (84c898d65 2023-04-16)\nbinary: rustc\ncommit-hash: 84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc\ncommit-date: 2023-04-16\nhost: x86_64-unknown-linux-gnu\nrelease: 1.69.0\nLLVM version: 15.0.7\n","stderr":""}},"successes":{}} \ No newline at end of file diff --git a/rs/doc/search-index.js b/rs/doc/search-index.js index 1212968f6..a952c189e 100644 --- a/rs/doc/search-index.js +++ b/rs/doc/search-index.js @@ -1,5 +1,5 @@ var searchIndex = JSON.parse('{\ -"mango_v4":{"doc":"","t":"HDLOAAAALOLLLFLLLLLLLFAOOALOAAFLLALALLLLAOLLAOOLLAOALLLLALLALLLODDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNDDDDDDDDDDDDNDNNDNDDDEDDDDDDNDDNDDDDDDDDDDDDDDDDDDDDDDDDDDDDNDDDDDDDEDDEDDDEDDDNDDDDDDDDDDDDDDDDNLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAAAMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRFFRFFRFFRFFDDIDIDIIIILLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMMMKKLLLLKKLLLLKKLKKLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFNNNNNNINNNNNNNNNNNNNNNNNNNNNNNNINNNENNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNLLLLLLLLLKLLLLOOLLLLLKKLLLLLLLOOLLLLLLLLLLKLLDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLMMLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLIDDENNNDDDDDDDDLLLLLLLLLMMMLLLLLLLLLLLLLLMKLLLLMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLMLLLMMLFFFLLMLLLLLLLLLLLLLLLLLLLLLLLKLLMLMMMLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLMMFFMMMLLLLLLLLMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIKKKKDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMDDDDDDDDDDDDDDNNEDDDDDDDDDDDDNDDNDNDDDDDDNDDDDDDDDDDNNDDDDDDLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMFFMMMLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDIDDDDLMMMLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLFLLLLLLLLLLLLLLLFFFFFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLKLKLKLKLKLKLMMMMMMMMMMLLLLLLLLLLLLLLMMMMMFMMMFMMLLLLLLLLLLLLLLMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLNNNNNNNNNNNNDDNNNNDNNNNNDDDDENNERRNIIDIDDERRNDNNNNDNDNNNRNRNNDNNQENDNNNNNNRRRDDDGGGIDGGGNNDGENRRRNNNNNNDGDNNNNDDDNNDENDEEDDDEDNDRNNNNNNNNNNNNDGDNDNNNENNNNENNRRRIRENNNNNNNNDGDDNNNNEENDNNDNNNNNRNNDNNNNEENNENNNGNNDNNNNDNNNDDRLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMOOLLMLLLLLLMLMMLLLLLLMLMMLLLLLLLLLLMMMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMOOLMMMMMLMLLMMMLLMLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMMMMMMMLMLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMFLLLLMMKLLMMMMMMLLLLLKLLLLLLLLLLLLMMMLMMMMLMLLMMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLMMMMFMMMMMMMMLLLLLMFFMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLMMLMLLMMMMMMMMMMMMMMOOMLLLLLKLMMLMMMMMMMLMMMKLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLLLLMMMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMMMMMMMMMLMKKKFMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLMMLMMMMLMLMMMMMMMMMMLLMMLMLLMMMLMMMLMLMMMMMMLLLLLLLMMMMMMLLLLLMMMMMLLLLLLLFLLLMMLLLMMLLMMLMMMMOOMLMMMMMMFFFLLLMLFMAMLMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLMLMLLMLLLMMLLLLLLMMMMLMMLMMLMMMFMLMLMMMLMMMMLLLAAMMMMLMMLMMMMMFMMMLLLLLMLMMMMMMMMMLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLMOOMLKLLKLLLMMMLLLMMMMMMMLLLLLMMLMLLAMMMLMMLLMMMMMAAMMMMMMLMMMLMLMMMLMMMMLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLMMLMLMMMMMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMMMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMRFFRFFRFFRFFRFFRFFRFFDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFF","n":["ID","Mango","__clone_box","account_seeds","accounts","accounts_ix","accounts_zerocopy","address_lookup_table_program","az","bank_seeds","borrow","borrow_mut","cast_from","check_id","checked_as","checked_cast_from","clone","clone_into","deref","deref_mut","drop","entry","error","error_msg","error_msg_typed","events","from","group_seeds","health","i80f48","id","id","init","instruction","into","logs","lossless_try_into","lossless_try_into","lossy_into","lossy_into","mango_v4","openbook_v2_market_seeds","overflowing_as","overflowing_cast_from","program","require_msg","require_msg_typed","saturating_as","saturating_cast_from","serum3_cpi","serum_market_seeds","state","to_owned","try_from","try_into","type_id","types","unwrapped_as","unwrapped_cast_from","util","vzip","wrapping_as","wrapping_cast_from","zip","AccountBuybackFeesWithMngo","AccountClose","AccountCreate","AccountCreateV2","AccountEdit","AccountExpand","AccountSizeMigration","AccountToggleFreeze","AdminPerpWithdrawFees","AdminTokenWithdrawFees","AltExtend","AltSet","Benchmark","ComputeAccountData","FlashLoanBegin","FlashLoanEnd","FlashLoanSwapBegin","GroupClose","GroupCreate","GroupEdit","GroupWithdrawInsuranceFund","HealthRegionBegin","HealthRegionEnd","IxGateSet","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2PlaceOrder","OpenbookV2PlaceTakeOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","PerpCancelAllOrders","PerpCancelAllOrdersBySide","PerpCancelOrder","PerpCancelOrderByClientOrderId","PerpCloseMarket","PerpConsumeEvents","PerpCreateMarket","PerpDeactivatePosition","PerpEditMarket","PerpForceClosePosition","PerpLiqBaseOrPositivePnl","PerpLiqForceCancelOrders","PerpLiqNegativePnlOrBankruptcy","PerpLiqNegativePnlOrBankruptcyV2","PerpPlaceOrder","PerpSettleFees","PerpSettlePnl","PerpUpdateFunding","Serum3CancelAllOrders","Serum3CancelOrder","Serum3CloseOpenOrders","Serum3CreateOpenOrders","Serum3DeregisterMarket","Serum3EditMarket","Serum3LiqForceCancelOrders","Serum3PlaceOrder","Serum3RegisterMarket","Serum3SettleFunds","Serum3SettleFunds","Serum3SettleFundsV2","Serum3SettleFundsV2Extra","StubOracleClose","StubOracleCreate","StubOracleSet","TokenAddBank","TokenConditionalSwapCancel","TokenConditionalSwapCreate","TokenConditionalSwapStart","TokenConditionalSwapTrigger","TokenDeposit","TokenDepositIntoExisting","TokenDeregister","TokenEdit","TokenForceCloseBorrowsWithToken","TokenLiqBankruptcy","TokenLiqWithToken","TokenRegister","TokenRegisterTrustless","TokenUpdateIndexAndRate","TokenWithdraw","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account_a","account_a","account_b","account_b","address_lookup_table","address_lookup_table","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","associated_token_program","authority","authority","authority","authority","authority","authority","authority","authority","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank","bank","bank","bank","bank","bank","bank","bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_oracle","base_oracle","base_vault","base_vault","base_vault","base_vault","base_vault","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buy_bank","buy_bank","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","creator","dao_account","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","destination","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","dummy","dust_vault","event_heap","event_heap","event_heap","event_queue","event_queue","event_queue","event_queue","existing_bank","fallback_oracle","fallback_oracle","fallback_oracle","fees_bank","fees_oracle","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","index_reservation","index_reservation","index_reservation","index_reservation","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","input_mint","instructions","instructions","instructions","instructions","insurance_bank","insurance_bank_vault","insurance_mint","insurance_oracle","insurance_vault","insurance_vault","insurance_vault","insurance_vault","insurance_vault","insurance_vault","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","liab_mint_info","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor_authority","liqor_authority","liqor_owner","liqor_owner","liqor_owner","liqor_owner","liqor_owner","liqor_owner","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","market","market","market_asks","market_asks","market_asks","market_asks","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_bids","market_bids","market_bids","market_bids","market_event_queue","market_event_queue","market_event_queue","market_event_queue","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_request_queue","market_request_queue","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","mint","mint","mint","mint","mint_info","mint_info","mint_info","mint_info","mint_info","mint_info","mngo_bank","mngo_oracle","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","output_mint","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer_bank","payer_bank","payer_bank","payer_oracle","payer_oracle","payer_oracle","payer_vault","payer_vault","payer_vault","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_oracle","quote_oracle","quote_vault","quote_vault","quote_vault","quote_vault","quote_vault","quote_vault","rent","rent","rent","rent","rent","rent","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","sell_bank","sell_bank","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","settle_bank","settle_bank","settle_bank","settle_bank","settle_bank","settle_oracle","settle_oracle","settle_oracle","settle_oracle","settle_oracle","settle_vault","settle_vault","settle_vault","settler","settler_owner","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","token_account","token_account","token_account","token_account","token_account","token_authority","token_authority","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","v1","v2","vault","vault","vault","vault","vault","vault","vault","vault","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","AbortTransaction","AccountBuybackFeesWithMngo","AccountClose","AccountCreate","AccountCreateV2","AccountEdit","AccountExpand","AccountSizeMigration","AccountToggleFreeze","AdminPerpWithdrawFees","AdminTokenWithdrawFees","AltExtend","AltSet","Ask","Benchmark","Bid","CancelProvide","ComputeAccountData","DecrementTake","FlashLoanBegin","FlashLoanEnd","FlashLoanSwapBegin","FlashLoanType","GroupClose","GroupCreate","GroupEdit","GroupWithdrawInsuranceFund","HealthRegionBegin","HealthRegionEnd","ImmediateOrCancel","InterestRateParams","IxGateSet","Limit","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2PlaceOrder","OpenbookV2PlaceTakeOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","PerpCancelAllOrders","PerpCancelAllOrdersBySide","PerpCancelOrder","PerpCancelOrderByClientOrderId","PerpCloseMarket","PerpConsumeEvents","PerpCreateMarket","PerpDeactivatePosition","PerpEditMarket","PerpForceClosePosition","PerpLiqBaseOrPositivePnl","PerpLiqForceCancelOrders","PerpLiqNegativePnlOrBankruptcy","PerpLiqNegativePnlOrBankruptcyV2","PerpPlaceOrder","PerpSettleFees","PerpSettlePnl","PerpUpdateFunding","PostOnly","Serum3CancelAllOrders","Serum3CancelOrder","Serum3CloseOpenOrders","Serum3CreateOpenOrders","Serum3DeregisterMarket","Serum3EditMarket","Serum3LiqForceCancelOrders","Serum3OrderType","Serum3PlaceOrder","Serum3RegisterMarket","Serum3SelfTradeBehavior","Serum3SettleFunds","Serum3SettleFundsV2","Serum3SettleFundsV2Extra","Serum3Side","StubOracleClose","StubOracleCreate","StubOracleSet","Swap","TokenAddBank","TokenConditionalSwapCancel","TokenConditionalSwapCreate","TokenConditionalSwapStart","TokenConditionalSwapTrigger","TokenDeposit","TokenDepositIntoExisting","TokenDeregister","TokenEdit","TokenForceCloseBorrowsWithToken","TokenLiqBankruptcy","TokenLiqWithToken","TokenRegister","TokenRegisterTrustless","TokenUpdateIndexAndRate","TokenWithdraw","Unknown","__clone_box","__clone_box","__clone_box","__clone_box","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account_a","account_a","account_b","account_b","address_lookup_table","address_lookup_table","adjustment_factor","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","associated_token_program","authority","authority","authority","authority","authority","authority","authority","authority","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank","bank","bank","bank","bank","bank","bank","bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_oracle","base_oracle","base_vault","base_vault","base_vault","base_vault","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buy_bank","buy_bank","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","compute_budget","creator","dao_account","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","destination","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","dummy","dust_vault","eq","event_heap","event_heap","event_heap","event_queue","event_queue","event_queue","event_queue","existing_bank","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","fallback_oracle","fallback_oracle","fallback_oracle","fees_bank","fees_oracle","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","index_reservation","index_reservation","index_reservation","index_reservation","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","input_mint","instructions","instructions","instructions","instructions","insurance_bank","insurance_bank_vault","insurance_mint","insurance_oracle","insurance_vault","insurance_vault","insurance_vault","insurance_vault","insurance_vault","insurance_vault","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","jupiter_mainnet_3","jupiter_mainnet_4","jupiter_mainnet_6","liab_mint_info","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor_authority","liqor_authority","liqor_owner","liqor_owner","liqor_owner","liqor_owner","liqor_owner","liqor_owner","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","market","market","market_asks","market_asks","market_asks","market_asks","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_bids","market_bids","market_bids","market_bids","market_event_queue","market_event_queue","market_event_queue","market_event_queue","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_request_queue","market_request_queue","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","max_rate","mint","mint","mint","mint","mint_info","mint_info","mint_info","mint_info","mint_info","mint_info","mngo_bank","mngo_oracle","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","output_mint","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer_bank","payer_bank","payer_bank","payer_oracle","payer_oracle","payer_oracle","payer_vault","payer_vault","payer_vault","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_oracle","quote_oracle","quote_vault","quote_vault","quote_vault","quote_vault","quote_vault","rate0","rate1","rent","rent","rent","rent","rent","rent","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","sell_bank","sell_bank","serialize","serialize","serialize","serialize","serialize","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","settle_bank","settle_bank","settle_bank","settle_bank","settle_bank","settle_oracle","settle_oracle","settle_oracle","settle_oracle","settle_oracle","settle_vault","settle_vault","settle_vault","settler","settler_owner","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_owned","to_owned","to_owned","to_owned","token_account","token_account","token_account","token_account","token_account","token_authority","token_authority","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","transfer_ctx","transfer_ctx","transfer_ctx","transfer_ctx","transfer_ctx","transfer_ctx","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","util0","util1","v1","v2","vault","vault","vault","vault","vault","vault","vault","vault","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","AccountInfoRef","AccountInfoRefMut","AccountReader","KeyedAccount","KeyedAccountReader","KeyedAccountSharedData","LoadMutZeroCopy","LoadMutZeroCopyRef","LoadZeroCopy","LoadZeroCopyRef","__clone_box","__clone_box","account","az","az","az","az","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_slice","borrow_slice","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone_into","clone_into","data","data","data","data","data","data","data","data","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","from","from","from","from","init","init","init","init","into","into","into","into","key","key","key","key","key","key","key","key","key","load","load","load","load","load","load","load_fully_unchecked","load_fully_unchecked","load_fully_unchecked","load_fully_unchecked","load_fully_unchecked","load_fully_unchecked","load_mut","load_mut","load_mut","load_mut_fully_unchecked","load_mut_fully_unchecked","load_mut_fully_unchecked","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","new","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","addresses","contains","cpi_extend","AccountIsFrozen","BankBorrowLimitReached","BankDepositLimit","BankNetBorrowsLimitReached","BeingLiquidated","CannotSettleWithSelf","Contextable","DelegateWithdrawMustClosePosition","DelegateWithdrawOnlyToOwnerAta","DelegateWithdrawSmall","DepositLimit","DepositsIntoLiquidatingMustRecover","GroupIsHalted","HasLiquidatablePerpBasePosition","HasLiquidatablePositivePerpPnl","HasLiquidatableTokenPosition","HasOpenOrUnsettledSerum3Orders","HasOpenPerpOrders","HasOpenPerpTakerFills","HealthAccountBankNotWritable","HealthMustBeNegative","HealthMustBePositive","HealthMustBePositiveOrIncrease","HealthRegionBadInnerInstruction","InitAssetWeightCantBeNegative","InsufficentBankVaultFunds","InvalidBank","InvalidCLMMOracle","InvalidFeedForCLMMOracle","InvalidFlashLoanTargetCpiProgram","InvalidHealthAccountCount","IsAnchorErrorWithCode","IsBankrupt","IsNotBankrupt","IxIsDisabled","MangoError","MarketInReduceOnlyMode","MathError","MaxSettleAmountMustBeGreaterThanZero","MissingFeedForCLMMOracle","NoFreePerpPositionIndex","NoFreeSerum3OpenOrdersIndex","NoFreeTokenPositionIndex","NoLiquidatablePerpBasePosition","NotImplementedError","OracleConfidence","OracleStale","PerpHasBaseLots","PerpOrderIdNotFound","PerpPositionDoesNotExist","ProfitabilityMismatch","Serum3OpenOrdersExistAlready","Serum3PriceBandExceeded","SettlementAmountMustBePositive","SomeError","TokenAssetLiquidationDisabled","TokenConditionalSwapAlreadyStarted","TokenConditionalSwapCantPayIncentive","TokenConditionalSwapExpired","TokenConditionalSwapIndexIdMismatch","TokenConditionalSwapMinBuyTokenNotReached","TokenConditionalSwapNotSet","TokenConditionalSwapNotStarted","TokenConditionalSwapPriceNotInRange","TokenConditionalSwapTakerPriceTooLow","TokenConditionalSwapTooSmallForStartIncentive","TokenConditionalSwapTypeNotStartable","TokenInForceClose","TokenInReduceOnlyMode","TokenPositionDoesNotExist","UnexpectedOracle","UnknownOracleType","WouldSelfTrade","__clone_box","az","borrow","borrow_mut","cast_from","checked_as","checked_cast_from","clone","clone_into","context","deref","deref_mut","drop","error_code","error_msg","error_msg_typed","fmt","fmt","from","init","into","is_anchor_error_with_code","is_oracle_error","lossless_try_into","lossless_try_into","lossy_into","lossy_into","name","overflowing_as","overflowing_cast_from","require_msg","require_msg_typed","saturating_as","saturating_cast_from","to_owned","to_string","try_from","try_into","type_id","unwrapped_as","unwrapped_cast_from","vzip","with_context","wrapping_as","wrapping_cast_from","Equity","MangoAccountData","PerpEquity","TokenEquity","az","az","az","az","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","data","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","drop","drop","drop","drop","equity","fmt","fmt","fmt","from","from","from","from","init","init","init","init","init_health","into","into","into","into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","maint_health","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","perp_market_index","perps","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","serialize","serialize","serialize","serialize","token_index","tokens","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","value","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","AccountRetriever","FixedOrderAccountRetriever","HealthCache","HealthType","Init","LiquidationEnd","Maint","PerpInfo","Prices","ScannedBanksAndOracles","ScanningAccountRetriever","Serum3Info","TokenBalance","TokenInfo","TokenMaxReserved","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","adjust_token_balance","ais","allow_asset_liquidation","asks_base_lots","asset","asset_weighted_price","assets_and_liabs","az","az","az","az","az","az","az","az","az","az","az","balance_spot","bank_and_oracle","bank_and_oracle","bank_and_oracle","banks_mut_and_oracles","banks_mut_and_oracles","base_info_index","base_lot_size","base_lots","base_prices","begin_fallback_oracles","begin_perp","begin_serum3","bids_base_lots","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","compute_health","compute_health_from_fixed_accounts","default","default","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_variant","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","effective_token_balances","eq","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","has_liq_spot_assets","has_liq_spot_borrows","has_open_fills","has_open_orders","has_perp_base_positions","has_perp_negative_pnl_no_base","has_perp_open_fills","has_perp_open_orders","has_perp_positive_pnl_no_base","has_phase1_liquidatable","has_phase2_liquidatable","has_phase3_liquidatable","has_possible_spot_liquidations","has_serum3_open_orders_funds","has_zero_funds","health","health_assets_and_liabs_stable_assets","health_assets_and_liabs_stable_liabs","health_contribution","health_ratio","health_unsettled_pnl","in_phase1_liquidation","in_phase2_liquidation","in_phase3_liquidation","init","init","init","init","init","init","init","init","init","init","init","init_asset_weight","init_base_asset_weight","init_base_liab_weight","init_liab_weight","init_overall_asset_weight","init_scaled_asset_weight","init_scaled_liab_weight","into","into","into","into","into","into","into","into","into","into","into","into_banks_and_oracles","is_liquidatable","leverage","liab","liab_weighted_price","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","maint_asset_weight","maint_base_asset_weight","maint_base_liab_weight","maint_liab_weight","maint_overall_asset_weight","market_index","max_borrow_for_health_ratio","max_perp_for_health_ratio","max_serum_reserved","max_swap_source_for_health_fn","max_swap_source_for_health_ratio_ignoring_limits","max_swap_source_for_health_ratio_with_limits","n_banks","n_perps","new","new_fixed_order_account_retriever","new_health_cache","new_health_cache_skipping_bad_oracles","new_single_price","new_with_staleness","oracle","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","perp_info","perp_market_and_oracle_price","perp_market_and_oracle_price","perp_market_and_oracle_price","perp_market_index","perp_max_settle","prices","quote","quote_info_index","recompute_perp_info","recompute_serum3_info","require_after_phase1_liquidation","require_after_phase2_liquidation","reserved_base","reserved_base_as_quote_lowest_ask","reserved_quote","reserved_quote_as_base_highest_bid","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","scanned_bank_and_oracle","scanned_bank_and_oracle","scanned_perp_market_and_oracle","scanned_serum_oo","serialize","serum_oo","serum_oo","serum_oo","settle_token_index","sol_oracle_index","spot_amount_given_for_health_zero","spot_amount_taken_for_health_zero","spot_and_perp","stable","staleness_slot","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","token_index","token_info","token_info_index","token_infos","total_serum3_potential","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unweighted_health_unsettled_pnl","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","usdc_oracle_index","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","ClampToInt","LowPrecisionDivision","checked_div_30bit_precision","checked_div_f64_precision","clamp_to_i64","clamp_to_u64","AccountBuybackFeesWithMngo","AccountClose","AccountCreate","AccountCreateV2","AccountEdit","AccountExpand","AccountExpandV2","AccountSizeMigration","AccountToggleFreeze","AdminPerpWithdrawFees","AdminTokenWithdrawFees","AltExtend","AltSet","Benchmark","ComputeAccountData","FlashLoanBegin","FlashLoanEnd","FlashLoanEndV2","FlashLoanSwapBegin","GroupClose","GroupCreate","GroupEdit","GroupWithdrawInsuranceFund","HealthRegionBegin","HealthRegionEnd","IxGateSet","LiqTokenBankruptcy","LiqTokenWithToken","OpenbookV2CancelAllOrders","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2PlaceOrder","OpenbookV2PlaceTakerOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","PerpCancelAllOrders","PerpCancelAllOrdersBySide","PerpCancelOrder","PerpCancelOrderByClientOrderId","PerpCloseMarket","PerpConsumeEvents","PerpCreateMarket","PerpDeactivatePosition","PerpEditMarket","PerpForceClosePosition","PerpLiqBaseOrPositivePnl","PerpLiqForceCancelOrders","PerpLiqNegativePnlOrBankruptcy","PerpLiqNegativePnlOrBankruptcyV2","PerpPlaceOrder","PerpPlaceOrderPegged","PerpPlaceOrderPeggedV2","PerpPlaceOrderV2","PerpSettleFees","PerpSettlePnl","PerpUpdateFunding","Serum3CancelAllOrders","Serum3CancelOrder","Serum3CancelOrderByClientOrderId","Serum3CloseOpenOrders","Serum3CreateOpenOrders","Serum3DeregisterMarket","Serum3EditMarket","Serum3LiqForceCancelOrders","Serum3PlaceOrder","Serum3PlaceOrderV2","Serum3RegisterMarket","Serum3SettleFunds","Serum3SettleFundsV2","StubOracleClose","StubOracleCreate","StubOracleSet","StubOracleSetTest","TokenAddBank","TokenConditionalSwapCancel","TokenConditionalSwapCreate","TokenConditionalSwapCreateLinearAuction","TokenConditionalSwapCreatePremiumAuction","TokenConditionalSwapCreateV2","TokenConditionalSwapStart","TokenConditionalSwapTrigger","TokenConditionalSwapTriggerV2","TokenDeposit","TokenDepositIntoExisting","TokenDeregister","TokenEdit","TokenForceCloseBorrowsWithToken","TokenLiqBankruptcy","TokenLiqWithToken","TokenRegister","TokenRegisterTrustless","TokenUpdateIndexAndRate","TokenWithdraw","account_num","account_num","account_num","admin_opt","allow_borrow","allow_creating_borrows","allow_creating_borrows","allow_creating_borrows","allow_creating_borrows","allow_creating_deposits","allow_creating_deposits","allow_creating_deposits","allow_creating_deposits","allowed_fast_listings_per_interval_opt","amount","amount","amount","amount","asset_token_index","asset_token_index","asset_token_index","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank_num","base_decimals","base_decimals_opt","base_liquidation_fee","base_liquidation_fee_opt","base_lot_size","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_weight_scale_start_quote","borrow_weight_scale_start_quote_opt","buyback_fees_bonus_factor_opt","buyback_fees_expiry_interval_opt","buyback_fees_opt","buyback_fees_swap_mango_account_opt","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","delegate_opt","deposit_limit","deposit_limit_opt","deposit_limit_quote_opt","deposit_weight_scale_start_quote","deposit_weight_scale_start_quote_opt","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deviation","disable_asset_liquidation","disable_asset_liquidation_opt","display_price_style","display_price_style","display_price_style","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","duration_seconds","duration_seconds","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","fast_listing_admin_opt","fee_penalty","fee_penalty_opt","fees_to_dao","fees_to_dao","flash_loan_swap_fee_rate","flash_loan_swap_fee_rate_opt","flash_loan_type","flash_loan_type","force_close","force_close_opt","force_close_opt","force_close_opt","force_close_opt","freeze","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","group_insurance_fund","group_insurance_fund","group_insurance_fund_opt","group_insurance_fund_opt","group_num","impact_quantity","impact_quantity_opt","index","index","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init_asset_weight","init_asset_weight_opt","init_base_asset_weight","init_base_asset_weight_opt","init_base_liab_weight","init_base_liab_weight_opt","init_liab_weight","init_liab_weight_opt","init_overall_asset_weight","init_overall_asset_weight_opt","intention","intention","interest_curve_scaling","interest_curve_scaling_opt","interest_rate_params","interest_rate_params_opt","interest_target_utilization","interest_target_utilization_opt","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","ix_gate","last_update_slot","liab_token_index","liab_token_index","liab_token_index","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit_price","limit_price","limit_price","limit_price","liquidation_fee","liquidation_fee_opt","loan_amount","loan_amounts","loan_fee_rate","loan_fee_rate_opt","loan_origination_fee_rate","loan_origination_fee_rate_opt","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","maint_asset_weight","maint_asset_weight_opt","maint_base_asset_weight","maint_base_asset_weight_opt","maint_base_liab_weight","maint_base_liab_weight_opt","maint_liab_weight","maint_liab_weight_opt","maint_overall_asset_weight","maint_overall_asset_weight_opt","maint_weight_shift_abort","maint_weight_shift_asset_target_opt","maint_weight_shift_end_opt","maint_weight_shift_liab_target_opt","maint_weight_shift_start_opt","maker_fee","maker_fee_opt","market_index","market_index","max_base_lots","max_base_lots","max_base_lots","max_base_lots","max_base_qty","max_base_qty","max_base_qty","max_base_qty","max_base_transfer","max_buy","max_buy","max_buy","max_buy","max_buy_token_to_liqee","max_buy_token_to_liqee","max_buyback_usd","max_funding","max_funding_opt","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_native_quote_qty_including_fees","max_native_quote_qty_including_fees","max_native_quote_qty_including_fees","max_native_quote_qty_including_fees","max_oracle_staleness_slots","max_oracle_staleness_slots","max_pnl_transfer","max_price_premium_rate","max_quote_lots","max_quote_lots","max_quote_lots","max_quote_lots","max_sell","max_sell","max_sell","max_sell","max_sell_token_to_liqor","max_sell_token_to_liqor","max_settle_amount","min_buy_token","min_funding","min_funding_opt","min_taker_price","min_vault_to_deposits_ratio","min_vault_to_deposits_ratio_opt","mngo_token_index_opt","name","name","name","name","name","name","name","name_opt","name_opt","name_opt","name_opt","net_borrow_limit_per_window_quote","net_borrow_limit_per_window_quote_opt","net_borrow_limit_window_size_ts","net_borrow_limit_window_size_ts_opt","new_addresses","num_loans","oracle_config","oracle_config","oracle_config_opt","oracle_config_opt","oracle_opt","oracle_opt","oracle_price_band","oracle_price_band_opt","order_id","order_id","order_id","order_type","order_type","order_type","order_type","order_type","order_type","order_type","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","peg_limit","peg_limit","perp_count","perp_count","perp_count","perp_count","perp_market_index","perp_oo_count","perp_oo_count","perp_oo_count","perp_oo_count","platform_liquidation_fee","platform_liquidation_fee","platform_liquidation_fee_opt","platform_liquidation_fee_opt","positive_pnl_liquidation_fee","positive_pnl_liquidation_fee_opt","price","price","price","price_end","price_lots","price_lots","price_lower_limit","price_lower_limit","price_lower_limit","price_offset_lots","price_offset_lots","price_premium_rate","price_premium_rate","price_start","price_upper_limit","price_upper_limit","price_upper_limit","quote_lot_size","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only_opt","reduce_only_opt","reduce_only_opt","reduce_only_opt","reset_net_borrow_limit","reset_stable_price","reset_stable_price","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","security_admin_opt","self_trade_behavior","self_trade_behavior","self_trade_behavior","self_trade_behavior","self_trade_behavior","self_trade_behavior","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serum3_count","serum3_count","serum3_count","serum3_count","set_fallback_oracle","settle_fee_amount_threshold","settle_fee_amount_threshold_opt","settle_fee_flat","settle_fee_flat_opt","settle_fee_fraction_low_health","settle_fee_fraction_low_health_opt","settle_pnl_limit_factor","settle_pnl_limit_factor_opt","settle_pnl_limit_window_size_ts","settle_pnl_limit_window_size_ts_opt","settle_token_index","side","side","side","side","side","side","side","side","side","side","side_option","stable_price_delay_growth_limit","stable_price_delay_growth_limit_opt","stable_price_delay_growth_limit_opt","stable_price_delay_interval_seconds","stable_price_delay_interval_seconds_opt","stable_price_delay_interval_seconds_opt","stable_price_growth_limit","stable_price_growth_limit_opt","stable_price_growth_limit_opt","start_timestamp","taker_fee","taker_fee_opt","temporary_delegate_expiry_opt","temporary_delegate_opt","testing","testing_opt","token_conditional_swap_count","token_conditional_swap_count","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_index","token_conditional_swap_index","token_conditional_swap_index","token_conditional_swap_index","token_conditional_swap_maker_fee_rate","token_conditional_swap_maker_fee_rate_opt","token_conditional_swap_taker_fee_rate","token_conditional_swap_taker_fee_rate_opt","token_count","token_count","token_count","token_count","token_index","token_index","token_index","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","version","version_opt","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","zero_util_rate","zero_util_rate_opt","AccountBuybackFeesWithMngoLog","DeactivatePerpPositionLog","DeactivateTokenPositionLog","DepositLog","FillLog","FillLogV2","FillLogV3","FilledPerpOrderLog","FlashLoanLog","FlashLoanLogV2","FlashLoanLogV3","FlashLoanTokenDetail","FlashLoanTokenDetailV2","FlashLoanTokenDetailV3","LiqTokenBankruptcy","LiqTokenWithToken","LoanOriginationFeeInstruction","PerpBalanceLog","PerpForceClosePositionLog","PerpLiqBankruptcyLog","PerpLiqBaseOrPositivePnlLog","PerpLiqBaseOrPositivePnlLogV2","PerpLiqNegativePnlOrBankruptcyLog","PerpMarketMetaDataLog","PerpSettleFeesLog","PerpSettlePnlLog","PerpTakerTradeLog","PerpUpdateFundingLog","PerpUpdateFundingLogV2","Serum3LiqForceCancelOrders","Serum3OpenOrdersBalanceLog","Serum3OpenOrdersBalanceLogV2","Serum3PlaceOrder","Serum3RegisterMarketLog","Serum3SettleFunds","TokenBalanceLog","TokenConditionalSwapCancelLog","TokenConditionalSwapCreateLog","TokenConditionalSwapCreateLogV2","TokenConditionalSwapCreateLogV3","TokenConditionalSwapStartLog","TokenConditionalSwapTrigger","TokenConditionalSwapTriggerLog","TokenConditionalSwapTriggerLogV2","TokenConditionalSwapTriggerLogV3","TokenForceCloseBorrowsWithTokenLog","TokenForceCloseBorrowsWithTokenLogV2","TokenLiqBankruptcyLog","TokenLiqWithTokenLog","TokenLiqWithTokenLogV2","TokenMetaDataLog","TokenMetaDataLogV2","TokenWithdraw","Unknown","UpdateIndexLog","UpdateRateLog","UpdateRateLogV2","WithdrawLoanLog","WithdrawLoanOriginationFeeLog","WithdrawLog","__clone_box","account_a","account_b","allow_creating_borrows","allow_creating_borrows","allow_creating_borrows","allow_creating_deposits","allow_creating_deposits","allow_creating_deposits","approved_amount","approved_amount","asset_liquidation_fee","asset_liquidation_fee","asset_price","asset_price","asset_price","asset_price","asset_token_index","asset_token_index","asset_token_index","asset_token_index","asset_transfer","asset_transfer","asset_transfer_from_liqee","asset_transfer_from_liqee","asset_transfer_to_liqor","asset_transfer_to_liqor","avg_utilization","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bankruptcy","bankruptcy","base_decimals","base_free","base_free","base_lot_size","base_position","base_token_index","base_token_index","base_token_index","base_total","base_total","base_transfer","base_transfer","base_transfer_liqee","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_index","borrow_index","borrow_index","borrow_index","borrow_index","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_rate","buy_amount","buy_amount","buy_amount","buy_token_index","buy_token_index","buy_token_index","buy_token_index","buy_token_index","buy_token_index","buy_token_price","buy_token_price","buy_token_price","buyback_fees","buyback_mngo","caller","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","change_amount","change_amount","change_amount","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone_into","closed","closed","closed","collected_fees","cumulative_borrow_interest","cumulative_deposit_interest","cumulative_long_funding","cumulative_short_funding","curve_scaling","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","deposit_fee","deposit_index","deposit_index","deposit_index","deposit_index","deposit_index","deposit_rate","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_variant","display_price_style","display_price_style","display_price_style","display_price_style","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","duration_seconds","emit_perp_balances","emit_stack","ending_liab_deposit_index","ending_long_funding","ending_short_funding","eq","expiry_timestamp","expiry_timestamp","expiry_timestamp","fallback_oracle","fee","fee_factor","fee_factor","fee_penalty","fees_accrued","fees_accrued","fees_settled","fees_settled","flash_loan_type","flash_loan_type","flash_loan_type","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","id","id","id","id","incentive_amount","incentive_token_index","indexed_position","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_liab_native","instantaneous_funding_rate","instantaneous_funding_rate","instruction","instruction","insurance_token_index","insurance_transfer","insurance_transfer","intention","intention","intention","intention","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","liab_price","liab_price","liab_price","liab_price","liab_price","liab_token_index","liab_token_index","liab_token_index","liab_token_index","liab_token_index","liab_transfer","liab_transfer","liab_transfer","liab_transfer","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","loan","loan","loan","loan_amount","loan_fee_rate","loan_origination_fee","loan_origination_fee","loan_origination_fee","loan_origination_fee","loan_origination_fee","long_funding","long_funding","long_funding","long_settled_funding","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","maker","maker","maker","maker_client_order_id","maker_client_order_id","maker_closed_pnl","maker_fee","maker_fee","maker_fee","maker_fee","maker_fee","maker_fee","maker_fee_rate","maker_fee_rate","maker_fee_rate","maker_order_id","maker_out","maker_out","maker_out","maker_slot","maker_slot","maker_slot","maker_timestamp","maker_timestamp","maker_timestamp","maker_volume","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account_a","mango_account_b","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","market_index","market_index","market_index","market_index","market_index","market_index","market_index","market_index","market_index","max_buy","max_buy","max_buy","max_rate","max_rate","max_sell","max_sell","max_sell","mint","mint","mint_decimals","mint_decimals","mint_info","mint_info","mngo_buyback_price","open_interest","open_interest","oracle","oracle","oracle","oracle_confidence","oracle_price","oracle_slot","oracle_slot","oracle_type","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","perp_market","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_spot_transfers","pnl_settle_limit_transfer","pnl_settle_limit_transfer","pnl_transfer","pnl_transfer","price","price","price","price","price","price","price","price","price","price","price","price","price","price","price","price_lower_limit","price_lower_limit","price_lower_limit","price_premium_rate","price_premium_rate","price_premium_rate","price_upper_limit","price_upper_limit","price_upper_limit","quantity","quantity","quantity","quantity","quantity","quote_free","quote_free","quote_lot_size","quote_platform_fee","quote_position","quote_token_index","quote_token_index","quote_token_index","quote_total","quote_total","quote_transfer","quote_transfer","quote_transfer_liqee","quote_transfer_liqor","rate0","rate0","rate1","rate1","referrer_rebates_accrued","referrer_rebates_accrued","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","sell_amount","sell_amount","sell_amount","sell_token_index","sell_token_index","sell_token_index","sell_token_index","sell_token_index","sell_token_index","sell_token_price","sell_token_price","sell_token_price","seq_num","seq_num","seq_num","seq_num","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serum_market","serum_program","serum_program_external","settlement","settlement","settlement","settler","short_funding","short_funding","short_funding","short_settled_funding","signer","signer","socialized_loss","socialized_loss","stable_price","stable_price","stable_price","start_timestamp","start_timestamp","starting_liab_deposit_index","starting_long_funding","starting_short_funding","swap_fee","taker","taker","taker","taker_client_order_id","taker_client_order_id","taker_client_order_id","taker_closed_pnl","taker_fee","taker_fee","taker_fee","taker_fee","taker_fee","taker_fee","taker_fee_rate","taker_fee_rate","taker_fee_rate","taker_fees_paid","taker_order_id","taker_side","taker_side","taker_side","taker_side","taker_volume","target_utilization","tcs_type","tcs_type","timestamp","timestamp","timestamp","to_owned","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_id","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_loan_details","token_loan_details","token_loan_details","total_base_lots_decremented","total_base_lots_taken","total_borrows","total_deposits","total_quote_lots_decremented","total_quote_lots_taken","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","util0","util1","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","account_buyback_fees_with_mngo","account_close","account_create","account_create_v2","account_edit","account_expand","account_expand_v2","account_size_migration","account_toggle_freeze","admin_perp_withdraw_fees","admin_token_withdraw_fees","alt_extend","alt_set","benchmark","compute_account_data","flash_loan_begin","flash_loan_end","flash_loan_end_v2","flash_loan_swap_begin","group_close","group_create","group_edit","group_withdraw_insurance_fund","health_region_begin","health_region_end","ix_gate_set","liq_token_bankruptcy","liq_token_with_token","openbook_v2_cancel_all_orders","openbook_v2_cancel_order","openbook_v2_close_open_orders","openbook_v2_create_open_orders","openbook_v2_deregister_market","openbook_v2_edit_market","openbook_v2_liq_force_cancel_orders","openbook_v2_place_order","openbook_v2_place_taker_order","openbook_v2_register_market","openbook_v2_settle_funds","perp_cancel_all_orders","perp_cancel_all_orders_by_side","perp_cancel_order","perp_cancel_order_by_client_order_id","perp_close_market","perp_consume_events","perp_create_market","perp_deactivate_position","perp_edit_market","perp_force_close_position","perp_liq_base_or_positive_pnl","perp_liq_force_cancel_orders","perp_liq_negative_pnl_or_bankruptcy","perp_liq_negative_pnl_or_bankruptcy_v2","perp_place_order","perp_place_order_pegged","perp_place_order_pegged_v2","perp_place_order_v2","perp_settle_fees","perp_settle_pnl","perp_update_funding","serum3_cancel_all_orders","serum3_cancel_order","serum3_cancel_order_by_client_order_id","serum3_close_open_orders","serum3_create_open_orders","serum3_deregister_market","serum3_edit_market","serum3_liq_force_cancel_orders","serum3_place_order","serum3_place_order_v2","serum3_register_market","serum3_settle_funds","serum3_settle_funds_v2","stub_oracle_close","stub_oracle_create","stub_oracle_set","stub_oracle_set_test","token_add_bank","token_conditional_swap_cancel","token_conditional_swap_create","token_conditional_swap_create_linear_auction","token_conditional_swap_create_premium_auction","token_conditional_swap_create_v2","token_conditional_swap_start","token_conditional_swap_trigger","token_conditional_swap_trigger_v2","token_deposit","token_deposit_into_existing","token_deregister","token_edit","token_force_close_borrows_with_token","token_liq_bankruptcy","token_liq_with_token","token_register","token_register_trustless","token_update_index_and_rate","token_withdraw","MangoV4","__clone_box","az","borrow","borrow_mut","cast_from","checked_as","checked_cast_from","clone","clone_into","deref","deref_mut","drop","from","id","init","into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","overflowing_as","overflowing_cast_from","saturating_as","saturating_cast_from","to_owned","try_from","try_into","type_id","unwrapped_as","unwrapped_cast_from","vzip","wrapping_as","wrapping_cast_from","CancelOrder","CloseOpenOrders","InitOpenOrders","OpenOrdersAmounts","OpenOrdersSlim","OrderBookStateHeader","PlaceOrder","SettleFunds","__clone_box","account_flags","asks","asks","az","az","az","az","az","az","az","base_vault","base_vault","bids","bids","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call","call","call","call","cancel_all","cancel_one","cancel_one_by_client_order_id","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone_into","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","drop","drop","event_queue","event_queue","fmt","from","from","from","from","from","from","from","from_oo","has_serum_header","init","init","init","init","init","init","init","into","into","into","into","into","into","into","is_valid_bit_pattern","load_asks_mut","load_bids_mut","load_market_state","load_open_orders","load_open_orders_bytes","load_open_orders_ref","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","market","market","market","market","market","native_base_free","native_base_free","native_base_reserved","native_base_reserved","native_base_total","native_base_total","native_quote_free","native_quote_free","native_quote_reserved","native_quote_reserved","native_quote_total","native_quote_total","native_rebates","native_rebates","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders_authority","open_orders_authority","open_orders_authority","open_orders_authority","order_payer_token_account","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","program","program","program","program","program","pubkey_from_u64_array","quote_vault","quote_vault","rebates_quote_wallet","remove_slop_mut","rent","request_queue","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","sol_destination","to_owned","token_program","token_program","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","user_authority","user_base_wallet","user_quote_wallet","vault_signer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","AbortTransaction","AccountBuybackFeesWithMngo","AccountClose","AccountCreate","AccountEdit","AccountExpand","AccountSizeMigration","AccountToggleFreeze","AdminPerpWithdrawFees","AdminTokenWithdrawFees","AltExtend","AltSet","AnyEvent","AnyNode","Ask","AskFixed","AskOraclePegged","Asks","Bank","BecameNotLiquidatable","Bid","BidFixed","BidOraclePegged","Bids","BookSide","BookSideIter","BookSideIterItem","BookSideOrderHandle","BookSideOrderTree","BuyTokenPerSellToken","CancelProvide","CheckLiquidatable","DAY","DAY_I80F48","DecrementTake","DerefOrBorrow","DerefOrBorrowMut","DynamicAccount","DynamicHeader","EventQueue","EventQueueHeader","EventType","FEE_BUYBACK_QUOTE_TOKEN_INDEX","FREE_ORDER_SLOT","Fill","FillEvent","Fixed","Fixed","FixedPremium","FlashLoan","FreeNode","FreeNode","Group","GroupClose","GroupCreate","GroupWithdrawInsuranceFund","HOUR","HealthRegion","INSURANCE_TOKEN_INDEX","ImmediateOrCancel","ImmediateOrCancel","InnerNode","InnerNode","Invalid","Item","IxGate","LastFreeNode","LeafNode","LeafNode","Limit","Limit","LinearAuction","Liquidatable","Liquidate","MAX_BANKS","MAX_NUM_EVENTS","MAX_ORDERTREE_NODES","MangoAccount","MangoAccountDynamicHeader","MangoAccountFixed","MangoAccountLoadedRef","MangoAccountLoadedRefCell","MangoAccountLoadedRefCellMut","MangoAccountLoader","MangoAccountPdaSeeds","MangoAccountRef","MangoAccountRefMut","MangoAccountValue","Market","Market","MintInfo","NodeHandle","NodeTag","NotLiquidatable","ONE_BPS","ORCA_WHIRLPOOL_DISCRIMINATOR","ORCA_WHIRLPOOL_LEN","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2Market","OpenbookV2MarketIndex","OpenbookV2MarketIndexReservation","OpenbookV2PlaceOrder","OpenbookV2PlaceTakeOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","OracleAccountInfos","OracleConfig","OracleConfigParams","OraclePegged","OraclePegged","OracleState","OracleType","OrcaCLMM","Order","OrderParams","OrderState","OrderTreeIter","OrderTreeNodes","OrderTreeRoot","OrderTreeType","Orderbook","Out","OutEvent","PERP_SETTLE_TOKEN_INDEX","PerpCancelAllOrders","PerpCancelAllOrdersBySide","PerpCancelOrder","PerpCancelOrderByClientOrderId","PerpCloseMarket","PerpConsumeEvents","PerpCreateMarket","PerpDeactivatePosition","PerpForceClosePosition","PerpLiqBaseOrPositivePnl","PerpLiqForceCancelOrders","PerpLiqNegativePnlOrBankruptcy","PerpMarket","PerpMarketIndex","PerpOpenOrder","PerpPlaceOrder","PerpPosition","PerpSettleFees","PerpSettlePnl","PerpUpdateFunding","PlaceOrderType","PostOnly","PostOnly","PostOnlySlide","PostOnlySlide","PostOrderType","PremiumAuction","Pyth","QUOTE_DECIMALS","QUOTE_NATIVE_TO_UI","QUOTE_TOKEN_INDEX","QueueHeader","SOL_DECIMALS","SelfTradeBehavior","SellTokenPerBuyToken","Serum3CancelAllOrders","Serum3CancelOrder","Serum3CloseOpenOrders","Serum3CreateOpenOrders","Serum3DeregisterMarket","Serum3EditMarket","Serum3LiqForceCancelOrders","Serum3Market","Serum3MarketIndex","Serum3MarketIndexReservation","Serum3Orders","Serum3PlaceOrder","Serum3PlaceOrderV2","Serum3RegisterMarket","Serum3SettleFunds","Side","SideAndOrderTree","Skipped","StablePriceModel","StopLoss","Stub","StubOracle","StubOracleClose","StubOracleCreate","StubOracleSet","SwitchboardV1","SwitchboardV2","TCS_START_INCENTIVE","TakeProfit","TokenAddBank","TokenConditionalSwap","TokenConditionalSwapCancel","TokenConditionalSwapCreate","TokenConditionalSwapCreateLinearAuction","TokenConditionalSwapCreatePremiumAuction","TokenConditionalSwapDisplayPriceStyle","TokenConditionalSwapIntention","TokenConditionalSwapStart","TokenConditionalSwapTrigger","TokenConditionalSwapType","TokenDeposit","TokenDeregister","TokenForceCloseBorrowsWithToken","TokenIndex","TokenLiqBankruptcy","TokenLiqWithToken","TokenPosition","TokenRegister","TokenRegisterTrustless","TokenUpdateIndexAndRate","TokenWithdraw","TransferResult","Uninitialized","Unknown","Valid","WhirlpoolState","WithdrawResult","YEAR_I80F48","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","account_num","account_num","account_num_bytes","account_seeds","account_seeds","account_size","accrue_buyback_fees","accrued_liquidation_fees","active_perp_positions","active_serum3_orders","active_token_conditional_swaps","active_token_positions","add_perp_order","add_taker_trade","address_lookup_tables","adjust_maker_lots","adjustment_factor","admin","all_perp_orders","all_perp_positions","all_serum3_orders","all_token_conditional_swaps","all_token_positions","allow_creating_borrows","allow_creating_borrows","allow_creating_deposits","allow_creating_deposits","allowed_fast_listings_per_interval","allows_asset_liquidation","apply_pnl_settle_limit","are_borrows_reduce_only","are_deposits_reduce_only","as_inner","as_inner_mut","as_leaf","as_leaf_mut","as_ref","as_ref","asks","asks","asks_base_lots","available_settle_limit","avg_entry_price","avg_entry_price_per_base_lot","avg_utilization","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank_num","bank_rate_last_updated","bank_seeds","bank_seeds","banks","banks","base_borrows_without_fee","base_decimals","base_liquidation_fee","base_lot_size","base_position_lots","base_position_lots","base_position_native","base_quote_change","base_token_index","base_token_index","base_token_index","being_liquidated","being_liquidated","being_liquidated","best_price","bids","bids","bids_base_lots","blocked1","bookside","bookside_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_index","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_weight_scale_start_quote","bought","break_even_price","buf","bump","bump","bump","bump","bump","bump","bump","bump_bytes","bump_index","buy_token_index","buyback_fees","buyback_fees","buyback_fees_accrued","buyback_fees_accrued_current","buyback_fees_accrued_current","buyback_fees_accrued_previous","buyback_fees_accrued_previous","buyback_fees_expiry_interval","buyback_fees_expiry_timestamp","buyback_fees_expiry_timestamp","buyback_fees_mngo_bonus_factor","buyback_fees_swap_mango_account","cancel_all_orders","cancel_order_by_id","cancel_order_by_slot","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","change_with_fee","change_without_fee","check_confidence","check_confidence_and_maybe_staleness","check_deposit_and_oo_limit","check_health_post","check_health_post_checks","check_health_pre","check_health_pre_checks","check_is_valid_fallback_oracle","check_liquidatable","check_net_borrows","check_resize_from","check_staleness","check_startable","check_triggerable","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_transfer_with_fee","child_earliest_expiry","children","clear","client_id","client_order_id","client_order_id","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","collected_fees_native","collected_liquidation_fees","compute_equity","compute_index","compute_interest_rate","compute_new_avg_utilization","compute_settle_fee","conf_filter","conf_filter","count","count","create_serum3_orders","creator","cumulative_borrow_interest","cumulative_deposit_interest","cumulative_long_funding","cumulative_short_funding","data","deactivate_perp_position","deactivate_perp_position_and_log","deactivate_serum3_orders","deactivate_token_position","deactivate_token_position_and_log","decr_event_id","decr_event_id","decrement_in_use","default","default","default","default","default","default","default","default","default_for_tests","default_for_tests","delay_accumulator_price","delay_accumulator_time","delay_growth_limit","delay_interval_index","delay_interval_seconds","delay_prices","delegate","delegate","deposit","deposit_index","deposit_internal","deposit_internal_wrapper","deposit_limit","deposit_limit_quote","deposit_weight_scale_start_quote","deposit_with_dusting","deprecated_realized_trade_pnl_native","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","determine_oracle_type","deviation","deviation","disable_asset_liquidation","display_price_style","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","duration_seconds","dust","dust_if_possible","dynamic","dynamic_perp_oo_vec_offset","dynamic_perp_vec_offset","dynamic_reserved_bytes_offset","dynamic_serum3_vec_offset","dynamic_size","dynamic_token_conditional_swap_vec_offset","dynamic_token_vec_offset","earliest_expiry","earliest_expiry","effective_base_position_lots","elligible_for_group_insurance_fund","elligible_for_group_insurance_fund","enforce_borrows_lte_deposits","enforce_max_utilization_on_borrow","ensure_perp_position","ensure_token_position","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","event_queue","event_type","event_type","event_type","execute_perp_maker","execute_perp_out_event","execute_perp_taker","expected_health_accounts","expire_buyback_fees","expiry","expiry_timestamp","fallback_opt","fallback_oracle","fallback_oracle","fallback_oracle_state_unchecked","fast_listing_admin","fast_listing_interval_start","fast_listings_in_interval","fee_penalty","fees_accrued","fees_settled","fees_withdrawn","fees_withdrawn","find_earliest_expiry","find_first_active_unused_perp_position","find_worst","first_bank","first_vault","fixed","fixed_price_data","fixed_price_lots","flash_loan_approved_amount","flash_loan_swap_fee_rate","flash_loan_token_account_initial","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","force_close","force_close","force_close","force_close","free_list_head","free_list_len","free_token_conditional_swap_mut","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_existing_bank","from_leaf_node","from_reader","frozen_until","frozen_until","full","funding_last_updated","gen_order_id","get_quote_oracle","group","group","group","group","group","group","group","group","group","group","group","group_insurance_fund","group_insurance_fund","group_num","group_seeds","group_seeds","handle","has_loan","has_loan","has_open_orders","has_open_orders_or_fills","has_open_taker_fills","head","head","header","header","header_version","header_version","health_region_begin_init_health","health_region_begin_init_health","highest_placed_ask","highest_placed_bid_inv","id","id","impact_price","impact_quantity","in_health_region","in_use_count","incr_event_id","incr_event_id","increment_in_use","index_last_updated","indexed_borrows","indexed_deposits","indexed_position","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init_asset_weight","init_base_asset_weight","init_base_liab_weight","init_liab_weight","init_overall_asset_weight","initialize","initialize","insert_leaf","insert_leaf","inside_price_limit","insurance_mint","insurance_vault","intention","interest_curve_scaling","interest_rate_curve_calculator","interest_target_utilization","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_iter","into_iter","invert_side","is_active","is_active","is_active","is_active","is_active_for_market","is_active_for_market","is_active_for_market","is_active_for_token","is_configured","is_configured","is_delegate","is_empty","is_expired","is_expired","is_force_close","is_force_close","is_force_close","is_force_close","is_full","is_full","is_in_health_region","is_in_use","is_inverted","is_ix_enabled","is_operational","is_owner_or_delegate","is_post_only","is_price_better","is_price_data_better","is_price_within_limit","is_reduce_only","is_reduce_only","is_reduce_only","is_startable","is_startable_type","is_testing","is_triggerable","is_valid","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","iter","iter","iter_all_including_invalid","iter_valid","ix_gate","key","key","key","last_delay_interval_index","last_net_borrows_window_start_ts","last_update_slot","last_update_slot","last_update_timestamp","last_update_ts","leaf_count","len","liquidation_fee","load_full","load_full_init","load_full_mut","load_whirlpool_state","loan_amount","loan_amount","loan_fee_rate","loan_origination_fee","loan_origination_fee","loan_origination_fee_rate","long_funding","long_settled_funding","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lot_to_native_price","lowest_placed_ask","lowest_placed_bid_inv","maint_asset_weight","maint_base_asset_weight","maint_base_liab_weight","maint_liab_weight","maint_overall_asset_weight","maint_weight_shift_asset_target","maint_weight_shift_duration_inv","maint_weight_shift_end","maint_weight_shift_liab_target","maint_weight_shift_start","maint_weights","maker","maker_client_order_id","maker_fee","maker_fee","maker_fee","maker_fee_rate","maker_order_id","maker_out","maker_out","maker_price","maker_slot","maker_timestamp","maker_volume","market","market_index","market_index","market_index","market_index","market_index","market_index","matched_amount","matched_quantity","max_base_lots","max_buy","max_buy_for_position","max_funding","max_health_accounts","max_leaf","max_quote_lots","max_rate","max_sell","max_sell_for_position","max_staleness_slots","max_staleness_slots","maybe_node","maybe_recover_from_being_liquidated","min_funding","min_leaf","min_vault_to_deposits_ratio","mint","mint","mint","mint_decimals","mngo_token_index","multiple_banks_supported","multiunzip","name","name","name","name","name","name","name","name","name","name","name","native","native_borrows","native_deposits","native_price_to_lot","needs_penalty_fee","net_borrow_limit_per_window_quote","net_borrow_limit_window_size_ts","net_borrows_in_window","net_deposits","net_deposits","new","new","new","new","new","new","new","new_node_key","new_order","next","next","next_token_conditional_swap_id","next_token_conditional_swap_id","node","node","node","node","node","node_mut","node_mut","nodes","nodes","num_banks","oneshot_settle_pnl_allowance","open_interest","open_orders","openbook_v2_market_external","openbook_v2_market_seeds","openbook_v2_market_seeds","openbook_v2_program","openbook_v2_supported","oracle","oracle","oracle","oracle","oracle_config","oracle_config","oracle_log_context","oracle_pegged_price_data","oracle_pegged_price_offset","oracle_price","oracle_price","oracle_price_band","oracle_price_band","oracle_state","oracle_state_unchecked","oracle_type","orca_mainnet_whirlpool","order_id","order_tree","order_tree","order_tree_type","order_tree_type","order_type","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner_slot","owner_slot","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding1","padding1","padding1","padding1","padding2","padding2","padding2","padding2","padding2","padding3","padding3","padding3","padding4","padding4","padding5","padding6","padding7","padding8","params","passed_start","pda_seeds","peek","peek_front","peek_front_mut","peg_limit","peg_limit","perp_count","perp_count","perp_find_order_with_client_order_id","perp_find_order_with_order_id","perp_market_index","perp_next_order_slot","perp_offset","perp_oo_count","perp_oo_count","perp_open_orders","perp_order_by_raw_index","perp_order_mut_by_raw_index","perp_position","perp_position_by_raw_index","perp_position_mut","perp_position_mut_by_raw_index","perp_spot_transfers","perp_spot_transfers","perp_spot_transfers","perps","perps_supported","platform_liquidation_fee","platform_liquidation_fee","pop_front","position_is_active","positive_pnl_liquidation_fee","post_target","potential_base_tokens","potential_quote_tokens","potential_serum_tokens","power_of_ten","prefix_len","premium_price","previous_index","price","price","price","price","price_data","price_lots","price_lower_limit","price_premium_rate","price_upper_limit","progress_with","progress_with","push_back","pyth_mainnet_sol_oracle","pyth_mainnet_usdc_oracle","quantity","quantity","quantity","quantity","quantity_at_price","quote_borrows_without_fee","quote_lot_size","quote_position_native","quote_position_native","quote_running_native","quote_token_index","quote_token_index","quote_token_index","rank_orders","rate0","rate1","realized_pnl_for_position_native","record_liquidation_pnl_takeover","record_liquidation_quote_change","record_settle","record_trade","record_trading_fee","recurring_settle_pnl_allowance","reduce_buyback_fees_accrued","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only","registration_time","registration_time","registration_time","registration_time","remaining_buy","remaining_deposits_until_limit","remaining_net_borrows_quote","remaining_sell","remove_by_key","remove_by_key","remove_one_expired","remove_one_expired","remove_perp_order","remove_taker_trade","remove_worst","remove_worst","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved_dynamic","reserved_roots","reset_on_nonzero_price","reset_to_price","resize_dynamic_content","revert_pushes","root","root_mut","roots","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","scaled_init_asset_weight","scaled_init_liab_weight","security_admin","self_trade_behavior","sell_token_index","seq_num","seq_num","seq_num","seq_num","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serum3","serum3_count","serum3_count","serum3_offset","serum3_orders","serum3_orders_by_raw_index","serum3_orders_mut","serum3_orders_mut_by_raw_index","serum3_supported","serum_market_external","serum_market_seeds","serum_market_seeds","serum_program","set_being_liquidated","set_count","set_count","set_elligible_for_group_insurance_fund","set_head","set_head","set_in_health_region","set_is_configured","settle_fee_amount_threshold","settle_fee_flat","settle_fee_fraction_low_health","settle_funding","settle_limit","settle_pnl_limit_factor","settle_pnl_limit_factor","settle_pnl_limit_settled_in_current_window_native","settle_pnl_limit_window","settle_pnl_limit_window_size_ts","settle_token_index","short_funding","short_settled_funding","side","side","side","side","side","side","side","side_and_tree","side_and_tree","signer_seeds","socialize_loss","sol_mint_mainnet","sol_opt","sold","source_is_active","space","sqrt_price","stable_growth_limit","stable_price","stable_price","stable_price","stable_price_model","stable_price_model","start_timestamp","state","switchboard_v1_devnet_oracle","switchboard_v2_mainnet_oracle","tag","tag","tag","taker","taker_base_lots","taker_client_order_id","taker_fee","taker_fee","taker_fee","taker_fee_rate","taker_price","taker_quote_lots","taker_side","taker_side","taker_volume","target_is_active","tcs_type","tcs_type","temporary_delegate","temporary_delegate_expiry","testing","tif_from_expiry","time_in_force","time_in_force","timestamp","timestamp","timestamp","to_oracle_config","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_post_order_type","token_conditional_swap_by_id","token_conditional_swap_by_index","token_conditional_swap_count","token_conditional_swap_count","token_conditional_swap_free_index","token_conditional_swap_maker_fee_rate","token_conditional_swap_mut_by_index","token_conditional_swap_taker_fee_rate","token_conditional_swaps","token_count","token_count","token_decrement_dust_deactivate","token_index","token_index","token_index","token_mint_a","token_mint_b","token_offset","token_position","token_position_and_raw_index","token_position_by_raw_index","token_position_mut","token_position_mut_by_raw_index","tokens","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_serialize","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","ui","unsettled_funding","unsettled_pnl","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","update","update_cumulative_interest","update_funding_and_stable_price","update_interest_rate_scaling","update_net_borrows","update_parent_earliest_expiry","update_potential_serum_tokens","update_settle_limit","usdc_mint_mainnet","usdc_opt","util0","util1","vault","vaults","verify","verify_banks_ais","version","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","withdraw_loan_origination_fee","withdraw_with_fee","withdraw_without_fee","withdraw_without_fee_with_dusting","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","zero","zero_util_rate","max_oracle_staleness_slots","order_type","order_type","peg_limit","price_lots","price_lots","price_offset_lots","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","I80F48","PerpMarketIndex","Serum3MarketIndex","TokenIndex","az","az","az","az","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","default","default","default","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","drop","drop","drop","drop","from","from","from","from","init","init","init","init","into","into","into","into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","serialize","serialize","serialize","serialize","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","fill_from_str","format_zero_terminated_utf8_bytes"],"q":["mango_v4","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::accounts","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::accounts_ix","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::accounts_ix::compute_budget","","","mango_v4::accounts_ix::jupiter_mainnet_3","","","mango_v4::accounts_ix::jupiter_mainnet_4","","","mango_v4::accounts_ix::jupiter_mainnet_6","","","mango_v4::accounts_zerocopy","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::address_lookup_table_program","","","mango_v4::error","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::events","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::health","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::i80f48","","","","","","mango_v4::instruction","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::logs","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::mango_v4","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::program","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::serum3_cpi","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::state","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::state::OrderParams","","","","","","","mango_v4::state::orca_mainnet_whirlpool","","","mango_v4::state::pyth_mainnet_sol_oracle","","","mango_v4::state::pyth_mainnet_usdc_oracle","","","mango_v4::state::sol_mint_mainnet","","","mango_v4::state::switchboard_v1_devnet_oracle","","","mango_v4::state::switchboard_v2_mainnet_oracle","","","mango_v4::state::usdc_mint_mainnet","","","mango_v4::types","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::util",""],"d":["The static program ID","","","","An Anchor generated module, providing a set of structs …","","","","","","","","","Confirms that a given pubkey is equivalent to the program …","","","","","","","","The Anchor codegen exposes a programming model where a …","","Creates an Error with a particular message, using …","Creates an Error with a particular message, using …","","Returns the argument unchanged.","","","","Returns the program ID","","","An Anchor generated module containing the program’s set …","Calls U::from(self).","","","","","","","","","","Module representing the program.","Like anchor’s require!(), but with a customizable message","Like anchor’s require!(), but with a customizable …","","","","","","","","","","","","","","","","","","Generated client accounts for AccountBuybackFeesWithMngo.","Generated client accounts for AccountClose.","Generated client accounts for AccountCreate.","Generated client accounts for AccountCreateV2.","Generated client accounts for AccountEdit.","Generated client accounts for AccountExpand.","Generated client accounts for AccountSizeMigration.","Generated client accounts for AccountToggleFreeze.","Generated client accounts for AdminPerpWithdrawFees.","Generated client accounts for AdminTokenWithdrawFees.","Generated client accounts for AltExtend.","Generated client accounts for AltSet.","Generated client accounts for Benchmark.","Generated client accounts for ComputeAccountData.","Generated client accounts for FlashLoanBegin.","Generated client accounts for FlashLoanEnd.","Generated client accounts for FlashLoanSwapBegin.","Generated client accounts for GroupClose.","Generated client accounts for GroupCreate.","Generated client accounts for GroupEdit.","Generated client accounts for GroupWithdrawInsuranceFund.","Generated client accounts for HealthRegionBegin.","Generated client accounts for HealthRegionEnd.","Generated client accounts for IxGateSet.","Generated client accounts for OpenbookV2CancelOrder.","Generated client accounts for OpenbookV2CloseOpenOrders.","Generated client accounts for OpenbookV2CreateOpenOrders.","Generated client accounts for OpenbookV2DeregisterMarket.","Generated client accounts for OpenbookV2EditMarket.","Generated client accounts for …","Generated client accounts for OpenbookV2PlaceOrder.","Generated client accounts for OpenbookV2PlaceTakeOrder.","Generated client accounts for OpenbookV2RegisterMarket.","Generated client accounts for OpenbookV2SettleFunds.","Generated client accounts for PerpCancelAllOrders.","Generated client accounts for PerpCancelAllOrdersBySide.","Generated client accounts for PerpCancelOrder.","Generated client accounts for …","Generated client accounts for PerpCloseMarket.","Generated client accounts for PerpConsumeEvents.","Generated client accounts for PerpCreateMarket.","Generated client accounts for PerpDeactivatePosition.","Generated client accounts for PerpEditMarket.","Generated client accounts for PerpForceClosePosition.","Generated client accounts for PerpLiqBaseOrPositivePnl.","Generated client accounts for PerpLiqForceCancelOrders.","Generated client accounts for …","Generated client accounts for …","Generated client accounts for PerpPlaceOrder.","Generated client accounts for PerpSettleFees.","Generated client accounts for PerpSettlePnl.","Generated client accounts for PerpUpdateFunding.","Generated client accounts for Serum3CancelAllOrders.","Generated client accounts for Serum3CancelOrder.","Generated client accounts for Serum3CloseOpenOrders.","Generated client accounts for Serum3CreateOpenOrders.","Generated client accounts for Serum3DeregisterMarket.","Generated client accounts for Serum3EditMarket.","Generated client accounts for Serum3LiqForceCancelOrders.","Generated client accounts for Serum3PlaceOrder.","Generated client accounts for Serum3RegisterMarket.","Generated client accounts for Serum3SettleFunds.","Generated client accounts for Serum3SettleFunds.","Generated client accounts for Serum3SettleFundsV2.","Generated client accounts for Serum3SettleFundsV2Extra.","Generated client accounts for StubOracleClose.","Generated client accounts for StubOracleCreate.","Generated client accounts for StubOracleSet.","Generated client accounts for TokenAddBank.","Generated client accounts for TokenConditionalSwapCancel.","Generated client accounts for TokenConditionalSwapCreate.","Generated client accounts for TokenConditionalSwapStart.","Generated client accounts for TokenConditionalSwapTrigger.","Generated client accounts for TokenDeposit.","Generated client accounts for TokenDepositIntoExisting.","Generated client accounts for TokenDeregister.","Generated client accounts for TokenEdit.","Generated client accounts for …","Generated client accounts for TokenLiqBankruptcy.","Generated client accounts for TokenLiqWithToken.","Generated client accounts for TokenRegister.","Generated client accounts for TokenRegisterTrustless.","Generated client accounts for TokenUpdateIndexAndRate.","Generated client accounts for TokenWithdraw.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","group admin or fast listing admin, checked at #1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Accounts are initialised by client, anchor discriminator …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bank’s token_index is checked at #1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The fallback oracle account is optional and only used when …","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Instructions Sysvar for instruction introspection","Instructions Sysvar for instruction introspection","Instructions Sysvar for instruction introspection","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","needed for the automatic settle_funds call","","needed for the automatic settle_funds call","needed for the automatic settle_funds call","needed for the automatic settle_funds call","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The oracle account is optional and only used when …","","","","","","","","","","","","","","The oracle account is optional and only used when …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bank that pays for the order, if necessary","The bank that pays for the order, if necessary","The bank that pays for the order, if necessary","","","","The bank vault that pays for the order, if necessary","The bank vault that pays for the order, if necessary","The bank vault that pays for the order, if necessary","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Sets up mango vaults for flash loan","Finalizes a flash loan","","","","","","","Sets up for a health region","Ends a health region.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Copy paste a bunch of enums so that we could …","","","","","","","","","","","","","","","","In addition to these accounts, there must be …","Changes a token’s parameters.","","","","","","Updates token interest and interest rates.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: ALT address is checked inline","CHECK: ALT authority is checked inline","","","","","","","","","","","","","","","","","","","group admin or fast listing admin, checked at #1","","","","","","","","","CHECK: asks will be checked by openbook_v2","CHECK: asks will be checked by openbook_v2","CHECK: asks will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","","","","","CHECK: bids will be checked by openbook_v2","CHECK: bids will be checked by openbook_v2","CHECK: bids will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","","","","","Accounts are initialised by client, anchor discriminator …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bank’s token_index is checked at #1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: unused, exists only because anchor is unhappy in …","","","CHECK: event will be checked by openbook_v2","CHECK: event queue will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The fallback oracle account is optional and only used when …","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","","CHECK: Oracle can have different account types","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","CHECK: Instruction gate will be checked in instruction …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: bank/vault/token account in remaining accounts …","Instructions Sysvar for instruction introspection CHECK: …","Instructions Sysvar for instruction introspection CHECK: …","Instructions Sysvar for instruction introspection CHECK: …","CHECK: fixed instructions sysvar account","","","","CHECK: Oracle can have different account types","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","","CHECK: base vault will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","","CHECK: quote vault will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the openbook_v2 cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the openbook_v2 cpi call","CHECK: Validated by the openbook_v2 cpi call","CHECK: Validated by the openbook_v2 cpi call","needed for the automatic settle_funds call CHECK: …","CHECK: Validated by the serum cpi call","needed for the automatic settle_funds call CHECK: …","needed for the automatic settle_funds call CHECK: …","","","","","","","","","","","","","CHECK: Oracle can have different account types","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Will be checked against seeds and will be initiated …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Newly created by serum cpi call","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","","","","","","","","","","","","","","","","","","","","","","","","CHECK: Can register a market for any openbook_v2 program","","CHECK: The oracle can be one of several different account …","The oracle account is optional and only used when …","CHECK: Oracle can have different account types, …","CHECK: Oracle can have different account types, …","CHECK: Oracle can have different account types, …","CHECK: Oracle can have different account types, …","CHECK: The oracle can be one of several different account …","CHECK: Oracle can have different account types, …","CHECK: Oracle can have different account types, …","CHECK: The oracle can be one of several different account …","","","","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","The oracle account is optional and only used when …","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","CHECK: oracle can be one of multiple account types","CHECK: The oracle can be one of several different account …","CHECK: bank/vault/token account in remaining accounts …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bank that pays for the order, if necessary","The bank that pays for the order, if necessary","The bank that pays for the order, if necessary","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","The bank vault that pays for the order, if necessary","The bank vault that pays for the order, if necessary","The bank vault that pays for the order, if necessary","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: Can register any serum market","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: Can register a market for any serum program","CHECK: The pubkey is checked and then it’s passed to the …","","","","","","CHECK: Oracle can have different account types","CHECK: Oracle can have different account types","CHECK: Oracle can have different account types","CHECK: Oracle can have different account types","CHECK: Oracle can have different account types","","","","","","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","A Ref to an AccountInfo - makes AccountInfo compatible …","","Functions should prefer to work with AccountReader where …","","Like AccountReader, but can also get the account pubkey","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","Using AccountLoader forces a AccountInfo.clone() and then …","Using AccountLoader forces a AccountInfo.clone() and then …","","","","","Same as load(), but doesn’t check the discriminator or …","Same as load(), but doesn’t check the discriminator or …","","","","","Same as load(), but mut","Same as load(), but mut","","Same as load_fully_unchecked(), but mut","Same as load_fully_unchecked(), but mut","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Add a context string c to a Result or Error","","","","","Creates an Error with a particular message, using …","Creates an Error with a particular message, using …","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","Gets the name of this [#enum_name].","","","Like anchor’s require!(), but with a customizable message","Like anchor’s require!(), but with a customizable …","","","","","","","","","","","Like context(), but evaluate the context string lazily","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","This trait abstracts how to find accounts needed for the …","Assumes the account infos needed for the health …","Store information needed to compute account health","There are three types of health:","","","","Stores information about perp market positions and their …","Information about prices for a bank or perp market.","","Takes a list of account infos containing","Information about reserved funds on Serum3 open orders …","Temporary value used during health computations","","","","","","","","","","","Changes the cached user account token balance.","","","","The asset price to use for the given health type","","Computes the account assets and liabilities marked to …","","","","","","","","","","","","Freely available spot balance for the token.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Compute health with an arbitrary AccountRetriever","Computes health for a mango account given a set of account …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns token balances that account for spot and perp …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Liquidatable spot assets mean: actual token deposits and …","Liquidatable spot borrows mean: actual token borrows plus …","","","","","","","","Phase1 is spot/perp order cancellation and spot settlement …","Phase2 is for:","Phase3 is bankruptcy:","","","The open orders account has no free or reserved funds","","","","","The health ratio is","The perp-risk (but not token-risk) adjusted upnl. Also …","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","Computes the account leverage as ratio of liabs / (assets …","The liability price to use for the given health type","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","NOTE: keep getMaxSourceForTokenSwap in ts/client in sync …","The sum of serum-reserved amounts over all markets","How many source native tokens may be swapped for target …","Verifies neither the net borrow or deposit limits","","","","","","Generate a HealthCache for an account and its health …","Generate a special HealthCache for an account and its …","","","The current oracle price","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns how much pnl is settleable for a given settle …","","","","","Recompute the cached information about a serum market.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","How much of a token can be gained before health increases …","How much of a token can be taken away before health …","Sum of token_info.balance_spot and perp …","A “stable” price, provided by StablePriceModel","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Settle token native provided by perp position and open …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The amount that was transfered out to the user","The amount that was transfered out to the user","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The amount by which the user’s token position changed at …","The amount by which the user’s token position changed at …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Deposit fee paid for positive change_amount.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","including liqor and platform liquidation fees","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The amount that was a loan (<= approved_amount, depends on …","The amount that was a loan (<= approved_amount, depends on …","","","","The fee paid on the loan, not included in loan or …","The fee paid on the loan, not included in loan or …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Swap fee paid on the in token of a swap.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","benchmark","Warning, this instruction is for testing purposes only!","","","","A version of flash_loan_begin that’s specialized for …","","","","","","","","","","","","","","","","","","","OpenbookV2","","","","","","","","Perps","","","","","","","","","","","","","","","","","","","","","","","","requires the receiver_bank in the health account list to …","Serum","Deprecated instruction that used to settles all free funds …","Like Serum3SettleFunds, but fees_to_dao determines if …","","","","","","","","","","","","","","","","","","","","","","","","","Type representing the program.","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","For loan origination fees bookkeeping purposes","Copied over from serum dex","","","","","CHECK: cpi","CHECK: cpi","","","","","","","","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: cpi","CHECK: cpi","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","","CHECK: cpi","CHECK: cpi","CHECK: cpi","","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","CHECK: cpi","","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","must cover the open_orders and the …","CHECK: cpi","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","","","","","","","","Cancels the whole transaction as soon as a self-matching …","","","","","","","","","","","","","","","","","","","","","","","","","Iterates the fixed and oracle_pegged OrderTrees …","","Reference to a node in a book side component","","","Cancels the maker side of the trade, the taker side gets …","","","","Both the maker and taker sides of the matched orders are …","","","","Header is created by scanning and parsing the dynamic …","","","","The token index used in AccountBuybackFeesWithMngo to …","","","","","","","","","","","","","","","","The token index used for the insurance fund.","","Take existing orders up to price, max_base_quantity and …","InnerNodes and LeafNodes compose the binary tree of orders.","","","","Enum for lookup into ix gate note: total ix files 56, ix …","","LeafNodes represent an order in the binary tree","","Take existing orders up to price, max_base_quantity and …","Take existing orders up to price, max_base_quantity and …","","","","","","","","","","Useful when loading from bytes","Useful when loading from RefCell, like from AccountInfo","Useful when loading from RefCell, like from AccountInfo","Trait to allow a AccountLoader to create an accessor for …","","Full reference type, useful for borrows","Full reference type, useful for borrows","Fully owned MangoAccount, useful for tests","","Ignore price and take orders up to max_base_quantity and …","","","","","","","","","","","","","","","","","","","","","Contains all oracle account infos that could be used to …","","","","","","","","Perp order parameters","","","Iterate over orders in order (bids=descending, …","A binary tree on AnyNode::key()","","","","","","The token index used for settling perp markets.","","","","","","","","","","","","","","","","","","","","","","Never take any existing orders, post the order on the book …","Never take any existing orders, post the order on the book …","If existing orders match with this order, adjust the price …","If existing orders match with this order, adjust the price …","","","","","","This token index is supposed to be the token that oracles …","","","Self trade behavior controls how taker orders interact …","","","","","","","","","","","","","","","","","","SideAndOrderTree is a storage optimization, so we don’t …","","Maintains a “stable_price” based on the oracle price.","Reducing a position when the price gets worse","","","","","","","","Incentive to pay to callers who start an auction, in $1e-6","Reducing a position when the price gets better","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Add new fees that are usable with the buyback fees feature.","Platform fees that were accrued during liquidation (in …","","","","","","Add taker trade after it has been matched but before it …","","","","","","","","","","","may token selling create borrows? (often users just want …","","may token purchases create deposits? (often users just …","Number of fast listings that are allowed per interval","","Given some pnl, applies the pnl settle limit and returns …","","","","","","","","","","Address of the BookSide account for asks","Base lots in open asks","Returns the (min_pnl, max_pnl) range of quote-native pnl …","Calculate the average entry price of the position, in …","The native average entry price for the base lots of the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Tracks the amount of borrows that have flowed into the …","Number of decimals used for the base token.","Fees Fee for base position liquidation","Number of base native in a base lot. Must be a power of 10.","","Active position size, measured in base lots","","","Store the base/quote token index, so health computations …","","","","","Tracks that this account should be liquidated until …","Return the price of the order closest to the spread","","Address of the BookSide account for bids","Base lots in open bids","Field used to contain the trusted_market flag and is now …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Soft borrow limit in native quote","how many native tokens were already bought/sold","Calculate the break even price of the position, in …","","","","","","","PDA bump","","","","indexes of tokens for the swap","","","The total buyback fees amount that the account can make …","Fees usable with the “fees buyback” feature. This …","","Fees buyback amount from the previous expiry interval.","","Number of seconds after which fees that could be used with …","End timestamp of the current expiry interval of the …","","","","Cancels up to limit orders that are listed on the mango …","Cancels an order on a side, removing it from the book and …","Cancels an order in an open order slot, removing it from …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Change a position, while taking the loan origination fee …","Change a position without applying the loan origination fee","","","","","","","","","","","Error if this header isn’t a valid resize from prev","","Do the current conditions and tcs type allow starting?","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Generic “transfer” from source to target.","The earliest expiry timestamp for the left and right …","indexes into BookSide::nodes","","","Arbitrary user-controlled order id.","User defined id for this order, used in FillEvents","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Fees collected over the lifetime of the bank","Platform fees that were collected during liquidation (in …","","","returns the current interest rate in APR","","Returns the fee for settling settlement when the account …","","","","","","","","","Cumulative long funding in quote native units. If the user …","Cumulative short funding in quote native units If the user …","","","","","","","","","","","","","","","","","","","Creates default market for tests","The delay price is based on an average over each …","Accumulating the total time for the above average.","Maximal relative difference between two delay_price in …","","Length of a delay_interval","Stored delay_price for each delay_interval. If we want the …","","","Deposits native_amount.","the index used to scale the value of an IndexedPosition …","Internal function to deposit funds","","zero means none, in token native","","Limit for collateral of deposits in native quote","Like deposit(), but allows dusting of in-use accounts.","Deprecated field: Amount of pnl that was realized by …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If set to 1, deposits cannot be liquidated when an account …","The stored prices are always “sell token per buy token”…","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Duration of the auction mechanism","","Returns true if the position remains active","","","","","","","","","The lowest timestamp at which one of the contained …","","","","","","Prevent borrowing away the full bank vault. Keep some in …","","Creates or retrieves a TokenPosition for the token_index. …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Address of the EventQueue account","","","","Returns amount of realized trade pnl for the maker","","Returns amount of realized trade pnl for the taker","","Updates the buyback_fees_* fields for staggered expiry of …","Time at which this order will expire, u64::MAX if never","timestamp until which the conditional swap is valid","","Oracle that may be used if the main oracle is stale or not …","","","","Fast-listings are limited per week, this is the start of …","Number of fast listings that happened this interval","Fee (in quote native) to charge for ioc orders","Fees accrued in native quote currency these are increased …","Fees settled in native quote currency these are increased …","","","Returns the handle of the node with the lowest expiry …","","","","","","Creates price data for a fixed order’s price","Retrieves the price (in lots) from a fixed order’s price …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Builds header by scanning and parsing the dynamic portion …","","","","","","","","","","","","timestamp that funding was last updated in","","","","","","","","","","","","","","","Is this market covered by the group insurance fund?","","","","","","","Does the user have any orders on the book?","Are there any open orders or fills that haven’t been …","","","","","","","","Init health as calculated during HealthReginBegin, rounded …","","","Track something like the highest open bid / lowest open …","","","Walk up the book quantity units and return the price at …","For funding, get the impact price this many base lots deep …","The account is currently inside a health region marked by …","incremented when a market requires this position to stay …","","","","","","deposits/borrows for this bank","The deposit_index (if positive) or borrow_index (if …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","initializes a header on the dynamic portion of a new …","","","","Is native_price an acceptable order for the side of this …","","","The intention the user had when placing this order, …","Current interest curve scaling, always >= 1.0","calculator function that can be used to compute an interest","Target utilization: If actual utilization is higher, scale …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Whether the entry is in use","If this struct is in use. (tcs are stored in a …","","","Returns if the order is expired at now_ts","","","","","","","","","","","","","","Is this order required to be posted to the orderbook? It …","Is lhs is a better order for side than rhs?","Is lhs is a better order for side than rhs?","Is price acceptable for a limit order on side?","","","","","Does this tcs type support an explicit tcs_start …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Iterate over all entries, including invalid orders","","Iterate over all entries, including invalid orders","Iterate over all entries in the book filtering out invalid …","","","only the top prefix_len bits of key are relevant","The binary tree key, see new_node_key()","The delay_interval_index that update() was last called on.","Timestamp at which the last net borrows window started","","","","","","","Liquidation fee that goes to the liqor.","","","","","","","","","","","Current long funding value. Increasing it means that every …","Already settled long funding","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Convert from the price stored on the book to the price …","","Track lowest bid/highest ask, same way as for highest …","","These weights apply to the base position. The quote …","","","Weights for full perp market health, if positive","Maint asset weight to reach at _shift_end.","Cache of the inverse of maint_weight_shift_end - …","End timestamp in seconds until which the maint weights …","","Start timestamp in seconds at which maint weights should …","","","","","","Fee when matching maker orders. May be negative.","The maker has to pay premium_price * (1 + maker_fee_rate)","","","","Premium price adjusted for the maker fee","","","Cumulative maker volume in quote native units","","","","","","","","Walk up the book given base units and return the amount in …","Walk up the book given quote units and return the quantity …","Max base lots to buy/sell.","maximum amount of native tokens to buy or sell","The remaining buy amount, taking the current buy token …","Maximal funding rate per day, must be >= 0.","","","Max quote lots to pay/receive (not taking fees into …","the 100% utilization rate","","The remaining sell amount, taking the current sell token …","","","","","Minimal funding rate per day, must be <= 0.","","The maximum utilization allowed when borrowing is 1-this …","","","","","","","","","","","","","","","","","Name. Trailing zero bytes are ignored.","","","","","","Should this order be penalized with an extra fee?","Net borrow limit per window in quote native; set to -1 to …","Size in seconds of a net borrows window","Sum of all deposits and borrows in the last window, in …","","","","","","","","","","Creates a binary tree node key.","","","","Next id to use when adding a token condition swap","","","","","","","","","","","","Amount of pnl that can be settled once.","Number of base lots currently active in the market. Always …","","","","","","","","","","Oracle account address","","Oracle configuration","","Creates price data for an oracle pegged order from the …","Retrieves the price offset (in lots) from an oracle pegged …","Tries to return the primary oracle price, and if there is …","","","Limit orders must be <= oracle * (1+band) and >= oracle / …","","Returns the price of one native base token, in native …","","","","","","","","PostOrderType, this was added for TradingView move order","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Address of the owning MangoAccount","","Index into the owning MangoAccount’s PerpOpenOrders","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Order type specific params","","","","","","pegging limit for oracle peg orders, otherwise -1","If the effective price of an oracle pegged order exceeds …","","","","","Index of this perp market. Other data, like the …","","","","","","","","","","","","","","Cumulative number of quote native units transfered from …","","","Additional to liquidation_fee, but goes to the group owner …","Additional to liquidation_fee, but goes to the group owner …","","","","Order tree that this order should be added to","An overestimate of the amount of tokens that might flow …","","Largest amount of tokens that might be added the the bank …","","number of highest key bits that all children share e.g. if …","Base price adjusted for the premium","","Compute the price_lots this order is currently at, as well …","","","","The order’s price_data as stored in the key","","The lower or starting price:","The premium to pay over oracle price to incentivize …","Parallel to price_lower_limit, but an upper limit / …","","","","","","","Number of base lots to buy or sell, always >=1","","","Return the quantity of orders that can be matched by an …","","Number of quote native in a quote lot. Must be a power of …","","Active position in oracle quote native. At the same time …","Tracks what the position is to calculate average entry & …","","","","Compares the fixed and oracle_pegged order and returns the …","","","Trade pnl, fees, funding that were added over the current …","Adds to the quote position and adds a recurring (“…","Adds immediately-settleable realized pnl when a liqor …","Update the perp position for pnl settlement","Change the base and quote positions as the result of a …","Update perp position for a maker/taker fee payment","Amount of pnl that can be settled in each settle window.","Reduce the available buyback fees amount because it was …","Reduce only","","","If true, users may no longer increase their market …","","","","Timestamp in seconds that the market was registered at.","","","","","","","","Remove the order with the lowest expiry timestamp in the …","Remove the order with the lowest expiry timestamp, if that…","Removes the perp order and updates the maker bids/asks …","Remove taker trade after it has been processed on …","Remove the overall worst-price order.","","","","","","","","","","","","","","","","","","","","","","","","","","","","If set to 1, the stable price will reset on the next …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the init asset weight, adjusted for the number of …","","","Configure how matches with order of the same owner are …","","","","","Total number of orders seen","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Pnl settlement amount needed to be eligible for the flat …","In native units of settlement token, given to each settle …","Fraction of pnl to pay out as fee if +pnl account has low …","Move unrealized funding payments into the quote_position","Returns the (min_pnl, max_pnl) range of quote-native pnl …","","Controls the strictness of the settle limit. Set to a …","Amount of realized trade pnl and unrealized pnl that was …","Index of the current settle pnl limit window","Window size in seconds for the perp settlement limit","Token index that settlements happen in.","See long_funding.","Already settled short funding","","","","","","","","","","","Socialize the loss in this account across all longs and …","","","","","Number of bytes needed for the MangoAccount, including the …","","Maximal per-second relative difference of the stable price.","","","Current stable price to use in health","","Maintains a stable price based on the oracle price that is …","In seconds since epoch. 0 means not-started.","","","","","NodeTag","","","Amount of base lots on the EventQueue waiting to be …","","","","Fee for taker orders, may not be negative.","The taker receives only premium_price * (1 - …","Premium price adjusted for the taker fee","Amount of quote lots on the EventQueue waiting to be …","","","Cumulative taker volume in quote native units","","","Stores a TokenConditionalSwapType enum value","","","","Convert an input expiry timestamp to a time_in_force value","Number of seconds the order shall live, 0 meaning forever","Time in seconds after timestamp at which the order expires.","The time the order was placed","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Fees for the token conditional swap feature","","","","Decrements the in_use_count for the token position for the …","","index into Group.tokens","","","","","","Returns","","Returns","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The amount of funding this account still needs to pay, in …","Calculate the PnL of the position for a given price","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Use current order book price and index price to update the …","","Update the bank’s net_borrows fields.","When a node changes, the parents’ child_earliest_expiry …","Grows potential_serum_tokens if new > old, shrinks it …","Updates the perp pnl limit time windowing, resetting the …","","","The unscaled borrow interest curve is defined as …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Withdraws native_amount while applying the loan …","Withdraws native_amount without applying the loan …","Like withdraw_without_fee() but allows dusting of in-use …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The unscaled borrow interest curve point for zero …","","","","","","","","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","","","","Nothing in Rust shall use these types. They only exist so …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,5,0,0,0,0,0,5,0,5,5,5,0,5,5,5,5,5,5,5,0,0,0,0,0,5,0,0,0,0,5,5,0,5,0,5,5,5,5,0,0,5,5,0,0,0,5,5,0,0,0,5,5,5,5,0,5,5,0,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,12,13,14,15,16,17,18,24,25,26,27,32,33,35,36,37,40,41,42,44,45,46,47,48,52,56,59,60,63,64,65,66,69,70,72,72,79,80,83,84,93,54,61,54,61,21,22,18,19,20,21,22,28,30,31,34,38,39,43,49,51,53,67,68,71,75,76,77,78,85,86,90,91,35,40,41,42,45,46,47,48,49,51,56,59,62,26,35,36,37,41,42,44,79,80,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,19,20,78,83,84,90,91,93,40,43,44,69,71,72,72,44,73,40,44,69,72,72,35,40,41,42,45,46,47,48,49,51,56,59,62,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,79,80,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,29,10,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,31,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,23,85,40,41,42,49,50,51,59,78,86,90,91,10,10,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,24,28,29,30,31,32,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,72,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,38,43,67,71,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,26,25,26,32,92,58,58,29,58,28,29,31,57,58,88,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,88,55,57,58,81,82,87,88,89,55,57,58,81,82,87,88,89,81,82,55,57,58,87,88,89,10,10,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,30,30,31,31,32,32,33,33,34,34,35,35,36,36,37,37,38,38,39,39,40,40,41,41,42,42,43,43,44,44,45,45,46,46,47,47,48,48,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,58,58,59,59,60,60,61,61,62,62,63,63,64,64,65,65,66,66,67,67,68,68,69,69,70,70,71,71,72,72,73,73,74,74,75,75,76,76,77,77,78,78,79,79,80,80,81,81,82,82,83,83,84,84,85,85,86,86,87,87,88,88,89,89,90,90,91,91,92,92,93,93,10,10,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,30,30,31,31,32,32,33,33,34,34,35,35,36,36,37,37,38,38,39,39,40,40,41,41,42,42,43,43,44,44,45,45,46,46,47,47,48,48,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,58,58,59,59,60,60,61,61,62,62,63,63,64,64,65,65,66,66,67,67,68,68,69,69,70,70,71,71,72,72,73,73,74,74,75,75,76,76,77,77,78,78,79,79,80,80,81,81,82,82,83,83,84,84,85,85,86,86,87,87,88,88,89,89,90,90,91,91,92,92,93,93,39,68,63,64,69,70,40,41,42,44,69,70,72,72,63,64,69,70,63,64,69,70,40,41,42,44,69,70,72,72,42,70,40,41,42,44,69,70,72,72,76,78,90,91,78,85,86,90,91,92,10,10,35,36,37,40,41,44,63,64,65,66,69,70,72,72,35,36,37,38,40,41,42,43,44,35,36,37,40,41,42,43,44,35,36,37,40,41,42,43,44,51,53,54,55,57,58,59,60,61,62,75,76,77,83,84,86,90,91,92,93,26,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,25,26,27,45,46,47,48,52,59,63,64,65,66,70,72,72,84,93,13,14,16,17,21,29,37,43,51,66,71,76,78,90,91,41,42,70,41,42,70,41,42,70,19,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,40,43,44,69,71,72,72,44,73,40,44,69,72,72,88,29,37,66,78,90,91,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,79,80,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,63,64,65,66,67,69,70,71,72,72,63,64,65,66,69,70,71,72,72,63,64,65,66,69,70,71,72,72,55,57,58,60,61,55,57,58,60,61,55,57,58,61,61,12,28,36,38,49,65,67,75,85,13,14,16,17,26,29,37,43,51,66,71,76,78,90,91,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,19,20,83,84,93,83,84,12,19,20,25,26,27,28,29,31,38,40,41,42,44,49,57,58,67,69,70,72,72,75,78,83,84,85,88,90,91,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,74,74,19,20,78,83,84,90,91,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,97,0,0,0,0,0,0,0,0,0,0,0,0,99,0,99,97,0,97,0,0,0,0,0,0,0,0,0,0,98,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,96,97,98,99,102,104,105,106,107,108,109,110,116,117,118,119,124,125,127,128,129,132,133,134,136,137,138,139,140,144,148,151,152,155,156,157,158,161,162,164,171,172,175,176,185,146,153,146,153,113,114,100,110,111,112,113,114,120,122,123,126,130,131,135,141,143,145,159,160,163,167,168,169,170,177,178,182,183,127,132,133,134,137,138,139,140,141,143,148,151,154,118,127,128,129,133,134,136,171,172,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,111,112,170,175,176,182,183,185,132,135,136,161,163,164,136,165,132,136,161,164,127,132,133,134,137,138,139,140,141,143,148,151,154,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,171,172,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,96,97,98,99,96,97,98,99,0,121,102,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,96,97,98,99,100,96,97,98,99,123,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,115,177,96,132,133,134,141,142,143,151,170,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,178,182,183,102,102,96,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,116,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,130,135,159,163,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,118,117,118,124,184,150,150,121,150,120,121,123,149,150,180,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,0,0,0,180,147,149,150,173,174,179,180,181,147,149,150,173,174,179,180,181,173,174,147,149,150,179,180,181,102,102,104,104,105,105,106,106,107,107,108,108,109,109,110,110,111,111,112,112,113,113,114,114,115,115,116,116,117,117,118,118,119,119,96,96,120,120,121,121,122,122,123,123,124,124,125,125,126,126,127,127,128,128,129,129,130,130,131,131,132,132,133,133,134,134,135,135,136,136,137,137,138,138,139,139,140,140,141,141,142,142,143,143,144,144,145,145,146,146,147,147,148,148,149,149,150,150,151,151,152,152,153,153,154,154,155,155,156,156,157,157,158,158,159,159,160,160,161,161,97,97,98,98,99,99,162,162,163,163,164,164,165,165,166,166,167,167,168,168,169,169,170,170,171,171,172,172,173,173,174,174,175,175,176,176,177,177,178,178,179,179,180,180,181,181,182,182,100,100,183,183,184,184,185,185,102,102,104,104,105,105,106,106,107,107,108,108,109,109,110,110,111,111,112,112,113,113,114,114,115,115,116,116,117,117,118,118,119,119,96,96,120,120,121,121,122,122,123,123,124,124,125,125,126,126,127,127,128,128,129,129,130,130,131,131,132,132,133,133,134,134,135,135,136,136,137,137,138,138,139,139,140,140,141,141,142,142,143,143,144,144,145,145,146,146,147,147,148,148,149,149,150,150,151,151,152,152,153,153,154,154,155,155,156,156,157,157,158,158,159,159,160,160,161,161,97,97,98,98,99,99,162,162,163,163,164,164,165,165,166,166,167,167,168,168,169,169,170,170,171,171,172,172,173,173,174,174,175,175,176,176,177,177,178,178,179,179,180,180,181,181,182,182,100,100,183,183,184,184,185,185,131,160,155,156,161,162,132,133,134,136,161,162,164,155,156,161,162,155,156,161,162,132,133,134,136,161,162,164,134,162,132,133,134,136,161,162,164,100,168,170,182,183,170,177,178,182,183,184,102,102,127,128,129,132,133,136,155,156,157,158,161,162,164,127,128,129,130,132,133,134,135,136,127,128,129,132,133,134,135,136,127,128,129,132,133,134,135,136,143,145,146,147,149,150,151,152,153,154,167,168,169,175,176,178,182,183,184,185,118,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,117,118,119,137,138,139,140,144,151,155,156,157,158,162,164,176,185,105,106,108,109,113,121,129,135,143,158,163,168,170,182,183,133,134,162,133,134,162,133,134,162,111,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,132,135,136,161,163,164,136,165,132,136,161,164,180,100,100,121,129,158,170,182,183,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,171,172,96,97,98,99,100,155,156,157,158,159,161,162,163,164,155,156,157,158,161,162,163,164,155,156,157,158,161,162,163,164,147,149,150,152,153,147,149,150,152,153,147,149,150,153,153,104,120,128,130,141,157,159,167,177,105,106,108,109,118,121,129,135,143,158,163,168,170,182,183,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,96,97,98,99,111,112,175,176,185,175,176,104,111,112,117,118,119,120,121,123,130,132,133,134,136,141,149,150,159,161,162,164,167,170,175,176,177,180,182,183,185,111,112,123,150,180,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,97,98,98,99,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,97,98,99,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,100,100,166,166,111,112,170,175,176,182,183,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,197,196,194,195,196,197,194,194,195,195,196,197,194,195,196,197,194,195,194,195,196,197,194,195,196,197,194,195,196,197,196,197,196,197,482,194,195,196,197,194,195,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,221,194,195,196,197,194,195,196,197,483,484,194,195,196,197,483,484,194,195,196,197,485,486,195,485,486,195,194,194,195,195,196,196,197,197,194,194,195,195,196,196,197,197,197,194,195,196,197,194,195,196,197,482,194,195,196,197,194,195,194,195,196,197,194,195,196,197,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,0,0,0,205,205,205,205,205,205,0,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,0,205,205,205,0,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,487,205,205,205,205,0,0,205,205,205,205,205,488,488,205,205,205,205,205,205,205,0,0,205,205,205,205,205,205,205,205,205,205,487,205,205,0,0,0,0,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,210,211,212,213,210,210,211,211,212,212,213,213,210,210,211,211,212,212,213,213,210,210,211,212,213,210,211,212,213,213,211,210,211,212,213,210,211,212,213,210,211,212,213,212,211,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,212,210,211,212,213,210,211,212,213,210,211,212,213,0,0,0,0,218,218,218,0,0,0,0,0,0,0,0,217,218,219,225,226,227,228,214,214,222,219,228,217,219,214,222,224,223,217,218,219,225,226,227,228,214,219,489,222,223,224,223,227,228,228,228,222,222,222,228,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,217,218,219,225,226,227,228,214,217,218,219,225,226,227,228,214,0,0,225,226,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,218,218,222,224,223,217,218,219,225,226,227,228,214,214,218,217,219,227,228,214,222,224,223,217,218,219,225,226,227,228,214,214,214,228,228,214,214,214,214,214,214,214,214,214,214,227,214,214,214,219,214,228,214,214,214,222,224,223,217,218,219,225,226,227,228,214,219,228,228,219,228,219,219,222,224,223,217,218,219,225,226,227,228,214,223,214,214,217,219,222,222,224,224,223,223,217,217,218,218,219,219,225,225,226,226,227,227,228,228,214,214,222,222,224,224,223,223,217,217,218,218,219,219,225,225,226,226,227,227,228,228,214,214,219,228,228,219,228,227,214,214,226,214,214,214,222,222,223,0,0,0,217,223,217,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,214,489,222,223,228,214,219,228,227,214,214,214,214,227,227,227,227,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,224,223,223,223,218,489,222,223,228,222,0,0,225,217,222,217,218,219,225,226,227,228,214,219,214,214,214,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,228,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,0,0,490,490,491,491,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,322,323,333,308,259,260,261,262,259,260,261,262,333,308,309,310,332,285,286,288,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,326,283,282,283,282,283,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,329,327,333,333,333,333,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,245,246,274,276,277,278,279,293,295,296,318,329,327,333,329,327,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,311,329,327,259,260,261,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,259,260,259,260,261,262,276,277,278,279,333,283,282,243,290,329,327,304,305,316,250,282,300,327,317,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,283,329,282,327,334,283,282,253,254,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,329,327,283,282,283,282,329,327,283,282,260,261,329,327,329,327,329,327,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,331,311,285,286,288,241,242,245,246,265,271,272,273,276,277,278,279,289,292,295,296,245,246,295,296,329,327,306,307,329,327,329,327,240,240,241,241,242,242,243,243,244,244,245,245,246,246,247,247,248,248,249,249,250,250,251,251,252,252,253,253,254,254,255,255,256,256,257,257,258,258,259,259,260,260,261,261,262,262,263,263,264,264,265,265,266,266,267,267,268,268,269,269,270,270,271,271,272,272,273,273,274,274,275,275,276,276,277,277,278,278,279,279,280,280,281,281,282,282,283,283,284,284,285,285,286,286,287,287,288,288,289,289,290,290,291,291,292,292,293,293,294,294,295,295,296,296,297,297,298,298,299,299,300,300,301,301,302,302,303,303,304,304,305,305,306,306,307,307,308,308,309,309,310,310,311,311,312,312,313,313,314,314,315,315,316,316,317,317,318,318,319,319,320,320,321,321,322,322,323,323,324,324,325,325,326,326,327,327,328,328,329,329,330,330,331,331,332,332,333,333,334,334,335,335,336,336,240,240,241,241,242,242,243,243,244,244,245,245,246,246,247,247,248,248,249,249,250,250,251,251,252,252,253,253,254,254,255,255,256,256,257,257,258,258,259,259,260,260,261,261,262,262,263,263,264,264,265,265,266,266,267,267,268,268,269,269,270,270,271,271,272,272,273,273,274,274,275,275,276,276,277,277,278,278,279,279,280,280,281,281,282,282,283,283,284,284,285,285,286,286,287,287,288,288,289,289,290,290,291,291,292,292,293,293,294,294,295,295,296,296,297,297,298,298,299,299,300,300,301,301,302,302,303,303,304,304,305,305,306,306,307,307,308,308,309,309,310,310,311,311,312,312,313,313,314,314,315,315,316,316,317,317,318,318,319,319,320,320,321,321,322,322,323,323,324,324,325,325,326,326,327,327,328,328,329,329,330,330,331,331,332,332,333,333,334,334,335,335,336,336,329,327,283,282,283,282,329,327,283,282,327,327,327,327,327,283,282,251,301,276,277,278,279,245,246,295,296,266,259,260,261,262,256,257,315,283,282,263,264,284,285,286,287,288,245,246,295,296,276,277,266,260,276,277,278,279,259,260,261,262,256,257,267,256,283,282,256,329,327,333,251,283,301,322,323,328,329,282,300,318,327,329,327,329,327,253,304,283,329,282,327,282,327,301,300,244,275,294,246,276,277,278,279,295,296,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,276,277,320,321,322,323,283,320,321,322,323,283,329,282,327,283,282,311,312,314,259,278,279,260,261,262,276,277,261,262,259,260,261,262,283,276,277,278,279,309,310,329,250,282,300,327,327,282,327,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,333,245,246,276,278,295,296,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,320,321,322,323,327,283,282,283,282,283,282,283,282,283,282,283,244,245,246,276,277,278,279,294,295,296,272,329,282,327,329,282,327,329,282,327,259,283,282,318,318,334,333,320,322,255,256,257,258,255,256,257,258,329,327,329,327,320,321,322,323,326,328,329,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,334,333,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,329,327,0,0,0,0,0,0,0,0,0,0,0,0,0,0,337,337,0,0,0,0,0,0,0,0,0,0,0,0,0,337,0,0,337,0,337,0,0,0,0,0,0,337,0,0,0,0,0,0,0,0,0,0,337,337,0,0,0,0,0,0,337,375,375,378,379,380,378,379,380,387,388,354,377,353,354,376,377,353,354,376,377,353,376,354,377,354,377,350,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,353,354,364,355,356,364,338,355,356,365,355,356,366,375,367,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,339,386,387,388,350,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,350,381,382,383,378,379,380,381,382,383,381,382,383,372,372,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,337,337,381,382,383,350,360,360,361,361,352,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,387,339,386,387,388,350,350,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,337,379,380,382,383,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,380,0,0,359,368,368,337,378,379,380,363,370,376,377,374,348,349,348,349,340,341,342,337,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,378,379,380,384,385,385,339,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,359,348,349,357,358,359,359,368,379,380,382,383,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,353,354,359,376,377,353,354,359,376,377,353,354,376,377,353,354,359,366,367,368,369,376,377,381,382,383,353,354,359,366,367,368,369,376,377,381,382,383,386,387,388,358,350,386,387,388,357,358,338,348,349,338,338,338,339,339,386,386,387,387,388,388,340,340,341,341,342,342,343,343,344,344,345,345,346,346,347,347,348,348,349,349,350,350,351,351,352,352,353,353,354,354,355,355,356,356,337,337,357,357,358,358,359,359,360,360,361,361,362,362,363,363,364,364,365,365,366,366,367,367,368,368,369,369,370,370,371,371,372,372,373,373,374,374,375,375,376,376,377,377,378,378,379,379,380,380,381,381,382,382,383,383,384,384,385,385,338,338,339,339,386,386,387,387,388,388,340,340,341,341,342,342,343,343,344,344,345,345,346,346,347,347,348,348,349,349,350,350,351,351,352,352,353,353,354,354,355,355,356,356,337,337,357,357,358,358,359,359,360,360,361,361,362,362,363,363,364,364,365,365,366,366,367,367,368,368,369,369,370,370,371,371,372,372,373,373,374,374,375,375,376,376,377,377,378,378,379,379,380,380,381,381,382,382,383,383,384,384,385,385,345,346,347,346,347,347,345,346,347,381,382,383,378,379,380,345,345,346,347,345,346,347,345,346,347,361,338,339,340,341,342,343,344,355,356,357,358,360,361,371,372,374,378,379,380,384,385,370,370,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,345,346,347,348,349,356,361,365,378,379,380,351,352,378,379,380,362,363,362,363,362,363,372,348,349,362,363,364,349,372,348,349,349,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,364,364,366,367,368,369,370,371,373,374,375,361,366,367,366,367,386,387,388,343,344,345,346,347,348,349,350,358,366,367,375,378,379,380,378,379,380,378,379,380,343,344,345,346,347,355,356,364,367,338,355,356,365,355,356,366,375,367,367,351,352,351,352,355,356,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,381,382,383,378,379,380,381,382,383,381,382,383,345,346,347,373,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,365,365,365,369,370,371,370,338,348,349,338,343,344,359,368,348,349,350,380,383,359,368,368,388,345,346,347,345,346,347,347,345,346,347,381,382,383,378,379,380,374,345,345,346,347,374,361,352,380,383,345,346,347,337,381,382,383,385,339,386,387,388,343,344,350,351,352,357,358,360,362,363,340,341,342,374,374,350,350,374,374,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,352,352,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,0,0,0,0,0,0,0,0,412,412,408,410,404,406,407,408,410,412,238,407,408,408,410,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,410,410,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,412,412,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,408,410,238,404,406,407,408,410,412,238,238,0,404,406,407,408,410,412,238,404,406,407,408,410,412,238,412,0,0,0,0,0,0,404,404,406,406,407,407,408,408,410,410,412,412,238,238,404,404,406,406,407,407,408,408,410,410,412,412,238,238,404,406,407,408,410,492,238,492,238,492,238,492,238,492,238,492,238,492,238,404,406,407,408,410,404,406,407,410,408,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,0,407,408,407,0,404,408,404,406,407,408,410,412,238,404,406,407,408,410,412,238,406,412,407,408,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,408,407,407,407,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,398,440,440,440,440,440,440,440,440,440,440,440,0,0,233,431,431,449,0,436,233,431,431,449,0,0,0,0,0,401,398,0,0,0,398,0,0,0,0,0,0,0,0,0,455,0,493,421,460,440,0,477,0,440,440,440,0,440,0,493,396,0,477,446,494,0,477,0,477,396,448,460,436,455,0,0,0,0,0,0,0,0,0,0,0,0,0,0,493,396,0,0,0,436,0,0,0,440,440,440,440,440,440,0,0,0,440,440,440,440,0,0,0,493,421,0,0,444,0,0,0,0,0,0,0,0,455,0,0,440,440,440,440,440,440,440,440,440,440,440,440,0,0,0,440,0,440,440,440,0,396,448,396,448,0,460,444,0,0,0,0,0,0,401,440,440,440,440,440,440,440,0,0,0,0,440,440,440,440,0,0,446,0,402,444,0,440,440,440,444,444,0,402,440,0,440,440,440,440,0,0,440,440,0,440,440,440,0,440,440,0,440,440,440,440,0,477,402,446,0,0,0,215,418,405,440,441,416,415,432,237,235,438,426,442,443,435,444,445,421,428,446,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,441,416,473,0,0,415,416,236,418,418,418,418,418,235,405,235,215,405,418,418,418,418,418,423,423,423,423,405,215,235,215,215,424,424,424,424,425,422,429,236,235,235,235,235,215,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,0,0,426,426,237,236,236,236,235,235,235,427,237,442,457,418,416,441,428,429,236,235,236,429,429,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,423,235,452,215,405,441,416,442,236,457,473,451,423,405,405,416,441,416,441,416,405,441,416,405,405,429,429,429,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,434,434,215,418,418,418,418,0,418,215,415,434,423,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,425,425,438,438,465,422,215,418,405,440,441,416,415,432,237,235,438,426,442,443,435,444,445,421,428,446,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,418,405,440,441,416,415,432,237,235,438,426,442,443,435,444,445,421,428,446,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,0,215,215,215,236,435,395,494,453,418,405,432,432,235,235,424,418,418,418,418,418,494,453,432,432,237,235,438,395,398,459,423,441,236,459,459,459,459,459,459,441,416,215,215,215,215,215,405,215,215,235,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,417,420,441,432,237,235,438,435,395,444,421,425,422,396,448,398,233,431,449,427,456,401,402,460,423,444,421,396,448,398,233,431,449,401,402,460,0,434,445,215,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,423,215,215,418,441,441,441,441,441,441,441,425,424,235,426,236,215,215,418,418,436,435,444,421,446,422,396,448,398,233,431,449,455,401,402,460,435,435,421,421,422,422,396,396,448,448,398,398,233,233,431,431,449,449,455,455,401,401,402,402,460,460,236,454,427,456,418,418,418,415,416,422,423,461,215,426,0,405,405,405,236,236,236,215,236,451,418,451,426,426,418,0,0,215,215,215,215,405,440,441,415,432,237,235,438,426,442,443,435,395,421,422,396,448,398,233,431,449,454,427,456,236,457,458,459,423,215,442,236,457,451,451,418,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,496,231,462,418,418,415,215,456,461,441,416,452,236,236,464,473,215,441,416,426,442,443,445,236,457,458,426,236,405,0,0,466,433,437,235,235,235,494,453,418,452,418,441,441,416,237,237,438,423,428,236,441,432,494,453,432,215,215,215,432,433,437,473,434,461,464,429,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,236,236,215,236,496,415,428,451,236,405,405,423,215,215,215,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,468,467,233,432,237,235,438,237,235,438,432,423,423,416,452,422,423,215,442,236,457,428,451,416,432,464,405,416,416,465,233,233,233,442,236,457,423,423,405,423,466,215,405,416,432,237,235,438,426,442,443,435,445,428,425,422,447,424,450,451,452,453,454,427,456,236,457,458,459,423,451,452,428,428,405,424,425,422,459,215,434,445,459,445,450,452,215,497,497,497,0,433,437,215,433,437,215,236,235,433,433,437,437,473,473,434,434,461,461,464,464,429,429,495,495,466,466,468,468,465,465,493,493,467,467,215,215,418,418,405,405,440,440,436,436,441,441,416,416,415,415,432,432,237,237,235,235,438,438,426,426,442,442,443,443,435,435,395,395,444,444,445,445,421,421,428,428,446,446,477,477,425,425,422,422,447,447,424,424,396,396,448,448,398,398,233,233,431,431,449,449,450,450,451,451,452,452,453,453,454,454,455,455,427,427,456,456,236,236,457,457,458,458,459,459,401,401,402,402,460,460,423,423,433,433,437,437,473,473,434,434,461,461,464,464,429,429,495,495,466,466,468,468,465,465,493,493,467,467,215,215,418,418,405,405,440,440,436,436,441,441,416,416,415,415,432,432,237,237,235,235,438,438,426,426,442,442,443,443,435,435,395,395,444,444,445,445,421,421,428,428,446,446,477,477,425,425,422,422,447,447,424,424,396,396,448,448,398,398,233,233,431,431,449,449,450,450,451,451,452,452,453,453,454,454,455,455,427,427,456,456,236,236,457,457,458,458,459,459,401,401,402,402,460,460,423,423,236,237,237,215,236,236,215,236,215,215,215,215,215,215,427,427,423,427,236,423,427,427,427,423,427,427,235,438,237,235,442,443,457,458,428,428,465,423,423,236,415,451,465,215,423,423,435,395,450,416,236,451,215,215,426,445,215,405,405,467,215,416,442,236,457,215,441,416,442,236,457,432,215,215,236,465,215,215,215,441,416,468,467,425,422,431,427,456,0,429,468,467,441,416,428,450,451,495,466,428,451,428,451,426,235,236,237,442,0,0,442,405,461,215,426,236,215,236,0,0,0,215,236,457,457,236,0,434,0,456,431,495,451,451,422,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,405,441,416,426,442,443,445,428,452,236,457,458,473,441,416,422,456,422,456,215,405,441,416,432,237,235,425,422,451,454,427,459,423,438,426,442,457,438,442,422,427,457,441,427,236,441,236,441,441,441,441,465,423,416,467,452,452,465,422,415,415,418,418,236,418,415,415,415,441,418,418,418,418,418,418,441,416,235,441,405,215,236,452,433,236,465,237,237,215,0,425,423,432,465,434,445,427,422,466,423,423,423,468,467,452,0,0,438,422,427,456,428,237,236,235,235,235,237,442,457,0,215,215,235,235,235,235,235,235,235,416,465,215,442,236,457,426,442,236,457,423,215,215,423,428,451,428,451,418,235,428,451,215,405,441,416,432,237,235,438,426,442,443,435,445,428,425,422,451,452,427,236,457,458,459,423,441,428,459,459,418,452,428,428,428,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,405,465,423,453,427,456,236,441,432,237,235,438,435,395,444,421,425,422,396,448,398,233,431,449,427,456,401,402,460,423,441,415,415,415,418,418,418,418,405,457,0,0,457,416,494,453,236,494,453,416,423,236,236,236,235,235,236,236,235,235,236,236,236,235,467,428,431,449,456,465,456,438,438,473,236,0,461,423,437,441,464,459,215,236,459,215,236,423,466,0,0,425,422,424,427,235,427,423,427,236,423,423,235,427,427,235,437,423,423,416,416,405,465,465,422,422,427,456,395,215,418,405,440,441,416,415,432,237,235,438,426,442,443,435,444,445,421,428,446,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,396,418,418,415,415,418,215,418,215,441,415,415,418,215,432,426,464,464,415,418,418,418,418,418,441,215,405,441,426,442,443,445,428,452,236,457,458,215,405,441,426,442,443,445,428,452,236,457,458,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,421,428,446,477,477,425,422,447,424,396,396,448,448,398,398,233,233,431,431,449,449,450,451,452,453,454,455,455,427,427,427,456,456,456,236,457,458,459,401,401,402,402,460,460,423,421,477,396,448,398,233,431,449,455,401,402,460,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,441,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,432,235,235,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,459,215,236,215,215,451,215,235,0,461,215,215,215,426,215,426,405,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,215,215,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,415,215,498,499,498,498,500,499,498,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,478,479,479,480,480,481,481,478,478,479,479,480,480,481,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,0,0],"f":[0,0,[1],0,0,0,0,0,[[]],0,[[]],[[]],[[]],[2,3],[[],4],[[],4],[5,5],[[]],[6],[6],[6],[2,7],0,0,0,0,[[]],0,0,0,[[],2],[[],2],[[],6],0,[[]],0,[[],4],[[],4],[[]],[[]],0,0,[[]],[[]],0,0,0,[[]],[[]],0,0,0,[[]],[[],8],[[],8],[[],9],0,[[]],[[]],0,[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[10,[[8,[11]]]],[12,[[8,[11]]]],[13,[[8,[11]]]],[14,[[8,[11]]]],[15,[[8,[11]]]],[16,[[8,[11]]]],[17,[[8,[11]]]],[18,[[8,[11]]]],[19,[[8,[11]]]],[20,[[8,[11]]]],[21,[[8,[11]]]],[22,[[8,[11]]]],[23,[[8,[11]]]],[24,[[8,[11]]]],[25,[[8,[11]]]],[26,[[8,[11]]]],[27,[[8,[11]]]],[28,[[8,[11]]]],[29,[[8,[11]]]],[30,[[8,[11]]]],[31,[[8,[11]]]],[32,[[8,[11]]]],[33,[[8,[11]]]],[34,[[8,[11]]]],[35,[[8,[11]]]],[36,[[8,[11]]]],[37,[[8,[11]]]],[38,[[8,[11]]]],[39,[[8,[11]]]],[40,[[8,[11]]]],[41,[[8,[11]]]],[42,[[8,[11]]]],[43,[[8,[11]]]],[44,[[8,[11]]]],[45,[[8,[11]]]],[46,[[8,[11]]]],[47,[[8,[11]]]],[48,[[8,[11]]]],[49,[[8,[11]]]],[50,[[8,[11]]]],[51,[[8,[11]]]],[52,[[8,[11]]]],[53,[[8,[11]]]],[54,[[8,[11]]]],[55,[[8,[11]]]],[56,[[8,[11]]]],[57,[[8,[11]]]],[58,[[8,[11]]]],[59,[[8,[11]]]],[60,[[8,[11]]]],[61,[[8,[11]]]],[62,[[8,[11]]]],[63,[[8,[11]]]],[64,[[8,[11]]]],[65,[[8,[11]]]],[66,[[8,[11]]]],[67,[[8,[11]]]],[68,[[8,[11]]]],[69,[[8,[11]]]],[70,[[8,[11]]]],[71,[[8,[11]]]],[72,[[8,[11]]]],[73,[[8,[11]]]],[74,[[8,[11]]]],[75,[[8,[11]]]],[76,[[8,[11]]]],[77,[[8,[11]]]],[78,[[8,[11]]]],[79,[[8,[11]]]],[80,[[8,[11]]]],[81,[[8,[11]]]],[82,[[8,[11]]]],[83,[[8,[11]]]],[84,[[8,[11]]]],[85,[[8,[11]]]],[86,[[8,[11]]]],[87,[[8,[11]]]],[88,[[8,[11]]]],[89,[[8,[11]]]],[90,[[8,[11]]]],[91,[[8,[11]]]],[92,[[8,[11]]]],[93,[[8,[11]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[10,[4,[3]]],[[95,[94]]]],[[12,[4,[3]]],[[95,[94]]]],[[13,[4,[3]]],[[95,[94]]]],[[14,[4,[3]]],[[95,[94]]]],[[15,[4,[3]]],[[95,[94]]]],[[16,[4,[3]]],[[95,[94]]]],[[17,[4,[3]]],[[95,[94]]]],[[18,[4,[3]]],[[95,[94]]]],[[19,[4,[3]]],[[95,[94]]]],[[20,[4,[3]]],[[95,[94]]]],[[21,[4,[3]]],[[95,[94]]]],[[22,[4,[3]]],[[95,[94]]]],[[23,[4,[3]]],[[95,[94]]]],[[24,[4,[3]]],[[95,[94]]]],[[25,[4,[3]]],[[95,[94]]]],[[26,[4,[3]]],[[95,[94]]]],[[27,[4,[3]]],[[95,[94]]]],[[28,[4,[3]]],[[95,[94]]]],[[29,[4,[3]]],[[95,[94]]]],[[30,[4,[3]]],[[95,[94]]]],[[31,[4,[3]]],[[95,[94]]]],[[32,[4,[3]]],[[95,[94]]]],[[33,[4,[3]]],[[95,[94]]]],[[34,[4,[3]]],[[95,[94]]]],[[35,[4,[3]]],[[95,[94]]]],[[36,[4,[3]]],[[95,[94]]]],[[37,[4,[3]]],[[95,[94]]]],[[38,[4,[3]]],[[95,[94]]]],[[39,[4,[3]]],[[95,[94]]]],[[40,[4,[3]]],[[95,[94]]]],[[41,[4,[3]]],[[95,[94]]]],[[42,[4,[3]]],[[95,[94]]]],[[43,[4,[3]]],[[95,[94]]]],[[44,[4,[3]]],[[95,[94]]]],[[45,[4,[3]]],[[95,[94]]]],[[46,[4,[3]]],[[95,[94]]]],[[47,[4,[3]]],[[95,[94]]]],[[48,[4,[3]]],[[95,[94]]]],[[49,[4,[3]]],[[95,[94]]]],[[50,[4,[3]]],[[95,[94]]]],[[51,[4,[3]]],[[95,[94]]]],[[52,[4,[3]]],[[95,[94]]]],[[53,[4,[3]]],[[95,[94]]]],[[54,[4,[3]]],[[95,[94]]]],[[55,[4,[3]]],[[95,[94]]]],[[56,[4,[3]]],[[95,[94]]]],[[57,[4,[3]]],[[95,[94]]]],[[58,[4,[3]]],[[95,[94]]]],[[59,[4,[3]]],[[95,[94]]]],[[60,[4,[3]]],[[95,[94]]]],[[61,[4,[3]]],[[95,[94]]]],[[62,[4,[3]]],[[95,[94]]]],[[63,[4,[3]]],[[95,[94]]]],[[64,[4,[3]]],[[95,[94]]]],[[65,[4,[3]]],[[95,[94]]]],[[66,[4,[3]]],[[95,[94]]]],[[67,[4,[3]]],[[95,[94]]]],[[68,[4,[3]]],[[95,[94]]]],[[69,[4,[3]]],[[95,[94]]]],[[70,[4,[3]]],[[95,[94]]]],[[71,[4,[3]]],[[95,[94]]]],[[72,[4,[3]]],[[95,[94]]]],[[73,[4,[3]]],[[95,[94]]]],[[74,[4,[3]]],[[95,[94]]]],[[75,[4,[3]]],[[95,[94]]]],[[76,[4,[3]]],[[95,[94]]]],[[77,[4,[3]]],[[95,[94]]]],[[78,[4,[3]]],[[95,[94]]]],[[79,[4,[3]]],[[95,[94]]]],[[80,[4,[3]]],[[95,[94]]]],[[81,[4,[3]]],[[95,[94]]]],[[82,[4,[3]]],[[95,[94]]]],[[83,[4,[3]]],[[95,[94]]]],[[84,[4,[3]]],[[95,[94]]]],[[85,[4,[3]]],[[95,[94]]]],[[86,[4,[3]]],[[95,[94]]]],[[87,[4,[3]]],[[95,[94]]]],[[88,[4,[3]]],[[95,[94]]]],[[89,[4,[3]]],[[95,[94]]]],[[90,[4,[3]]],[[95,[94]]]],[[91,[4,[3]]],[[95,[94]]]],[[92,[4,[3]]],[[95,[94]]]],[[93,[4,[3]]],[[95,[94]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[1],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[96,96],[97,97],[98,98],[99,99],[[]],[[]],[[]],[[]],0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[96,11]]]],[[],[[8,[97,11]]]],[[],[[8,[98,11]]]],[[],[[8,[99,11]]]],[[],[[8,[100,11]]]],[101,[[8,[96,11]]]],[101,[[8,[97,11]]]],[101,[[8,[98,11]]]],[101,[[8,[99,11]]]],0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[96,96],3],0,0,0,0,0,0,0,0,[[102,2],103],[[104,2],103],[[105,2],103],[[106,2],103],[[107,2],103],[[108,2],103],[[109,2],103],[[110,2],103],[[111,2],103],[[112,2],103],[[113,2],103],[[114,2],103],[[115,2],103],[[116,2],103],[[117,2],103],[[118,2],103],[[119,2],103],[[120,2],103],[[121,2],103],[[122,2],103],[[123,2],103],[[124,2],103],[[125,2],103],[[126,2],103],[[127,2],103],[[128,2],103],[[129,2],103],[[130,2],103],[[131,2],103],[[132,2],103],[[133,2],103],[[134,2],103],[[135,2],103],[[136,2],103],[[137,2],103],[[138,2],103],[[139,2],103],[[140,2],103],[[141,2],103],[[142,2],103],[[143,2],103],[[144,2],103],[[145,2],103],[[146,2],103],[[147,2],103],[[148,2],103],[[149,2],103],[[150,2],103],[[151,2],103],[[152,2],103],[[153,2],103],[[154,2],103],[[155,2],103],[[156,2],103],[[157,2],103],[[158,2],103],[[159,2],103],[[160,2],103],[[161,2],103],[[162,2],103],[[163,2],103],[[164,2],103],[[165,2],103],[[166,2],103],[[167,2],103],[[168,2],103],[[169,2],103],[[170,2],103],[[171,2],103],[[172,2],103],[[173,2],103],[[174,2],103],[[175,2],103],[[176,2],103],[[177,2],103],[[178,2],103],[[179,2],103],[[180,2],103],[[181,2],103],[[182,2],103],[[183,2],103],[[184,2],103],[[185,2],103],0,0,0,0,0,[[96,186],187],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[96,[[8,[11]]]],[97,[[8,[11]]]],[98,[[8,[11]]]],[99,[[8,[11]]]],[100,[[8,[11]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[102,[[95,[188]]]],[104,[[95,[188]]]],[105,[[95,[188]]]],[106,[[95,[188]]]],[107,[[95,[188]]]],[108,[[95,[188]]]],[109,[[95,[188]]]],[110,[[95,[188]]]],[111,[[95,[188]]]],[112,[[95,[188]]]],[113,[[95,[188]]]],[114,[[95,[188]]]],[115,[[95,[188]]]],[116,[[95,[188]]]],[117,[[95,[188]]]],[118,[[95,[188]]]],[119,[[95,[188]]]],[120,[[95,[188]]]],[121,[[95,[188]]]],[122,[[95,[188]]]],[123,[[95,[188]]]],[124,[[95,[188]]]],[125,[[95,[188]]]],[126,[[95,[188]]]],[127,[[95,[188]]]],[128,[[95,[188]]]],[129,[[95,[188]]]],[130,[[95,[188]]]],[131,[[95,[188]]]],[132,[[95,[188]]]],[133,[[95,[188]]]],[134,[[95,[188]]]],[135,[[95,[188]]]],[136,[[95,[188]]]],[137,[[95,[188]]]],[138,[[95,[188]]]],[139,[[95,[188]]]],[140,[[95,[188]]]],[141,[[95,[188]]]],[142,[[95,[188]]]],[143,[[95,[188]]]],[144,[[95,[188]]]],[145,[[95,[188]]]],[146,[[95,[188]]]],[147,[[95,[188]]]],[148,[[95,[188]]]],[149,[[95,[188]]]],[150,[[95,[188]]]],[151,[[95,[188]]]],[152,[[95,[188]]]],[153,[[95,[188]]]],[154,[[95,[188]]]],[155,[[95,[188]]]],[156,[[95,[188]]]],[157,[[95,[188]]]],[158,[[95,[188]]]],[159,[[95,[188]]]],[160,[[95,[188]]]],[161,[[95,[188]]]],[162,[[95,[188]]]],[163,[[95,[188]]]],[164,[[95,[188]]]],[165,[[95,[188]]]],[166,[[95,[188]]]],[167,[[95,[188]]]],[168,[[95,[188]]]],[169,[[95,[188]]]],[170,[[95,[188]]]],[171,[[95,[188]]]],[172,[[95,[188]]]],[173,[[95,[188]]]],[174,[[95,[188]]]],[175,[[95,[188]]]],[176,[[95,[188]]]],[177,[[95,[188]]]],[178,[[95,[188]]]],[179,[[95,[188]]]],[180,[[95,[188]]]],[181,[[95,[188]]]],[182,[[95,[188]]]],[183,[[95,[188]]]],[184,[[95,[188]]]],[185,[[95,[188]]]],[[102,[4,[3]]],[[95,[94]]]],[[104,[4,[3]]],[[95,[94]]]],[[105,[4,[3]]],[[95,[94]]]],[[106,[4,[3]]],[[95,[94]]]],[[107,[4,[3]]],[[95,[94]]]],[[108,[4,[3]]],[[95,[94]]]],[[109,[4,[3]]],[[95,[94]]]],[[110,[4,[3]]],[[95,[94]]]],[[111,[4,[3]]],[[95,[94]]]],[[112,[4,[3]]],[[95,[94]]]],[[113,[4,[3]]],[[95,[94]]]],[[114,[4,[3]]],[[95,[94]]]],[[115,[4,[3]]],[[95,[94]]]],[[116,[4,[3]]],[[95,[94]]]],[[117,[4,[3]]],[[95,[94]]]],[[118,[4,[3]]],[[95,[94]]]],[[119,[4,[3]]],[[95,[94]]]],[[120,[4,[3]]],[[95,[94]]]],[[121,[4,[3]]],[[95,[94]]]],[[122,[4,[3]]],[[95,[94]]]],[[123,[4,[3]]],[[95,[94]]]],[[124,[4,[3]]],[[95,[94]]]],[[125,[4,[3]]],[[95,[94]]]],[[126,[4,[3]]],[[95,[94]]]],[[127,[4,[3]]],[[95,[94]]]],[[128,[4,[3]]],[[95,[94]]]],[[129,[4,[3]]],[[95,[94]]]],[[130,[4,[3]]],[[95,[94]]]],[[131,[4,[3]]],[[95,[94]]]],[[132,[4,[3]]],[[95,[94]]]],[[133,[4,[3]]],[[95,[94]]]],[[134,[4,[3]]],[[95,[94]]]],[[135,[4,[3]]],[[95,[94]]]],[[136,[4,[3]]],[[95,[94]]]],[[137,[4,[3]]],[[95,[94]]]],[[138,[4,[3]]],[[95,[94]]]],[[139,[4,[3]]],[[95,[94]]]],[[140,[4,[3]]],[[95,[94]]]],[[141,[4,[3]]],[[95,[94]]]],[[142,[4,[3]]],[[95,[94]]]],[[143,[4,[3]]],[[95,[94]]]],[[144,[4,[3]]],[[95,[94]]]],[[145,[4,[3]]],[[95,[94]]]],[[146,[4,[3]]],[[95,[94]]]],[[147,[4,[3]]],[[95,[94]]]],[[148,[4,[3]]],[[95,[94]]]],[[149,[4,[3]]],[[95,[94]]]],[[150,[4,[3]]],[[95,[94]]]],[[151,[4,[3]]],[[95,[94]]]],[[152,[4,[3]]],[[95,[94]]]],[[153,[4,[3]]],[[95,[94]]]],[[154,[4,[3]]],[[95,[94]]]],[[155,[4,[3]]],[[95,[94]]]],[[156,[4,[3]]],[[95,[94]]]],[[157,[4,[3]]],[[95,[94]]]],[[158,[4,[3]]],[[95,[94]]]],[[159,[4,[3]]],[[95,[94]]]],[[160,[4,[3]]],[[95,[94]]]],[[161,[4,[3]]],[[95,[94]]]],[[162,[4,[3]]],[[95,[94]]]],[[163,[4,[3]]],[[95,[94]]]],[[164,[4,[3]]],[[95,[94]]]],[[165,[4,[3]]],[[95,[94]]]],[[166,[4,[3]]],[[95,[94]]]],[[167,[4,[3]]],[[95,[94]]]],[[168,[4,[3]]],[[95,[94]]]],[[169,[4,[3]]],[[95,[94]]]],[[170,[4,[3]]],[[95,[94]]]],[[171,[4,[3]]],[[95,[94]]]],[[172,[4,[3]]],[[95,[94]]]],[[173,[4,[3]]],[[95,[94]]]],[[174,[4,[3]]],[[95,[94]]]],[[175,[4,[3]]],[[95,[94]]]],[[176,[4,[3]]],[[95,[94]]]],[[177,[4,[3]]],[[95,[94]]]],[[178,[4,[3]]],[[95,[94]]]],[[179,[4,[3]]],[[95,[94]]]],[[180,[4,[3]]],[[95,[94]]]],[[181,[4,[3]]],[[95,[94]]]],[[182,[4,[3]]],[[95,[94]]]],[[183,[4,[3]]],[[95,[94]]]],[[184,[4,[3]]],[[95,[94]]]],[[185,[4,[3]]],[[95,[94]]]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[111,[[190,[189]]]],[112,[[190,[189]]]],[123,[[190,[189]]]],[150,[[190,[189]]]],[180,[[190,[189]]]],[185,[[190,[189]]]],[[2,191,192],[[103,[102]]]],[[2,191,192],[[103,[104]]]],[[2,191,192],[[103,[105]]]],[[2,191,192],[[103,[106]]]],[[2,191,192],[[103,[107]]]],[[2,191,192],[[103,[108]]]],[[2,191,192],[[103,[109]]]],[[2,191,192],[[103,[110]]]],[[2,191,192],[[103,[111]]]],[[2,191,192],[[103,[112]]]],[[2,191,192],[[103,[113]]]],[[2,191,192],[[103,[114]]]],[[2,191,192],[[103,[115]]]],[[2,191,192],[[103,[116]]]],[[2,191,192],[[103,[117]]]],[[2,191,192],[[103,[118]]]],[[2,191,192],[[103,[119]]]],[[2,191,192],[[103,[120]]]],[[2,191,192],[[103,[121]]]],[[2,191,192],[[103,[122]]]],[[2,191,192],[[103,[123]]]],[[2,191,192],[[103,[124]]]],[[2,191,192],[[103,[125]]]],[[2,191,192],[[103,[126]]]],[[2,191,192],[[103,[127]]]],[[2,191,192],[[103,[128]]]],[[2,191,192],[[103,[129]]]],[[2,191,192],[[103,[130]]]],[[2,191,192],[[103,[131]]]],[[2,191,192],[[103,[132]]]],[[2,191,192],[[103,[133]]]],[[2,191,192],[[103,[134]]]],[[2,191,192],[[103,[135]]]],[[2,191,192],[[103,[136]]]],[[2,191,192],[[103,[137]]]],[[2,191,192],[[103,[138]]]],[[2,191,192],[[103,[139]]]],[[2,191,192],[[103,[140]]]],[[2,191,192],[[103,[141]]]],[[2,191,192],[[103,[142]]]],[[2,191,192],[[103,[143]]]],[[2,191,192],[[103,[144]]]],[[2,191,192],[[103,[145]]]],[[2,191,192],[[103,[146]]]],[[2,191,192],[[103,[147]]]],[[2,191,192],[[103,[148]]]],[[2,191,192],[[103,[149]]]],[[2,191,192],[[103,[150]]]],[[2,191,192],[[103,[151]]]],[[2,191,192],[[103,[152]]]],[[2,191,192],[[103,[153]]]],[[2,191,192],[[103,[154]]]],[[2,191,192],[[103,[155]]]],[[2,191,192],[[103,[156]]]],[[2,191,192],[[103,[157]]]],[[2,191,192],[[103,[158]]]],[[2,191,192],[[103,[159]]]],[[2,191,192],[[103,[160]]]],[[2,191,192],[[103,[161]]]],[[2,191,192],[[103,[162]]]],[[2,191,192],[[103,[163]]]],[[2,191,192],[[103,[164]]]],[[2,191,192],[[103,[165]]]],[[2,191,192],[[103,[166]]]],[[2,191,192],[[103,[167]]]],[[2,191,192],[[103,[168]]]],[[2,191,192],[[103,[169]]]],[[2,191,192],[[103,[170]]]],[[2,191,192],[[103,[171]]]],[[2,191,192],[[103,[172]]]],[[2,191,192],[[103,[173]]]],[[2,191,192],[[103,[174]]]],[[2,191,192],[[103,[175]]]],[[2,191,192],[[103,[176]]]],[[2,191,192],[[103,[177]]]],[[2,191,192],[[103,[178]]]],[[2,191,192],[[103,[179]]]],[[2,191,192],[[103,[180]]]],[[2,191,192],[[103,[181]]]],[[2,191,192],[[103,[182]]]],[[2,191,192],[[103,[183]]]],[[2,191,192],[[103,[184]]]],[[2,191,192],[[103,[185]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[97,[193,[97]]]]]],[101,[[8,[98,[193,[98]]]]]],[[],8],[[],8],[101,[[8,[99,[193,[99]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],[[8,[97,[193,[97]]]]]],[[],[[8,[98,[193,[98]]]]]],[[],[[8,[99,[193,[99]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,0,0,0,0,0,0,0,0,0,[1],[1],0,[[]],[[]],[[]],[[]],[[]],[188,[[103,[194]]]],[188,[[103,[195]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[103,[[95,[194]]]]]],[[],[[103,[[95,[195]]]]]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[196,196],[197,197],[[]],[[]],[[]],[194],[195],[196],[197],0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[],2],[194,2],[195,2],[196,2],[197,2],0,0,0,0,[[],103],[[],[[103,[[200,[[0,[198,199]]]]]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],103],[[],[[103,[[200,[[0,[198,199]]]]]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],103],[[],[[103,[[202,[[0,[198,199]]]]]]]],[195,103],[[],103],[[],[[103,[[202,[[0,[198,199]]]]]]]],[195,103],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[2,203],197],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],2],[194,2],[195,2],[196,2],[197,2],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[2,3],[[188,188,188,[95,[2]]],[[8,[204]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[[]],[[]],[[]],[[]],[[],4],[[],4],[205,205],[[]],[206],[6],[6],[6],[205,207],0,0,[[205,186],[[8,[208]]]],[[205,186],187],[[]],[[],6],[[]],[207,3],[[],3],[[],4],[[],4],[[]],[[]],[205,209],[[]],[[]],0,0,[[]],[[]],[[]],[[],209],[[],8],[[],8],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[210,[[95,[101]]]],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[210,11]]]],[[],[[8,[211,11]]]],[[],[[8,[212,11]]]],[[],[[8,[213,11]]]],[6],[6],[6],[6],0,[[211,186],187],[[212,186],187],[[213,186],187],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],0,[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[210,[[8,[11]]]],[211,[[8,[11]]]],[212,[[8,[11]]]],[213,[[8,[11]]]],0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[1],[1],[1],[1],[1],[[214,215,216],103],0,0,0,[[217,218],216],[[219,218],216],[214],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[2,6,220],103],[[[222,[221]],2,6,220],103],[[223,2,6,220],103],[[224,220,220],103],[[223,220,220],103],0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[217,217],[218,218],[219,219],[225,225],[226,226],[227,227],[228,228],[214,214],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[229,218,230],[[103,[216]]]],[[229,218,230],[[103,[216]]]],[[],225],[[],226],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[218,11]]]],[101,[[8,[218,11]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[214,218],[[95,[225]]]],[[218,218],3],[[217,186],187],[[219,186],187],[[227,186],187],[[228,186],187],[[214,186],187],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[214,3],[214,3],0,0,[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],0,[[214,218],216],[[214,218]],[[214,218]],[[219,218,216],216],[[214,218],216],[[228,218],216],[214,3],[214,3],[214,3],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[223,224],[214,3],[214,216],[[217,218],216],[[219,218],216],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[214,231,215,216],[[103,[216]]]],[[214,232,216,233,216],[[103,[234]]]],0,[[214,231,215,216,215,216,216],[[103,[216]]]],[[214,231,215,216,215,216,216],[[103,[216]]]],[[214,231,215,216,215,216,216],[[103,[216]]]],0,0,[2,[[103,[223]]]],[229,[[103,[[222,[194]]]]]],[[229,230],[[103,[214]]]],[[229,230],[[103,[214]]]],[216,217],[[2,[4,[230]]],[[103,[223]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[214,232],[[103,[228]]]],[[2,6,232],103],[[[222,[221]],2,6,232],103],[[223,2,6,232],103],0,[[214,220],[[103,[216]]]],0,0,0,[[214,235,236],103],[[214,237,238,216,216],103],[214,103],[214,103],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[224,220],103],[[223,220],103],[[223,232],103],[[223,2],[[103,[239]]]],[218,[[8,[11]]]],[[6,2],[[103,[239]]]],[[[222,[221]],6,2],[[103,[239]]]],[[223,6,2],[[103,[239]]]],0,0,[[216,216,216,216],[[103,[216]]]],[[216,216,216,216],[[103,[216]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[214,220],[[103,[219]]]],[[214,220],[[103,[6]]]],0,[[214,218,220],[[103,[216]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[228,218],216],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[216,[[4,[216]]]],[216,[[4,[216]]]],[[],234],[[],230],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[240,11]]]],[[],[[8,[241,11]]]],[[],[[8,[242,11]]]],[[],[[8,[243,11]]]],[[],[[8,[244,11]]]],[[],[[8,[245,11]]]],[[],[[8,[246,11]]]],[[],[[8,[247,11]]]],[[],[[8,[248,11]]]],[[],[[8,[249,11]]]],[[],[[8,[250,11]]]],[[],[[8,[251,11]]]],[[],[[8,[252,11]]]],[[],[[8,[253,11]]]],[[],[[8,[254,11]]]],[[],[[8,[255,11]]]],[[],[[8,[256,11]]]],[[],[[8,[257,11]]]],[[],[[8,[258,11]]]],[[],[[8,[259,11]]]],[[],[[8,[260,11]]]],[[],[[8,[261,11]]]],[[],[[8,[262,11]]]],[[],[[8,[263,11]]]],[[],[[8,[264,11]]]],[[],[[8,[265,11]]]],[[],[[8,[266,11]]]],[[],[[8,[267,11]]]],[[],[[8,[268,11]]]],[[],[[8,[269,11]]]],[[],[[8,[270,11]]]],[[],[[8,[271,11]]]],[[],[[8,[272,11]]]],[[],[[8,[273,11]]]],[[],[[8,[274,11]]]],[[],[[8,[275,11]]]],[[],[[8,[276,11]]]],[[],[[8,[277,11]]]],[[],[[8,[278,11]]]],[[],[[8,[279,11]]]],[[],[[8,[280,11]]]],[[],[[8,[281,11]]]],[[],[[8,[282,11]]]],[[],[[8,[283,11]]]],[[],[[8,[284,11]]]],[[],[[8,[285,11]]]],[[],[[8,[286,11]]]],[[],[[8,[287,11]]]],[[],[[8,[288,11]]]],[[],[[8,[289,11]]]],[[],[[8,[290,11]]]],[[],[[8,[291,11]]]],[[],[[8,[292,11]]]],[[],[[8,[293,11]]]],[[],[[8,[294,11]]]],[[],[[8,[295,11]]]],[[],[[8,[296,11]]]],[[],[[8,[297,11]]]],[[],[[8,[298,11]]]],[[],[[8,[299,11]]]],[[],[[8,[300,11]]]],[[],[[8,[301,11]]]],[[],[[8,[302,11]]]],[[],[[8,[303,11]]]],[[],[[8,[304,11]]]],[[],[[8,[305,11]]]],[[],[[8,[306,11]]]],[[],[[8,[307,11]]]],[[],[[8,[308,11]]]],[[],[[8,[309,11]]]],[[],[[8,[310,11]]]],[[],[[8,[311,11]]]],[[],[[8,[312,11]]]],[[],[[8,[313,11]]]],[[],[[8,[314,11]]]],[[],[[8,[315,11]]]],[[],[[8,[316,11]]]],[[],[[8,[317,11]]]],[[],[[8,[318,11]]]],[[],[[8,[319,11]]]],[[],[[8,[320,11]]]],[[],[[8,[321,11]]]],[[],[[8,[322,11]]]],[[],[[8,[323,11]]]],[[],[[8,[324,11]]]],[[],[[8,[325,11]]]],[[],[[8,[326,11]]]],[[],[[8,[327,11]]]],[[],[[8,[328,11]]]],[[],[[8,[329,11]]]],[[],[[8,[330,11]]]],[[],[[8,[331,11]]]],[[],[[8,[332,11]]]],[[],[[8,[333,11]]]],[[],[[8,[334,11]]]],[[],[[8,[335,11]]]],[[],[[8,[336,11]]]],0,0,0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,[240,[[8,[11]]]],[241,[[8,[11]]]],[242,[[8,[11]]]],[243,[[8,[11]]]],[244,[[8,[11]]]],[245,[[8,[11]]]],[246,[[8,[11]]]],[247,[[8,[11]]]],[248,[[8,[11]]]],[249,[[8,[11]]]],[250,[[8,[11]]]],[251,[[8,[11]]]],[252,[[8,[11]]]],[253,[[8,[11]]]],[254,[[8,[11]]]],[255,[[8,[11]]]],[256,[[8,[11]]]],[257,[[8,[11]]]],[258,[[8,[11]]]],[259,[[8,[11]]]],[260,[[8,[11]]]],[261,[[8,[11]]]],[262,[[8,[11]]]],[263,[[8,[11]]]],[264,[[8,[11]]]],[265,[[8,[11]]]],[266,[[8,[11]]]],[267,[[8,[11]]]],[268,[[8,[11]]]],[269,[[8,[11]]]],[270,[[8,[11]]]],[271,[[8,[11]]]],[272,[[8,[11]]]],[273,[[8,[11]]]],[274,[[8,[11]]]],[275,[[8,[11]]]],[276,[[8,[11]]]],[277,[[8,[11]]]],[278,[[8,[11]]]],[279,[[8,[11]]]],[280,[[8,[11]]]],[281,[[8,[11]]]],[282,[[8,[11]]]],[283,[[8,[11]]]],[284,[[8,[11]]]],[285,[[8,[11]]]],[286,[[8,[11]]]],[287,[[8,[11]]]],[288,[[8,[11]]]],[289,[[8,[11]]]],[290,[[8,[11]]]],[291,[[8,[11]]]],[292,[[8,[11]]]],[293,[[8,[11]]]],[294,[[8,[11]]]],[295,[[8,[11]]]],[296,[[8,[11]]]],[297,[[8,[11]]]],[298,[[8,[11]]]],[299,[[8,[11]]]],[300,[[8,[11]]]],[301,[[8,[11]]]],[302,[[8,[11]]]],[303,[[8,[11]]]],[304,[[8,[11]]]],[305,[[8,[11]]]],[306,[[8,[11]]]],[307,[[8,[11]]]],[308,[[8,[11]]]],[309,[[8,[11]]]],[310,[[8,[11]]]],[311,[[8,[11]]]],[312,[[8,[11]]]],[313,[[8,[11]]]],[314,[[8,[11]]]],[315,[[8,[11]]]],[316,[[8,[11]]]],[317,[[8,[11]]]],[318,[[8,[11]]]],[319,[[8,[11]]]],[320,[[8,[11]]]],[321,[[8,[11]]]],[322,[[8,[11]]]],[323,[[8,[11]]]],[324,[[8,[11]]]],[325,[[8,[11]]]],[326,[[8,[11]]]],[327,[[8,[11]]]],[328,[[8,[11]]]],[329,[[8,[11]]]],[330,[[8,[11]]]],[331,[[8,[11]]]],[332,[[8,[11]]]],[333,[[8,[11]]]],[334,[[8,[11]]]],[335,[[8,[11]]]],[336,[[8,[11]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[337,337],[[]],0,0,0,0,0,0,0,0,0,[338,[[95,[101]]]],[339,[[95,[101]]]],[340,[[95,[101]]]],[341,[[95,[101]]]],[342,[[95,[101]]]],[343,[[95,[101]]]],[344,[[95,[101]]]],[345,[[95,[101]]]],[346,[[95,[101]]]],[347,[[95,[101]]]],[348,[[95,[101]]]],[349,[[95,[101]]]],[350,[[95,[101]]]],[351,[[95,[101]]]],[352,[[95,[101]]]],[353,[[95,[101]]]],[354,[[95,[101]]]],[355,[[95,[101]]]],[356,[[95,[101]]]],[357,[[95,[101]]]],[358,[[95,[101]]]],[359,[[95,[101]]]],[360,[[95,[101]]]],[361,[[95,[101]]]],[362,[[95,[101]]]],[363,[[95,[101]]]],[364,[[95,[101]]]],[365,[[95,[101]]]],[366,[[95,[101]]]],[367,[[95,[101]]]],[368,[[95,[101]]]],[369,[[95,[101]]]],[370,[[95,[101]]]],[371,[[95,[101]]]],[372,[[95,[101]]]],[373,[[95,[101]]]],[374,[[95,[101]]]],[375,[[95,[101]]]],[376,[[95,[101]]]],[377,[[95,[101]]]],[378,[[95,[101]]]],[379,[[95,[101]]]],[380,[[95,[101]]]],[381,[[95,[101]]]],[382,[[95,[101]]]],[383,[[95,[101]]]],[384,[[95,[101]]]],[385,[[95,[101]]]],0,0,0,0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[338,11]]]],[[],[[8,[339,11]]]],[[],[[8,[386,11]]]],[[],[[8,[387,11]]]],[[],[[8,[388,11]]]],[[],[[8,[340,11]]]],[[],[[8,[341,11]]]],[[],[[8,[342,11]]]],[[],[[8,[343,11]]]],[[],[[8,[344,11]]]],[[],[[8,[345,11]]]],[[],[[8,[346,11]]]],[[],[[8,[347,11]]]],[[],[[8,[348,11]]]],[[],[[8,[349,11]]]],[[],[[8,[350,11]]]],[[],[[8,[351,11]]]],[[],[[8,[352,11]]]],[[],[[8,[353,11]]]],[[],[[8,[354,11]]]],[[],[[8,[355,11]]]],[[],[[8,[356,11]]]],[[],[[8,[337,11]]]],[[],[[8,[357,11]]]],[[],[[8,[358,11]]]],[[],[[8,[359,11]]]],[[],[[8,[360,11]]]],[[],[[8,[361,11]]]],[[],[[8,[362,11]]]],[[],[[8,[363,11]]]],[[],[[8,[364,11]]]],[[],[[8,[365,11]]]],[[],[[8,[366,11]]]],[[],[[8,[367,11]]]],[[],[[8,[368,11]]]],[[],[[8,[369,11]]]],[[],[[8,[370,11]]]],[[],[[8,[371,11]]]],[[],[[8,[372,11]]]],[[],[[8,[373,11]]]],[[],[[8,[374,11]]]],[[],[[8,[375,11]]]],[[],[[8,[376,11]]]],[[],[[8,[377,11]]]],[[],[[8,[378,11]]]],[[],[[8,[379,11]]]],[[],[[8,[380,11]]]],[[],[[8,[381,11]]]],[[],[[8,[382,11]]]],[[],[[8,[383,11]]]],[[],[[8,[384,11]]]],[[],[[8,[385,11]]]],[101,[[8,[337,11]]]],0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,[[2,2,235,236]],[389],0,0,0,[[337,337],3],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[337,186],187],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[338,[[8,[11]]]],[339,[[8,[11]]]],[386,[[8,[11]]]],[387,[[8,[11]]]],[388,[[8,[11]]]],[340,[[8,[11]]]],[341,[[8,[11]]]],[342,[[8,[11]]]],[343,[[8,[11]]]],[344,[[8,[11]]]],[345,[[8,[11]]]],[346,[[8,[11]]]],[347,[[8,[11]]]],[348,[[8,[11]]]],[349,[[8,[11]]]],[350,[[8,[11]]]],[351,[[8,[11]]]],[352,[[8,[11]]]],[353,[[8,[11]]]],[354,[[8,[11]]]],[355,[[8,[11]]]],[356,[[8,[11]]]],[337,[[8,[11]]]],[357,[[8,[11]]]],[358,[[8,[11]]]],[359,[[8,[11]]]],[360,[[8,[11]]]],[361,[[8,[11]]]],[362,[[8,[11]]]],[363,[[8,[11]]]],[364,[[8,[11]]]],[365,[[8,[11]]]],[366,[[8,[11]]]],[367,[[8,[11]]]],[368,[[8,[11]]]],[369,[[8,[11]]]],[370,[[8,[11]]]],[371,[[8,[11]]]],[372,[[8,[11]]]],[373,[[8,[11]]]],[374,[[8,[11]]]],[375,[[8,[11]]]],[376,[[8,[11]]]],[377,[[8,[11]]]],[378,[[8,[11]]]],[379,[[8,[11]]]],[380,[[8,[11]]]],[381,[[8,[11]]]],[382,[[8,[11]]]],[383,[[8,[11]]]],[384,[[8,[11]]]],[385,[[8,[11]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[390,[102]],230],103],[[[390,[104]],3],103],[[[390,[105]],207,101,101,101,101,209],103],[[[390,[106]],207,101,101,101,101,101,209],103],[[[390,[107]],[4,[209]],[4,[2]],[4,[2]],[4,[230]]],103],[[[390,[108]],101,101,101,101],103],[[[390,[108]],101,101,101,101,101],103],[[[390,[109]]],103],[[[390,[110]],3],103],[[[390,[111]]],103],[[[390,[112]]],103],[[[390,[113]],101,[95,[2]]],103],[[[390,[114]],101],103],[[[390,[115]]],103],[[[390,[116]]],103],[[[390,[117]],[95,[230]]],103],[[[390,[119]],96],103],[[[390,[119]],101,96],103],[[[390,[118]],230],103],[[[390,[120]]],103],[[[390,[121]],207,101,101],103],[[[390,[122]],[4,[2]],[4,[2]],[4,[2]],[4,[101]],[4,[101]],[4,[230]],[4,[3]],[4,[391]],[4,[2]],[4,[220]],[4,[230]],[4,[392]]],103],[[[390,[123]],230],103],[[[390,[124]]],103],[[[390,[125]]],103],[[[390,[126]],393],103],[[[390,[180]],216],103],[[[390,[181]],220,220,216],103],[[[390,[127]],101],103],[[[390,[127]],101,393],103],[[[390,[128]]],103],[[[390,[129]],207],103],[[[390,[130]]],103],[[[390,[131]],[4,[3]],[4,[3]]],103],[[[390,[132]],101],103],[[[390,[133]],101,230,230,230,101,101,230,392],103],[[[390,[134]],101,230,230,230,101,230,392],103],[[[390,[135]],394,209],103],[[[390,[136]],3],103],[[[390,[137]],101],103],[[[390,[138]],[4,[233]],101],103],[[[390,[139]],393],103],[[[390,[140]],230],103],[[[390,[141]]],103],[[[390,[142]],6],103],[[[390,[143]],232,209,395,101,234,234,391,391,391,391,391,391,391,391,391,391,391,234,3,391,391,391,391,220,391,230,391,391],103],[[[390,[144]]],103],[[[390,[145]],[4,[2]],[4,[395]],[4,[101]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[234]],[4,[3]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[207]],[4,[391]],[4,[391]],[4,[391]],[4,[230]],[4,[3]],3,[4,[391]],[4,[209]],[4,[3]],[4,[391]]],103],[[[390,[146]]],103],[[[390,[147]],234,230],103],[[[390,[148]],101],103],[[[390,[149]],230],103],[[[390,[150]],230],103],[[[390,[151]],233,234,234,234,230,396,3,230,101],[[103,[[4,[393]]]]]],[[[390,[151]],233,234,234,234,234,230,396,3,230,101,397],[[103,[[4,[393]]]]]],[[[390,[151]],233,234,234,234,234,230,396,398,3,230,101,397],[[103,[[4,[393]]]]]],[[[390,[151]],233,234,234,234,230,396,398,3,230,101],[[103,[[4,[393]]]]]],[[[390,[152]],230],103],[[[390,[153]]],103],[[[390,[154]]],103],[[[390,[155]],101],103],[[[390,[156]],99,393],103],[[[390,[156]],230],103],[[[390,[157]]],103],[[[390,[158]]],103],[[[390,[159]]],103],[[[390,[160]],[4,[3]],[4,[3]],[4,[209]],[4,[391]]],103],[[[390,[161]],101],103],[[[390,[162]],99,230,230,230,97,98,230,392],103],[[[390,[162]],99,230,230,230,97,98,230,392],103],[[[390,[163]],399,209,391],103],[[[390,[164]]],103],[[[390,[166]],3],103],[[[390,[167]]],103],[[[390,[168]],216],103],[[[390,[169]],216],103],[[[390,[169]],216,230,216],103],[[[390,[170]],220,207],103],[[[390,[171]],101,230],103],[[[390,[172]],230,230,230,400,400,400,3,3],103],[[[390,[172]],230,230,230,400,400,3,3,401,230,230],103],[[[390,[172]],230,230,230,400,400,400,3,3,401,402,230],103],[[[390,[172]],230,230,230,400,400,400,3,3,401,402],103],[[[390,[173]],101,230],103],[[[390,[174]],101,230,230,230],103],[[[390,[174]],101,230,230,230,230,391],103],[[[390,[176]],230,3],103],[[[390,[175]],230,3],103],[[[390,[177]]],103],[[[390,[178]],[4,[2]],[4,[395]],[4,[3]],[4,[100]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[207]],[4,[391]],[4,[391]],[4,[400]],[4,[234]],[4,[230]],[4,[400]],[4,[400]],3,3,[4,[101]],[4,[209]],[4,[3]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[230]],[4,[230]],[4,[391]],[4,[391]],3,3,[4,[230]],[4,[391]],[4,[391]],[4,[3]]],103],[[[390,[179]],220,220,230],103],[[[390,[180]],216],103],[[[390,[181]],220,220,216],103],[[[390,[182]],220,209,395,100,391,391,391,391,391,391,391,207,391,391,400,230,234,400,400,101,391,391,391,391,391,3,230,391,391,3],103],[[[390,[183]],220,209],103],[[[390,[184]]],103],[[[390,[185]],230,3],103],0,[1],[[]],[[]],[[]],[[]],[[],4],[[],4],[403,403],[[]],[6],[6],[6],[[]],[[],2],[[],6],[[]],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],9],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[1],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[404,405],103],[[406,405],103],[[407,405],103],[[408,405,409],103],[[410,405,101],103],[[410,405,411],103],[[410,405,230],103],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[412,412],[[]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[238,186],187],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[239,238],[[],3],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],3],[[413,188],[[103,[[202,[414]]]]]],[[413,188],[[103,[[202,[414]]]]]],[[188,2],[[103,[[200,[413]]]]]],[[],[[103,[239]]]],[[],[[103,[239]]]],[188,[[103,[[200,[239]]]]]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[],2],0,0,0,[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],0,0,0,0,0,[415,6],[[416,230]],0,[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,233,421,422],103],[[235,233,234,234]],0,[[235,233,234]],0,0,[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[423,3],0,[423,3],0,0,[215,3],[[235,236,216],216],[215,3],[215,3],[424,[[4,[425]]]],[424,[[4,[425]]]],[424,[[4,[422]]]],[424,[[4,[422]]]],[425,424],[422,424],0,0,0,[[235,236]],[[235,236],400],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[426],0,0,0,0,0,[235,234],0,[[235,236],216],[[427,233]],0,0,0,[[[418,[[417,[415]],[417,[416]],417]]],3],[416,3],0,[[428,230,234],[[4,[234]]]],0,0,0,0,[[429,233],428],[[429,233],428],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[418,[[417,[415]],[417,[416]],417]]],229],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]]],430],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[235,236],400],0,0,0,0,0,0,0,0,0,0,0,[405,3],0,[416,230],0,0,0,0,0,0,0,0,0,[[429,430,2,236,101,[4,[233]]],103],[[429,430,393,431,[4,[2]]],[[103,[422]]]],[[429,430,2,6,232],103],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,432,216,230],[[103,[433]]]],[[215,432,216,230],[[103,[3]]]],[[434,435],103],[[434,435,[4,[230]]],103],[215,103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],214,216],[[103,[216]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],216,216],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],214],[[103,[216]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],214,216],103],[[],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],214],[[103,[436]]]],[[215,216],103],[[415,415],103],[[434,435,230],103],[[423,400,230],103],[[423,400,230],103],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[215,432,216,432,216,230,216],[[103,[437]]]],0,0,[438],0,0,0,[215,215],[[[418,[439,439,439]]],[[418,[439,439,439]]]],[405,405],[440,440],[441,441],[416,416],[415,415],[432,432],[237,237],[235,235],[438,438],[426,426],[442,442],[443,443],[435,435],[444,444],[445,445],[421,421],[428,428],[446,446],[425,425],[422,422],[447,447],[424,424],[396,396],[448,448],[398,398],[233,233],[431,431],[449,449],[450,450],[451,451],[452,452],[453,453],[454,454],[455,455],[427,427],[456,456],[236,236],[457,457],[458,458],[459,459],[401,401],[402,402],[460,460],[423,423],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[229,223],[[103,[211]]]],[[215,216,216,216],103],[[215,216],216],[[215,216,216,230],216],[[236,216,216,216,216,216],[[103,[216]]]],0,0,[[],6],[453,6],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],399],[[103,[237]]]],0,0,0,0,0,0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,220],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,220,2],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],399],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6,2]],[230],[[453,230]],[432],[[],432],[[],237],[[],235],[[],438],[[],395],[[],398],[[],459],[[],423],[[],441],[[],236],0,0,0,[[459,230],101],0,0,0,0,[[215,432,216,230],[[103,[3]]]],0,[[215,432,216,3,230],[[103,[3]]]],[[215,432,216,3,230],[[103,[3]]]],0,0,0,[[215,432,216,230],[[103,[3]]]],0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[]],[[]],[[],[[8,[441,11]]]],[[],[[8,[432,11]]]],[[],[[8,[237,11]]]],[[],[[8,[235,11]]]],[[],[[8,[438,11]]]],[[],[[8,[435,11]]]],[[],[[8,[395,11]]]],[[],[[8,[444,11]]]],[[],[[8,[421,11]]]],[[],[[8,[425,11]]]],[[],[[8,[422,11]]]],[[],[[8,[396,11]]]],[[],[[8,[448,11]]]],[[],[[8,[398,11]]]],[[],[[8,[233,11]]]],[[],[[8,[431,11]]]],[[],[[8,[449,11]]]],[[],[[8,[427,11]]]],[[],[[8,[456,11]]]],[[],[[8,[401,11]]]],[[],[[8,[402,11]]]],[[],[[8,[460,11]]]],[[],[[8,[423,11]]]],[101,[[8,[444,11]]]],[101,[[8,[421,11]]]],[101,[[8,[396,11]]]],[101,[[8,[448,11]]]],[101,[[8,[398,11]]]],[101,[[8,[233,11]]]],[101,[[8,[431,11]]]],[101,[[8,[449,11]]]],[101,[[8,[401,11]]]],[101,[[8,[402,11]]]],[101,[[8,[460,11]]]],[[],[[103,[444]]]],0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[215,432,230],[[103,[3]]]],0,[[101,101,101],6],[[101,101],6],[[101,101,101,101,101],6],[101,6],[[101,101,101,101,101],6],[[101,101,101,101],6],[[],6],[425,230],[424,230],[235,234],[426,3],[236,3],[215,103],[215,103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,220],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],220],103],[[436,436],3],[[435,435],3],[[444,444],3],[[421,421],3],[[446,446],3],[[422,422],3],[[396,396],3],[[448,448],3],[[398,398],3],[[233,233],3],[[431,431],3],[[449,449],3],[[455,455],3],[[401,401],3],[[402,402],3],[[460,460],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],0,0,0,0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,236,427,405],[[103,[216]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,233,6,234,393],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,236,427],[[103,[216]]]],[415,6],[[416,230,230]],[422,230],0,0,0,0,[[461,101],[[103,[434]]]],0,0,0,0,0,0,0,0,[[451,450],4],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]]],[[4,[235]]]],[[451,450],4],[426,2],[426,2],0,[234,[[103,[230]]]],[230,234],0,0,0,[[215,186],187],[[405,186],187],[[440,186],187],[[441,186],187],[[415,186],187],[[432,186],187],[[237,186],187],[[235,186],187],[[438,186],187],[[426,186],187],[[442,186],187],[[443,186],187],[[435,186],187],[[395,186],187],[[421,186],187],[[422,186],187],[[396,186],187],[[448,186],187],[[398,186],187],[[233,186],187],[[431,186],187],[[449,186],187],[[454,186],187],[[427,186],187],[[456,186],187],[[236,186],187],[[457,186],187],[[458,186],187],[[459,186],187],[[423,186],187],0,0,0,0,0,0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]]],[[103,[423]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],103],[[],[[103,[231]]]],[[],[[103,[462]]]],[[],[[103,[[418,[415,416]]]]]],[[],[[103,[[418,[415,416,[95,[101,463]]]]]]]],[[],[[103,[415]]]],[[215,2,207,101],215],[[233,230,230,422],456],[[],[[461,[221]]]],0,0,[452,3],0,[[236,233,230],393],[464,[[103,[2]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[433,3],[437,3],[235,3],[235,3],[235,3],[[],6],[453,6],0,0,[[[418,[[417,[415]],[417,[416]],417]]],101],0,0,0,0,0,0,0,[[428,234,230,234],[[4,[234]]]],0,0,0,[[]],[453],[432],0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[429],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,[[],103],[[],103],[[428,421,422],103],[[451,450,422],103],[[236,233,216,216],3],0,0,0,0,[[216,216,216,216,216,216,216,400],216],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[233,233],[432,3],[237,3],[235,3],[438,3],[[237,399],3],[[235,232],3],[[438,232],3],[[432,220],3],[423,3],0,[[416,2],3],[452,3],[[422,230],3],[[423,230],3],[215,3],[442,3],[236,3],[457,3],[428,3],[451,3],[416,3],[432,3],[464,3],[[405,440],3],[416,3],[[416,2],3],[465,3],[[233,234,234],3],[[233,230,230],3],[[233,234,234],3],[442,3],[236,3],[457,3],[[423,400,230],3],[423,3],[405,3],[[423,400,230],3],[466,3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[451,450],467],[452,419],[[428,230,234],468],[[428,230,234],419],0,[424,[[4,[393]]]],0,0,0,0,0,0,0,0,0,[452,6],0,[[],[[103,[469]]]],[[],[[103,[470]]]],[[],[[103,[470]]]],[[],[[103,[464]]]],0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[236,234],216],0,0,0,0,0,0,0,0,0,0,0,0,[[215,230]],0,0,[[423,216],230],0,0,0,0,[427,3],0,[[423,400],400],0,0,0,0,0,0,0,0,0,0,[[428,234,230,234],[[4,[234]]]],[[428,234,230,234],[[4,[234]]]],0,0,[[423,216,215],230],0,[[],6],[[451,450],4],0,0,0,[[423,216,215],230],0,0,0,[[416,216],3],0,[[451,450],4],0,0,0,0,0,0,[405,3],[[]],[215,471],[416,471],[442,471],[236,471],[457,471],0,0,0,0,0,0,[[432,215],216],[215,216],[215,216],[[236,216],234],[465,3],0,0,0,0,0,[[428,230,234],468],[[451,450],467],[[207,393],425],[[101,393,2,234,230,448,392,234,230],422],[[233,421],431],[[233,3,101,230,230,2,393,230,216,230,2,230,216,234,234],427],[[233,101,230,230,2,234,393],456],[[233,230,230],393],[[429,465,236,452,216,430,2,230,101],[[8,[[4,[393]],201]]]],[468,4],[467,4],0,0,[[428,472],[[4,[424]]]],[450,[[4,[472]]]],[[451,472],[[4,[424]]]],0,0,[[428,472],[[4,[424]]]],[[451,472],[[4,[424]]]],0,0,[426,6],0,0,0,0,0,0,0,[405,3],0,0,0,0,0,0,[[471,434,435,[4,[230]]],209],[234,230],[230,234],[[215,461,[4,[230]]],[[103,[216]]]],[[236,461,[4,[230]]],[[103,[216]]]],[457,391],0,[[236,461,[4,[230]]],[[103,[434]]]],[[461,101],[[103,[434]]]],0,0,0,[431,421],0,[451,449],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[423,230],3],[416,473],[467,4],[452,[[4,[454]]]],[452,[[4,[454]]]],[465,234],0,[415,6],0,[[[418,[[417,[415]],[417,[416]],417]],232,230],4],[[[418,[[417,[415]],[417,[416]],417]],232,393],4],0,[[[418,[[417,[415]],[417,[416]],417]]],[[103,[6]]]],[[415,6],6],[415,6],0,0,[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[438]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],438],[[[418,[[417,[415]],[417,[416]],417]],232],[[103,[235]]]],[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[235]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232],[[103,[235]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],235],0,0,0,0,[405,3],0,0,[452,[[103,[454]]]],0,0,[465,[[4,[421]]]],0,0,0,[474,216],0,[[423,400,230],400],0,[[465,230,234,429],103],0,0,0,[422,230],0,0,0,0,[475,476],[475,476],[[452,454],[[8,[454]]]],0,0,0,0,0,0,[[428,234,230,234],234],0,0,[235,216],0,0,0,0,0,[[233,4,4,3,230,234],[[4,[466]]]],0,0,0,[[235,216,216]],[[235,216]],[[235,216,236]],[[235,236,234,216],216],[[235,216]],0,[[416,230]],0,0,0,0,0,0,0,0,0,[423,230],[215,216],[[215,216],216],[423,230],[[428,421,393],[[4,[422]]]],[[451,450,393],[[4,[422]]]],[[428,421,230],[[4,[422]]]],[[451,450,230],[[4,[422]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6,234],103],[[235,234,234]],[[428,230,234],4],[[451,450],[[4,[422]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[459,400,230]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],101,101,101,101,101],103],[[452,6],103],[[428,421],450],[[428,421],450],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,216],216],[[215,216],216],0,0,0,0,0,0,0,[441,[[8,[11]]]],[432,[[8,[11]]]],[237,[[8,[11]]]],[235,[[8,[11]]]],[438,[[8,[11]]]],[435,[[8,[11]]]],[395,[[8,[11]]]],[444,[[8,[11]]]],[421,[[8,[11]]]],[425,[[8,[11]]]],[422,[[8,[11]]]],[396,[[8,[11]]]],[448,[[8,[11]]]],[398,[[8,[11]]]],[233,[[8,[11]]]],[431,[[8,[11]]]],[449,[[8,[11]]]],[427,[[8,[11]]]],[456,[[8,[11]]]],[401,[[8,[11]]]],[402,[[8,[11]]]],[460,[[8,[11]]]],[423,[[8,[11]]]],0,[415,6],0,[[415,6],6],[[[418,[[417,[415]],[417,[416]],417]],399],[[103,[237]]]],[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[237]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],399],[[103,[237]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],237],[405,3],0,0,0,0,[[416,3]],[207],[[453,207]],[[236,3]],[207],[[453,207]],[[416,3]],[[423,3]],0,0,0,[[235,236]],[[235,236]],[236,216],0,0,0,0,0,0,0,[467,233],[428,233],[431,233],[449,233],[456,233],0,0,[438,431],0,[473],[[236,216],[[103,[216]]]],0,0,0,0,[[101,101,101,101,101],6],0,0,[215,216],[236,216],0,0,0,0,0,0,0,0,0,0,0,0,0,[[423,216],230],0,0,0,[[423,400],400],0,[427,233],0,0,0,[423,460],0,0,0,0,[230,[[4,[392]]]],0,0,0,0,0,[395,435],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[396,[[103,[448]]]],[[[418,[[417,[415]],[417,[416]],417]],230],103],[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[423]]]],[415,6],0,[[[418,[[417,[415]],[417,[416]],417]]],[[103,[6]]]],0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],[[103,[423]]]],0,0,[415,6],0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],215,230,2],103],0,0,0,0,0,[[415,6],6],[[[418,[[417,[415]],[417,[416]],417]],220],[[103,[432]]]],[[[418,[[417,[415]],[417,[416]],417]],220],103],[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[432]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],220],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],432],0,[[],[[103,[215]]]],[[],[[103,[405]]]],[[],[[103,[441]]]],[[],[[103,[426]]]],[[],[[103,[442]]]],[[],[[103,[443]]]],[[],[[103,[445]]]],[[],[[103,[428]]]],[[],[[103,[452]]]],[[],[[103,[236]]]],[[],[[103,[457]]]],[[],[[103,[458]]]],[[],[[103,[215]]]],[[],[[103,[405]]]],[[],[[103,[441]]]],[[],[[103,[426]]]],[[],[[103,[442]]]],[[],[[103,[443]]]],[[],[[103,[445]]]],[[],[[103,[428]]]],[[],[[103,[452]]]],[[],[[103,[236]]]],[[],[[103,[457]]]],[[],[[103,[458]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[421,[193,[421]]]]]],[[],8],[[],8],[[],8],[101,[[8,[477,[193,[477]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[396,[193,[396]]]]]],[[],8],[101,[[8,[448,[193,[448]]]]]],[101,[[8,[398,[193,[398]]]]]],[[],8],[[],8],[101,[[8,[233,[193,[233]]]]]],[[],8],[101,[[8,[431,[193,[431]]]]]],[101,[[8,[449,[193,[449]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[455,[193,[455]]]]]],[454,[[103,[427]]]],[454,[[103,[427]]]],[[],8],[[],8],[454,[[103,[456]]]],[454,[[103,[456]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[401,[193,[401]]]]]],[101,[[8,[402,[193,[402]]]]]],[[],8],[[],8],[101,[[8,[460,[193,[460]]]]]],[[],8],[[],[[8,[421,[193,[421]]]]]],[[],[[8,[477,[193,[477]]]]]],[[],[[8,[396,[193,[396]]]]]],[[],[[8,[448,[193,[448]]]]]],[[],[[8,[398,[193,[398]]]]]],[[],[[8,[233,[193,[233]]]]]],[[],[[8,[431,[193,[431]]]]]],[[],[[8,[449,[193,[449]]]]]],[[],[[8,[455,[193,[455]]]]]],[[],[[8,[401,[193,[401]]]]]],[[],[[8,[402,[193,[402]]]]]],[[],[[8,[460,[193,[460]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[441,103],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[432,215],216],[[235,236],216],[[235,236,216],[[103,[216]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[459,230,400]],[[215,432,216]],[[236,429,434,230],103],[215],[[215,216,230]],[[451,230,230]],[[215,230,230]],[[235,236,230]],0,0,0,0,0,0,[215,103],[426,103],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,432,216,230],[[103,[433]]]],[[215,432,216,230],[[103,[433]]]],[[215,432,216,230],[[103,[3]]]],[[215,432,216,230],[[103,[3]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],415],0,0,0,0,0,0,0,0,0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],478],[[],479],[[],480],[[],481],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[478,11]]]],[[],[[8,[479,11]]]],[[],[[8,[480,11]]]],[[],[[8,[481,11]]]],[6],[6],[6],[6],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[478,[[8,[11]]]],[479,[[8,[11]]]],[480,[[8,[11]]]],[481,[[8,[11]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[471,103],[186,[[8,[208]]]]],"p":[[3,"Private"],[3,"Pubkey"],[15,"bool"],[4,"Option"],[3,"Mango"],[15,"usize"],[6,"ProgramResult"],[4,"Result"],[3,"TypeId"],[3,"AccountBuybackFeesWithMngo"],[3,"Error"],[3,"AccountClose"],[3,"AccountCreate"],[3,"AccountCreateV2"],[3,"AccountEdit"],[3,"AccountExpand"],[3,"AccountSizeMigration"],[3,"AccountToggleFreeze"],[3,"AdminPerpWithdrawFees"],[3,"AdminTokenWithdrawFees"],[3,"AltExtend"],[3,"AltSet"],[3,"Benchmark"],[3,"ComputeAccountData"],[3,"FlashLoanBegin"],[3,"FlashLoanSwapBegin"],[3,"FlashLoanEnd"],[3,"GroupClose"],[3,"GroupCreate"],[3,"GroupEdit"],[3,"GroupWithdrawInsuranceFund"],[3,"HealthRegionBegin"],[3,"HealthRegionEnd"],[3,"IxGateSet"],[3,"OpenbookV2CancelOrder"],[3,"OpenbookV2CloseOpenOrders"],[3,"OpenbookV2CreateOpenOrders"],[3,"OpenbookV2DeregisterMarket"],[3,"OpenbookV2EditMarket"],[3,"OpenbookV2LiqForceCancelOrders"],[3,"OpenbookV2PlaceOrder"],[3,"OpenbookV2PlaceTakeOrder"],[3,"OpenbookV2RegisterMarket"],[3,"OpenbookV2SettleFunds"],[3,"PerpCancelAllOrders"],[3,"PerpCancelAllOrdersBySide"],[3,"PerpCancelOrder"],[3,"PerpCancelOrderByClientOrderId"],[3,"PerpCloseMarket"],[3,"PerpConsumeEvents"],[3,"PerpCreateMarket"],[3,"PerpDeactivatePosition"],[3,"PerpEditMarket"],[3,"PerpForceClosePosition"],[3,"PerpLiqBaseOrPositivePnl"],[3,"PerpLiqForceCancelOrders"],[3,"PerpLiqNegativePnlOrBankruptcy"],[3,"PerpLiqNegativePnlOrBankruptcyV2"],[3,"PerpPlaceOrder"],[3,"PerpSettleFees"],[3,"PerpSettlePnl"],[3,"PerpUpdateFunding"],[3,"Serum3CancelAllOrders"],[3,"Serum3CancelOrder"],[3,"Serum3CloseOpenOrders"],[3,"Serum3CreateOpenOrders"],[3,"Serum3DeregisterMarket"],[3,"Serum3EditMarket"],[3,"Serum3LiqForceCancelOrders"],[3,"Serum3PlaceOrder"],[3,"Serum3RegisterMarket"],[3,"Serum3SettleFunds"],[3,"Serum3SettleFundsV2Extra"],[3,"Serum3SettleFundsV2"],[3,"StubOracleClose"],[3,"StubOracleCreate"],[3,"StubOracleSet"],[3,"TokenAddBank"],[3,"TokenConditionalSwapCancel"],[3,"TokenConditionalSwapCreate"],[3,"TokenConditionalSwapStart"],[3,"TokenConditionalSwapTrigger"],[3,"TokenDepositIntoExisting"],[3,"TokenDeposit"],[3,"TokenDeregister"],[3,"TokenEdit"],[3,"TokenForceCloseBorrowsWithToken"],[3,"TokenLiqBankruptcy"],[3,"TokenLiqWithToken"],[3,"TokenRegister"],[3,"TokenRegisterTrustless"],[3,"TokenUpdateIndexAndRate"],[3,"TokenWithdraw"],[3,"AccountMeta"],[3,"Vec"],[4,"FlashLoanType"],[4,"Serum3SelfTradeBehavior"],[4,"Serum3OrderType"],[4,"Serum3Side"],[3,"InterestRateParams"],[15,"u8"],[3,"AccountBuybackFeesWithMngo"],[6,"Result"],[3,"AccountClose"],[3,"AccountCreate"],[3,"AccountCreateV2"],[3,"AccountEdit"],[3,"AccountExpand"],[3,"AccountSizeMigration"],[3,"AccountToggleFreeze"],[3,"AdminPerpWithdrawFees"],[3,"AdminTokenWithdrawFees"],[3,"AltExtend"],[3,"AltSet"],[3,"Benchmark"],[3,"ComputeAccountData"],[3,"FlashLoanBegin"],[3,"FlashLoanSwapBegin"],[3,"FlashLoanEnd"],[3,"GroupClose"],[3,"GroupCreate"],[3,"GroupEdit"],[3,"GroupWithdrawInsuranceFund"],[3,"HealthRegionBegin"],[3,"HealthRegionEnd"],[3,"IxGateSet"],[3,"OpenbookV2CancelOrder"],[3,"OpenbookV2CloseOpenOrders"],[3,"OpenbookV2CreateOpenOrders"],[3,"OpenbookV2DeregisterMarket"],[3,"OpenbookV2EditMarket"],[3,"OpenbookV2LiqForceCancelOrders"],[3,"OpenbookV2PlaceOrder"],[3,"OpenbookV2PlaceTakeOrder"],[3,"OpenbookV2RegisterMarket"],[3,"OpenbookV2SettleFunds"],[3,"PerpCancelAllOrders"],[3,"PerpCancelAllOrdersBySide"],[3,"PerpCancelOrder"],[3,"PerpCancelOrderByClientOrderId"],[3,"PerpCloseMarket"],[3,"PerpConsumeEvents"],[3,"PerpCreateMarket"],[3,"PerpDeactivatePosition"],[3,"PerpEditMarket"],[3,"PerpForceClosePosition"],[3,"PerpLiqBaseOrPositivePnl"],[3,"PerpLiqForceCancelOrders"],[3,"PerpLiqNegativePnlOrBankruptcy"],[3,"PerpLiqNegativePnlOrBankruptcyV2"],[3,"PerpPlaceOrder"],[3,"PerpSettleFees"],[3,"PerpSettlePnl"],[3,"PerpUpdateFunding"],[3,"Serum3CancelAllOrders"],[3,"Serum3CancelOrder"],[3,"Serum3CloseOpenOrders"],[3,"Serum3CreateOpenOrders"],[3,"Serum3DeregisterMarket"],[3,"Serum3EditMarket"],[3,"Serum3LiqForceCancelOrders"],[3,"Serum3PlaceOrder"],[3,"Serum3RegisterMarket"],[3,"Serum3SettleFunds"],[3,"Serum3SettleFundsV2Extra"],[3,"Serum3SettleFundsV2"],[3,"StubOracleClose"],[3,"StubOracleCreate"],[3,"StubOracleSet"],[3,"TokenAddBank"],[3,"TokenConditionalSwapCancel"],[3,"TokenConditionalSwapCreate"],[3,"TokenConditionalSwapStart"],[3,"TokenConditionalSwapTrigger"],[3,"TokenDepositIntoExisting"],[3,"TokenDeposit"],[3,"TokenDeregister"],[3,"TokenEdit"],[3,"TokenForceCloseBorrowsWithToken"],[3,"TokenLiqBankruptcy"],[3,"TokenLiqWithToken"],[3,"TokenRegister"],[3,"TokenRegisterTrustless"],[3,"TokenUpdateIndexAndRate"],[3,"TokenWithdraw"],[3,"Formatter"],[6,"Result"],[3,"AccountInfo"],[3,"Transfer"],[3,"CpiContext"],[3,"BTreeMap"],[3,"BTreeSet"],[3,"TryFromPrimitiveError"],[3,"AccountInfoRef"],[3,"AccountInfoRefMut"],[3,"KeyedAccount"],[3,"KeyedAccountSharedData"],[8,"ZeroCopy"],[8,"Owner"],[3,"Ref"],[4,"Error"],[3,"RefMut"],[3,"AccountSharedData"],[4,"ProgramError"],[4,"MangoError"],[8,"Display"],[15,"u32"],[3,"Error"],[3,"String"],[3,"MangoAccountData"],[3,"Equity"],[3,"TokenEquity"],[3,"PerpEquity"],[3,"HealthCache"],[3,"Bank"],[6,"I80F48"],[3,"Prices"],[4,"HealthType"],[3,"TokenInfo"],[6,"TokenIndex"],[8,"KeyedAccountReader"],[3,"FixedOrderAccountRetriever"],[3,"ScanningAccountRetriever"],[3,"ScannedBanksAndOracles"],[3,"TokenBalance"],[3,"TokenMaxReserved"],[3,"Serum3Info"],[3,"PerpInfo"],[6,"MangoAccountRef"],[15,"u64"],[6,"MangoAccountValue"],[6,"PerpMarketIndex"],[4,"Side"],[15,"i64"],[3,"PerpPosition"],[3,"PerpMarket"],[3,"Serum3Orders"],[3,"OpenOrdersSlim"],[3,"OpenOrders"],[3,"Benchmark"],[3,"OpenbookV2CancelAllOrders"],[3,"OpenbookV2LiqForceCancelOrders"],[3,"OpenbookV2SettleFunds"],[3,"OpenbookV2CancelOrder"],[3,"OpenbookV2PlaceTakerOrder"],[3,"OpenbookV2PlaceOrder"],[3,"OpenbookV2CloseOpenOrders"],[3,"OpenbookV2CreateOpenOrders"],[3,"OpenbookV2DeregisterMarket"],[3,"OpenbookV2EditMarket"],[3,"OpenbookV2RegisterMarket"],[3,"ComputeAccountData"],[3,"AltExtend"],[3,"AltSet"],[3,"TokenConditionalSwapStart"],[3,"TokenConditionalSwapTriggerV2"],[3,"TokenConditionalSwapTrigger"],[3,"TokenConditionalSwapCancel"],[3,"TokenConditionalSwapCreateLinearAuction"],[3,"TokenConditionalSwapCreatePremiumAuction"],[3,"TokenConditionalSwapCreateV2"],[3,"TokenConditionalSwapCreate"],[3,"PerpLiqNegativePnlOrBankruptcyV2"],[3,"PerpLiqNegativePnlOrBankruptcy"],[3,"PerpLiqForceCancelOrders"],[3,"PerpLiqBaseOrPositivePnl"],[3,"PerpSettleFees"],[3,"PerpForceClosePosition"],[3,"PerpSettlePnl"],[3,"PerpUpdateFunding"],[3,"PerpConsumeEvents"],[3,"PerpCancelAllOrdersBySide"],[3,"PerpCancelAllOrders"],[3,"PerpCancelOrderByClientOrderId"],[3,"PerpCancelOrder"],[3,"PerpPlaceOrderPeggedV2"],[3,"PerpPlaceOrderPegged"],[3,"PerpPlaceOrderV2"],[3,"PerpPlaceOrder"],[3,"PerpDeactivatePosition"],[3,"PerpCloseMarket"],[3,"PerpEditMarket"],[3,"PerpCreateMarket"],[3,"TokenLiqBankruptcy"],[3,"TokenForceCloseBorrowsWithToken"],[3,"TokenLiqWithToken"],[3,"LiqTokenBankruptcy"],[3,"LiqTokenWithToken"],[3,"Serum3LiqForceCancelOrders"],[3,"Serum3SettleFundsV2"],[3,"Serum3SettleFunds"],[3,"Serum3CancelAllOrders"],[3,"Serum3CancelOrderByClientOrderId"],[3,"Serum3CancelOrder"],[3,"Serum3PlaceOrderV2"],[3,"Serum3PlaceOrder"],[3,"Serum3CloseOpenOrders"],[3,"Serum3CreateOpenOrders"],[3,"Serum3DeregisterMarket"],[3,"Serum3EditMarket"],[3,"Serum3RegisterMarket"],[3,"HealthRegionEnd"],[3,"HealthRegionBegin"],[3,"FlashLoanEndV2"],[3,"FlashLoanEnd"],[3,"FlashLoanSwapBegin"],[3,"FlashLoanBegin"],[3,"TokenWithdraw"],[3,"TokenDepositIntoExisting"],[3,"TokenDeposit"],[3,"StubOracleSetTest"],[3,"StubOracleSet"],[3,"StubOracleClose"],[3,"StubOracleCreate"],[3,"AccountBuybackFeesWithMngo"],[3,"AccountClose"],[3,"AccountToggleFreeze"],[3,"AccountEdit"],[3,"AccountSizeMigration"],[3,"AccountExpandV2"],[3,"AccountExpand"],[3,"AccountCreateV2"],[3,"AccountCreate"],[3,"TokenUpdateIndexAndRate"],[3,"TokenDeregister"],[3,"TokenAddBank"],[3,"TokenEdit"],[3,"TokenRegisterTrustless"],[3,"TokenRegister"],[3,"GroupClose"],[3,"IxGateSet"],[3,"GroupWithdrawInsuranceFund"],[3,"GroupEdit"],[3,"GroupCreate"],[3,"AdminPerpWithdrawFees"],[3,"AdminTokenWithdrawFees"],[4,"LoanOriginationFeeInstruction"],[3,"PerpBalanceLog"],[3,"TokenBalanceLog"],[3,"FlashLoanLog"],[3,"FlashLoanLogV2"],[3,"FlashLoanLogV3"],[3,"WithdrawLog"],[3,"DepositLog"],[3,"FillLog"],[3,"FillLogV2"],[3,"FillLogV3"],[3,"PerpUpdateFundingLog"],[3,"PerpUpdateFundingLogV2"],[3,"UpdateIndexLog"],[3,"UpdateRateLog"],[3,"UpdateRateLogV2"],[3,"TokenLiqWithTokenLog"],[3,"TokenLiqWithTokenLogV2"],[3,"Serum3OpenOrdersBalanceLog"],[3,"Serum3OpenOrdersBalanceLogV2"],[3,"WithdrawLoanOriginationFeeLog"],[3,"WithdrawLoanLog"],[3,"TokenLiqBankruptcyLog"],[3,"DeactivateTokenPositionLog"],[3,"DeactivatePerpPositionLog"],[3,"TokenMetaDataLog"],[3,"TokenMetaDataLogV2"],[3,"PerpMarketMetaDataLog"],[3,"Serum3RegisterMarketLog"],[3,"PerpLiqBaseOrPositivePnlLog"],[3,"PerpLiqBaseOrPositivePnlLogV2"],[3,"PerpLiqBankruptcyLog"],[3,"PerpLiqNegativePnlOrBankruptcyLog"],[3,"PerpSettlePnlLog"],[3,"PerpSettleFeesLog"],[3,"AccountBuybackFeesWithMngoLog"],[3,"FilledPerpOrderLog"],[3,"PerpTakerTradeLog"],[3,"PerpForceClosePositionLog"],[3,"TokenForceCloseBorrowsWithTokenLog"],[3,"TokenForceCloseBorrowsWithTokenLogV2"],[3,"TokenConditionalSwapCreateLog"],[3,"TokenConditionalSwapCreateLogV2"],[3,"TokenConditionalSwapCreateLogV3"],[3,"TokenConditionalSwapTriggerLog"],[3,"TokenConditionalSwapTriggerLogV2"],[3,"TokenConditionalSwapTriggerLogV3"],[3,"TokenConditionalSwapCancelLog"],[3,"TokenConditionalSwapStartLog"],[3,"FlashLoanTokenDetail"],[3,"FlashLoanTokenDetailV2"],[3,"FlashLoanTokenDetailV3"],[8,"Event"],[3,"Context"],[15,"f32"],[15,"u16"],[15,"u128"],[6,"OpenbookV2MarketIndex"],[3,"OracleConfigParams"],[4,"PlaceOrderType"],[15,"i32"],[4,"SelfTradeBehavior"],[6,"Serum3MarketIndex"],[15,"f64"],[4,"TokenConditionalSwapDisplayPriceStyle"],[4,"TokenConditionalSwapIntention"],[3,"MangoV4"],[3,"InitOpenOrders"],[3,"Group"],[3,"CloseOpenOrders"],[3,"SettleFunds"],[3,"PlaceOrder"],[3,"NewOrderInstructionV3"],[3,"CancelOrder"],[3,"CancelOrderInstructionV2"],[3,"OrderBookStateHeader"],[3,"MarketState"],[3,"Slab"],[3,"MangoAccountDynamicHeader"],[3,"MangoAccountFixed"],[8,"DerefOrBorrow"],[3,"DynamicAccount"],[8,"Iterator"],[8,"DerefOrBorrowMut"],[4,"BookSideOrderTree"],[3,"LeafNode"],[3,"TokenConditionalSwap"],[3,"AnyNode"],[3,"InnerNode"],[3,"MintInfo"],[3,"FillEvent"],[3,"BookSide"],[3,"Orderbook"],[6,"MangoAccountRefMut"],[4,"SideAndOrderTree"],[3,"TokenPosition"],[3,"WithdrawResult"],[3,"OracleState"],[3,"OracleConfig"],[4,"CheckLiquidatable"],[3,"TransferResult"],[3,"PerpOpenOrder"],[8,"Clone"],[4,"IxGate"],[3,"MangoAccount"],[3,"OpenbookV2Market"],[3,"OpenbookV2MarketIndexReservation"],[4,"OracleType"],[3,"StubOracle"],[4,"OrderState"],[3,"FreeNode"],[4,"PostOrderType"],[4,"OrderTreeType"],[3,"OrderTreeRoot"],[3,"OrderTreeNodes"],[3,"EventQueue"],[3,"EventQueueHeader"],[3,"AnyEvent"],[4,"EventType"],[3,"OutEvent"],[3,"Serum3Market"],[3,"Serum3MarketIndexReservation"],[3,"StablePriceModel"],[4,"TokenConditionalSwapType"],[3,"OracleAccountInfos"],[6,"MangoAccountLoadedRef"],[3,"Global"],[3,"WhirlpoolState"],[3,"Order"],[3,"BookSideIterItem"],[3,"OrderTreeIter"],[3,"BookSideIter"],[6,"MangoAccountLoadedRefCell"],[6,"MangoAccountLoadedRefCellMut"],[15,"str"],[6,"NodeHandle"],[3,"MangoAccountPdaSeeds"],[15,"i8"],[3,"ProgressBar"],[3,"ProgressBarIter"],[4,"NodeTag"],[3,"TokenIndex"],[3,"Serum3MarketIndex"],[3,"PerpMarketIndex"],[3,"I80F48"],[8,"AccountReader"],[8,"LoadZeroCopy"],[8,"LoadZeroCopyRef"],[8,"LoadMutZeroCopy"],[8,"LoadMutZeroCopyRef"],[8,"Contextable"],[8,"IsAnchorErrorWithCode"],[8,"AccountRetriever"],[8,"LowPrecisionDivision"],[8,"ClampToInt"],[8,"OpenOrdersAmounts"],[4,"OrderParams"],[8,"QueueHeader"],[3,"BookSideOrderHandle"],[8,"DynamicHeader"],[8,"MangoAccountLoader"],[13,"OraclePegged"],[13,"Fixed"],[13,"ImmediateOrCancel"]]},\ +"mango_v4":{"doc":"","t":"HDLOAAAALOLLLFLLLLLLLFAOOALOAAFLLALALLLLAOLLAOOLLAOALLLLALLALLLODDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNDDDDDDDDDDDDNDNNDNDDDEDDDDDDNDDNDDDDDDDDDDDDDDDDDDDDDDDDDDDDNDDDDDDDEDDEDDDEDDDNDDDDDDDDDDDDDDDDNLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAAAMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRFFRFFRFFRFFDDIDIDIIIILLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMMMKKLLLLKKLLLLKKLKKLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFNNNNNNINNNNNNNNNNNNNNNNNNNNNNNNINNNENNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNLLLLLLLLLKLLLLOOLLLLLKKLLLLLLLOOLLLLLLLLLLKLLDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLMMLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLIDDENNNDDDDDDDDLLLLLLLLLMMMLLLLLLLLLLLLLLMKLLLLMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLMLLLMMLFFFLLMLLLLLLLLLLLLLLLLLLLLLLLKLLMLMMMLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLMMFFMMMLLLLLLLLMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIKKKKDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMDDDDDDDDDDDDDDNNEDDDDDDDDDDDDNDDNDNDDDDDDNDDDDDDDDDDNNDDDDDDLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMFFMMMLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDIDDDDLMMMLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLFLLLLLLLLLLLLLLLFFFFFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLKLKLKLKLKLKLMMMMMMMMMMLLLLLLLLLLLLLLMMMMMFMMMFMMLLLLLLLLLLLLLLMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLNNNNNNNNNNNNDDNNNNDNNNNNDDDDENNERRNIIDIDDERRNDNNNNDNDNNNRNRNNDNNQENDNNNNNNRRRDDDGGGIDGGGNNDGENRRRNNNNNNDGDNNNNDDDNNDENDEEDDDEDNDRNNNNNNNNNNNNDGDNDNNNENNNNENNRRRIRENNNNNNNNDGDDNNNNEENDNNDNNNNNRNNDNNNNEENNENNNGNNDNNNNDNNNDDRLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMOOLLMLLLLLLMLMMLLLLLLMLMMLLLLLLLLLLMMMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMOOLMMMMMLMLLMMMLLMLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMMMMMMMLMLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMFLLLLMMKLLMMMMMMLLLLLKLLLLLLLLLLLLMMMLMMMMLMLLMMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLMMMMFMMMMMMMMLLLLLMFFMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLMMLMLLMMMMMMMMMMMMMMOOMLLLLLKLMMLMMMMMMMLMMMKLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLLLLMMMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMMMMMMMMMLMKKKFMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLMMLMMMMLMLMMMMMMMMMMLLMMLMLLMMMLMMMLMLMMMMMMLLLLLLLMMMMMMLLLLLMMMMMLLLLLLLFLLLMMLLLMMLLMMLMMMMOOMLMMMMMMFFFLLLMLFMAMLMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLMLMLLMLLLMMLLLLLLMMMMLMMLMMLMMMFMLMLMMMLMMMMLLLAAMMMMLMMLMMMMMFMMMLLLLLMLMMMMMMMMMLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLMOOMLKLLKLLLMMMLLLMMMMMMMLLLLLMMLMLLAMMMLMMLLMMMMMAAMMMMMMLMMMLMLMMMLMMMMLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLMMLMLMMMMMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMMMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMRFFRFFRFFRFFRFFRFFRFFDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFF","n":["ID","Mango","__clone_box","account_seeds","accounts","accounts_ix","accounts_zerocopy","address_lookup_table_program","az","bank_seeds","borrow","borrow_mut","cast_from","check_id","checked_as","checked_cast_from","clone","clone_into","deref","deref_mut","drop","entry","error","error_msg","error_msg_typed","events","from","group_seeds","health","i80f48","id","id","init","instruction","into","logs","lossless_try_into","lossless_try_into","lossy_into","lossy_into","mango_v4","openbook_v2_market_seeds","overflowing_as","overflowing_cast_from","program","require_msg","require_msg_typed","saturating_as","saturating_cast_from","serum3_cpi","serum_market_seeds","state","to_owned","try_from","try_into","type_id","types","unwrapped_as","unwrapped_cast_from","util","vzip","wrapping_as","wrapping_cast_from","zip","AccountBuybackFeesWithMngo","AccountClose","AccountCreate","AccountCreateV2","AccountEdit","AccountExpand","AccountSizeMigration","AccountToggleFreeze","AdminPerpWithdrawFees","AdminTokenWithdrawFees","AltExtend","AltSet","Benchmark","ComputeAccountData","FlashLoanBegin","FlashLoanEnd","FlashLoanSwapBegin","GroupClose","GroupCreate","GroupEdit","GroupWithdrawInsuranceFund","HealthRegionBegin","HealthRegionEnd","IxGateSet","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2PlaceOrder","OpenbookV2PlaceTakeOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","PerpCancelAllOrders","PerpCancelAllOrdersBySide","PerpCancelOrder","PerpCancelOrderByClientOrderId","PerpCloseMarket","PerpConsumeEvents","PerpCreateMarket","PerpDeactivatePosition","PerpEditMarket","PerpForceClosePosition","PerpLiqBaseOrPositivePnl","PerpLiqForceCancelOrders","PerpLiqNegativePnlOrBankruptcy","PerpLiqNegativePnlOrBankruptcyV2","PerpPlaceOrder","PerpSettleFees","PerpSettlePnl","PerpUpdateFunding","Serum3CancelAllOrders","Serum3CancelOrder","Serum3CloseOpenOrders","Serum3CreateOpenOrders","Serum3DeregisterMarket","Serum3EditMarket","Serum3LiqForceCancelOrders","Serum3PlaceOrder","Serum3RegisterMarket","Serum3SettleFunds","Serum3SettleFunds","Serum3SettleFundsV2","Serum3SettleFundsV2Extra","StubOracleClose","StubOracleCreate","StubOracleSet","TokenAddBank","TokenConditionalSwapCancel","TokenConditionalSwapCreate","TokenConditionalSwapStart","TokenConditionalSwapTrigger","TokenDeposit","TokenDepositIntoExisting","TokenDeregister","TokenEdit","TokenForceCloseBorrowsWithToken","TokenLiqBankruptcy","TokenLiqWithToken","TokenRegister","TokenRegisterTrustless","TokenUpdateIndexAndRate","TokenWithdraw","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account_a","account_a","account_b","account_b","address_lookup_table","address_lookup_table","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","associated_token_program","authority","authority","authority","authority","authority","authority","authority","authority","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank","bank","bank","bank","bank","bank","bank","bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_oracle","base_oracle","base_vault","base_vault","base_vault","base_vault","base_vault","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buy_bank","buy_bank","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","creator","dao_account","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","destination","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","dummy","dust_vault","event_heap","event_heap","event_heap","event_queue","event_queue","event_queue","event_queue","existing_bank","fallback_oracle","fallback_oracle","fallback_oracle","fees_bank","fees_oracle","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","index_reservation","index_reservation","index_reservation","index_reservation","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","input_mint","instructions","instructions","instructions","instructions","insurance_bank","insurance_bank_vault","insurance_mint","insurance_oracle","insurance_vault","insurance_vault","insurance_vault","insurance_vault","insurance_vault","insurance_vault","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","liab_mint_info","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor_authority","liqor_authority","liqor_owner","liqor_owner","liqor_owner","liqor_owner","liqor_owner","liqor_owner","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","market","market","market_asks","market_asks","market_asks","market_asks","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_bids","market_bids","market_bids","market_bids","market_event_queue","market_event_queue","market_event_queue","market_event_queue","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_request_queue","market_request_queue","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","mint","mint","mint","mint","mint_info","mint_info","mint_info","mint_info","mint_info","mint_info","mngo_bank","mngo_oracle","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","output_mint","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer_bank","payer_bank","payer_bank","payer_oracle","payer_oracle","payer_oracle","payer_vault","payer_vault","payer_vault","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_oracle","quote_oracle","quote_vault","quote_vault","quote_vault","quote_vault","quote_vault","quote_vault","rent","rent","rent","rent","rent","rent","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","sell_bank","sell_bank","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","settle_bank","settle_bank","settle_bank","settle_bank","settle_bank","settle_oracle","settle_oracle","settle_oracle","settle_oracle","settle_oracle","settle_vault","settle_vault","settle_vault","settler","settler_owner","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","token_account","token_account","token_account","token_account","token_account","token_authority","token_authority","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","v1","v2","vault","vault","vault","vault","vault","vault","vault","vault","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","AbortTransaction","AccountBuybackFeesWithMngo","AccountClose","AccountCreate","AccountCreateV2","AccountEdit","AccountExpand","AccountSizeMigration","AccountToggleFreeze","AdminPerpWithdrawFees","AdminTokenWithdrawFees","AltExtend","AltSet","Ask","Benchmark","Bid","CancelProvide","ComputeAccountData","DecrementTake","FlashLoanBegin","FlashLoanEnd","FlashLoanSwapBegin","FlashLoanType","GroupClose","GroupCreate","GroupEdit","GroupWithdrawInsuranceFund","HealthRegionBegin","HealthRegionEnd","ImmediateOrCancel","InterestRateParams","IxGateSet","Limit","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2PlaceOrder","OpenbookV2PlaceTakeOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","PerpCancelAllOrders","PerpCancelAllOrdersBySide","PerpCancelOrder","PerpCancelOrderByClientOrderId","PerpCloseMarket","PerpConsumeEvents","PerpCreateMarket","PerpDeactivatePosition","PerpEditMarket","PerpForceClosePosition","PerpLiqBaseOrPositivePnl","PerpLiqForceCancelOrders","PerpLiqNegativePnlOrBankruptcy","PerpLiqNegativePnlOrBankruptcyV2","PerpPlaceOrder","PerpSettleFees","PerpSettlePnl","PerpUpdateFunding","PostOnly","Serum3CancelAllOrders","Serum3CancelOrder","Serum3CloseOpenOrders","Serum3CreateOpenOrders","Serum3DeregisterMarket","Serum3EditMarket","Serum3LiqForceCancelOrders","Serum3OrderType","Serum3PlaceOrder","Serum3RegisterMarket","Serum3SelfTradeBehavior","Serum3SettleFunds","Serum3SettleFundsV2","Serum3SettleFundsV2Extra","Serum3Side","StubOracleClose","StubOracleCreate","StubOracleSet","Swap","TokenAddBank","TokenConditionalSwapCancel","TokenConditionalSwapCreate","TokenConditionalSwapStart","TokenConditionalSwapTrigger","TokenDeposit","TokenDepositIntoExisting","TokenDeregister","TokenEdit","TokenForceCloseBorrowsWithToken","TokenLiqBankruptcy","TokenLiqWithToken","TokenRegister","TokenRegisterTrustless","TokenUpdateIndexAndRate","TokenWithdraw","Unknown","__clone_box","__clone_box","__clone_box","__clone_box","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account","account_a","account_a","account_b","account_b","address_lookup_table","address_lookup_table","adjustment_factor","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","admin","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","asks","associated_token_program","authority","authority","authority","authority","authority","authority","authority","authority","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank","bank","bank","bank","bank","bank","bank","bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_bank","base_oracle","base_oracle","base_vault","base_vault","base_vault","base_vault","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","bids","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buy_bank","buy_bank","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","compute_budget","creator","dao_account","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","destination","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","dummy","dust_vault","eq","event_heap","event_heap","event_heap","event_queue","event_queue","event_queue","event_queue","existing_bank","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","exit","fallback_oracle","fallback_oracle","fallback_oracle","fees_bank","fees_oracle","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","group","index_reservation","index_reservation","index_reservation","index_reservation","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","input_mint","instructions","instructions","instructions","instructions","insurance_bank","insurance_bank_vault","insurance_mint","insurance_oracle","insurance_vault","insurance_vault","insurance_vault","insurance_vault","insurance_vault","insurance_vault","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","jupiter_mainnet_3","jupiter_mainnet_4","jupiter_mainnet_6","liab_mint_info","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor_authority","liqor_authority","liqor_owner","liqor_owner","liqor_owner","liqor_owner","liqor_owner","liqor_owner","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","market","market","market_asks","market_asks","market_asks","market_asks","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_base_vault","market_bids","market_bids","market_bids","market_bids","market_event_queue","market_event_queue","market_event_queue","market_event_queue","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_quote_vault","market_request_queue","market_request_queue","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","market_vault_signer","max_rate","mint","mint","mint","mint","mint_info","mint_info","mint_info","mint_info","mint_info","mint_info","mngo_bank","mngo_oracle","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_market_external","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","openbook_v2_program","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","oracle","output_mint","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer","payer_bank","payer_bank","payer_bank","payer_oracle","payer_oracle","payer_oracle","payer_vault","payer_vault","payer_vault","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","perp_market","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_bank","quote_oracle","quote_oracle","quote_vault","quote_vault","quote_vault","quote_vault","quote_vault","rate0","rate1","rent","rent","rent","rent","rent","rent","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","sell_bank","sell_bank","serialize","serialize","serialize","serialize","serialize","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_market_external","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","serum_program","settle_bank","settle_bank","settle_bank","settle_bank","settle_bank","settle_oracle","settle_oracle","settle_oracle","settle_oracle","settle_oracle","settle_vault","settle_vault","settle_vault","settler","settler_owner","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","sol_destination","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","system_program","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_infos","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_account_metas","to_owned","to_owned","to_owned","to_owned","token_account","token_account","token_account","token_account","token_account","token_authority","token_authority","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","token_program","transfer_ctx","transfer_ctx","transfer_ctx","transfer_ctx","transfer_ctx","transfer_ctx","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_accounts","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","util0","util1","v1","v2","vault","vault","vault","vault","vault","vault","vault","vault","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","AccountInfoRef","AccountInfoRefMut","AccountReader","KeyedAccount","KeyedAccountReader","KeyedAccountSharedData","LoadMutZeroCopy","LoadMutZeroCopyRef","LoadZeroCopy","LoadZeroCopyRef","__clone_box","__clone_box","account","az","az","az","az","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_slice","borrow_slice","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone_into","clone_into","data","data","data","data","data","data","data","data","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","from","from","from","from","init","init","init","init","into","into","into","into","key","key","key","key","key","key","key","key","key","load","load","load","load","load","load","load_fully_unchecked","load_fully_unchecked","load_fully_unchecked","load_fully_unchecked","load_fully_unchecked","load_fully_unchecked","load_mut","load_mut","load_mut","load_mut_fully_unchecked","load_mut_fully_unchecked","load_mut_fully_unchecked","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","new","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","addresses","contains","cpi_extend","AccountIsFrozen","BankBorrowLimitReached","BankDepositLimit","BankNetBorrowsLimitReached","BeingLiquidated","CannotSettleWithSelf","Contextable","DelegateWithdrawMustClosePosition","DelegateWithdrawOnlyToOwnerAta","DelegateWithdrawSmall","DepositLimit","DepositsIntoLiquidatingMustRecover","GroupIsHalted","HasLiquidatablePerpBasePosition","HasLiquidatablePositivePerpPnl","HasLiquidatableTokenPosition","HasOpenOrUnsettledSerum3Orders","HasOpenPerpOrders","HasOpenPerpTakerFills","HealthAccountBankNotWritable","HealthMustBeNegative","HealthMustBePositive","HealthMustBePositiveOrIncrease","HealthRegionBadInnerInstruction","InitAssetWeightCantBeNegative","InsufficentBankVaultFunds","InvalidBank","InvalidCLMMOracle","InvalidFeedForCLMMOracle","InvalidFlashLoanTargetCpiProgram","InvalidHealthAccountCount","IsAnchorErrorWithCode","IsBankrupt","IsNotBankrupt","IxIsDisabled","MangoError","MarketInReduceOnlyMode","MathError","MaxSettleAmountMustBeGreaterThanZero","MissingFeedForCLMMOracle","NoFreePerpPositionIndex","NoFreeSerum3OpenOrdersIndex","NoFreeTokenPositionIndex","NoLiquidatablePerpBasePosition","NotImplementedError","OracleConfidence","OracleStale","PerpHasBaseLots","PerpOrderIdNotFound","PerpPositionDoesNotExist","ProfitabilityMismatch","Serum3OpenOrdersExistAlready","Serum3PriceBandExceeded","SettlementAmountMustBePositive","SomeError","TokenAssetLiquidationDisabled","TokenConditionalSwapAlreadyStarted","TokenConditionalSwapCantPayIncentive","TokenConditionalSwapExpired","TokenConditionalSwapIndexIdMismatch","TokenConditionalSwapMinBuyTokenNotReached","TokenConditionalSwapNotSet","TokenConditionalSwapNotStarted","TokenConditionalSwapPriceNotInRange","TokenConditionalSwapTakerPriceTooLow","TokenConditionalSwapTooSmallForStartIncentive","TokenConditionalSwapTypeNotStartable","TokenInForceClose","TokenInReduceOnlyMode","TokenPositionDoesNotExist","UnexpectedOracle","UnknownOracleType","WouldSelfTrade","__clone_box","az","borrow","borrow_mut","cast_from","checked_as","checked_cast_from","clone","clone_into","context","deref","deref_mut","drop","error_code","error_msg","error_msg_typed","fmt","fmt","from","init","into","is_anchor_error_with_code","is_oracle_error","lossless_try_into","lossless_try_into","lossy_into","lossy_into","name","overflowing_as","overflowing_cast_from","require_msg","require_msg_typed","saturating_as","saturating_cast_from","to_owned","to_string","try_from","try_into","type_id","unwrapped_as","unwrapped_cast_from","vzip","with_context","wrapping_as","wrapping_cast_from","Equity","MangoAccountData","PerpEquity","TokenEquity","az","az","az","az","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","data","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","drop","drop","drop","drop","equity","fmt","fmt","fmt","from","from","from","from","init","init","init","init","init_health","into","into","into","into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","maint_health","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","perp_market_index","perps","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","serialize","serialize","serialize","serialize","token_index","tokens","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","value","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","AccountRetriever","FixedOrderAccountRetriever","HealthCache","HealthType","Init","LiquidationEnd","Maint","PerpInfo","Prices","ScannedBanksAndOracles","ScanningAccountRetriever","Serum3Info","TokenBalance","TokenInfo","TokenMaxReserved","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","adjust_token_balance","ais","allow_asset_liquidation","asks_base_lots","asset","asset_weighted_price","assets_and_liabs","az","az","az","az","az","az","az","az","az","az","az","balance_spot","bank_and_oracle","bank_and_oracle","bank_and_oracle","banks_mut_and_oracles","banks_mut_and_oracles","base_info_index","base_lot_size","base_lots","base_prices","begin_fallback_oracles","begin_perp","begin_serum3","bids_base_lots","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","compute_health","compute_health_from_fixed_accounts","default","default","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_variant","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","effective_token_balances","eq","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","has_liq_spot_assets","has_liq_spot_borrows","has_open_fills","has_open_orders","has_perp_base_positions","has_perp_negative_pnl_no_base","has_perp_open_fills","has_perp_open_orders","has_perp_positive_pnl_no_base","has_phase1_liquidatable","has_phase2_liquidatable","has_phase3_liquidatable","has_possible_spot_liquidations","has_serum3_open_orders_funds","has_zero_funds","health","health_assets_and_liabs_stable_assets","health_assets_and_liabs_stable_liabs","health_contribution","health_ratio","health_unsettled_pnl","in_phase1_liquidation","in_phase2_liquidation","in_phase3_liquidation","init","init","init","init","init","init","init","init","init","init","init","init_asset_weight","init_base_asset_weight","init_base_liab_weight","init_liab_weight","init_overall_asset_weight","init_scaled_asset_weight","init_scaled_liab_weight","into","into","into","into","into","into","into","into","into","into","into","into_banks_and_oracles","is_liquidatable","leverage","liab","liab_weighted_price","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","maint_asset_weight","maint_base_asset_weight","maint_base_liab_weight","maint_liab_weight","maint_overall_asset_weight","market_index","max_borrow_for_health_ratio","max_perp_for_health_ratio","max_serum_reserved","max_swap_source_for_health_fn","max_swap_source_for_health_ratio_ignoring_limits","max_swap_source_for_health_ratio_with_limits","n_banks","n_perps","new","new_fixed_order_account_retriever","new_health_cache","new_health_cache_skipping_bad_oracles","new_single_price","new_with_staleness","oracle","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","perp_info","perp_market_and_oracle_price","perp_market_and_oracle_price","perp_market_and_oracle_price","perp_market_index","perp_max_settle","prices","quote","quote_info_index","recompute_perp_info","recompute_serum3_info","require_after_phase1_liquidation","require_after_phase2_liquidation","reserved_base","reserved_base_as_quote_lowest_ask","reserved_quote","reserved_quote_as_base_highest_bid","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","scanned_bank_and_oracle","scanned_bank_and_oracle","scanned_perp_market_and_oracle","scanned_serum_oo","serialize","serum_oo","serum_oo","serum_oo","settle_token_index","sol_oracle_index","spot_amount_given_for_health_zero","spot_amount_taken_for_health_zero","spot_and_perp","stable","staleness_slot","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","token_index","token_info","token_info_index","token_infos","total_serum3_potential","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unweighted_health_unsettled_pnl","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","usdc_oracle_index","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","ClampToInt","LowPrecisionDivision","checked_div_30bit_precision","checked_div_f64_precision","clamp_to_i64","clamp_to_u64","AccountBuybackFeesWithMngo","AccountClose","AccountCreate","AccountCreateV2","AccountEdit","AccountExpand","AccountExpandV2","AccountSizeMigration","AccountToggleFreeze","AdminPerpWithdrawFees","AdminTokenWithdrawFees","AltExtend","AltSet","Benchmark","ComputeAccountData","FlashLoanBegin","FlashLoanEnd","FlashLoanEndV2","FlashLoanSwapBegin","GroupClose","GroupCreate","GroupEdit","GroupWithdrawInsuranceFund","HealthRegionBegin","HealthRegionEnd","IxGateSet","LiqTokenBankruptcy","LiqTokenWithToken","OpenbookV2CancelAllOrders","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2PlaceOrder","OpenbookV2PlaceTakerOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","PerpCancelAllOrders","PerpCancelAllOrdersBySide","PerpCancelOrder","PerpCancelOrderByClientOrderId","PerpCloseMarket","PerpConsumeEvents","PerpCreateMarket","PerpDeactivatePosition","PerpEditMarket","PerpForceClosePosition","PerpLiqBaseOrPositivePnl","PerpLiqForceCancelOrders","PerpLiqNegativePnlOrBankruptcy","PerpLiqNegativePnlOrBankruptcyV2","PerpPlaceOrder","PerpPlaceOrderPegged","PerpPlaceOrderPeggedV2","PerpPlaceOrderV2","PerpSettleFees","PerpSettlePnl","PerpUpdateFunding","Serum3CancelAllOrders","Serum3CancelOrder","Serum3CancelOrderByClientOrderId","Serum3CloseOpenOrders","Serum3CreateOpenOrders","Serum3DeregisterMarket","Serum3EditMarket","Serum3LiqForceCancelOrders","Serum3PlaceOrder","Serum3PlaceOrderV2","Serum3RegisterMarket","Serum3SettleFunds","Serum3SettleFundsV2","StubOracleClose","StubOracleCreate","StubOracleSet","StubOracleSetTest","TokenAddBank","TokenConditionalSwapCancel","TokenConditionalSwapCreate","TokenConditionalSwapCreateLinearAuction","TokenConditionalSwapCreatePremiumAuction","TokenConditionalSwapCreateV2","TokenConditionalSwapStart","TokenConditionalSwapTrigger","TokenConditionalSwapTriggerV2","TokenDeposit","TokenDepositIntoExisting","TokenDeregister","TokenEdit","TokenForceCloseBorrowsWithToken","TokenLiqBankruptcy","TokenLiqWithToken","TokenRegister","TokenRegisterTrustless","TokenUpdateIndexAndRate","TokenWithdraw","account_num","account_num","account_num","admin_opt","allow_borrow","allow_creating_borrows","allow_creating_borrows","allow_creating_borrows","allow_creating_borrows","allow_creating_deposits","allow_creating_deposits","allow_creating_deposits","allow_creating_deposits","allowed_fast_listings_per_interval_opt","amount","amount","amount","amount","asset_token_index","asset_token_index","asset_token_index","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank_num","base_decimals","base_decimals_opt","base_liquidation_fee","base_liquidation_fee_opt","base_lot_size","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_weight_scale_start_quote","borrow_weight_scale_start_quote_opt","buyback_fees_bonus_factor_opt","buyback_fees_expiry_interval_opt","buyback_fees_opt","buyback_fees_swap_mango_account_opt","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","client_order_id","delegate_opt","deposit_limit","deposit_limit_opt","deposit_limit_quote_opt","deposit_weight_scale_start_quote","deposit_weight_scale_start_quote_opt","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deviation","disable_asset_liquidation","disable_asset_liquidation_opt","display_price_style","display_price_style","display_price_style","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","duration_seconds","duration_seconds","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","expiry_timestamp","fast_listing_admin_opt","fee_penalty","fee_penalty_opt","fees_to_dao","fees_to_dao","flash_loan_swap_fee_rate","flash_loan_swap_fee_rate_opt","flash_loan_type","flash_loan_type","force_close","force_close_opt","force_close_opt","force_close_opt","force_close_opt","freeze","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","group_insurance_fund","group_insurance_fund","group_insurance_fund_opt","group_insurance_fund_opt","group_num","impact_quantity","impact_quantity_opt","index","index","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init_asset_weight","init_asset_weight_opt","init_base_asset_weight","init_base_asset_weight_opt","init_base_liab_weight","init_base_liab_weight_opt","init_liab_weight","init_liab_weight_opt","init_overall_asset_weight","init_overall_asset_weight_opt","intention","intention","interest_curve_scaling","interest_curve_scaling_opt","interest_rate_params","interest_rate_params_opt","interest_target_utilization","interest_target_utilization_opt","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","ix_gate","last_update_slot","liab_token_index","liab_token_index","liab_token_index","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit","limit_price","limit_price","limit_price","limit_price","liquidation_fee","liquidation_fee_opt","loan_amount","loan_amounts","loan_fee_rate","loan_fee_rate_opt","loan_origination_fee_rate","loan_origination_fee_rate_opt","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","maint_asset_weight","maint_asset_weight_opt","maint_base_asset_weight","maint_base_asset_weight_opt","maint_base_liab_weight","maint_base_liab_weight_opt","maint_liab_weight","maint_liab_weight_opt","maint_overall_asset_weight","maint_overall_asset_weight_opt","maint_weight_shift_abort","maint_weight_shift_asset_target_opt","maint_weight_shift_end_opt","maint_weight_shift_liab_target_opt","maint_weight_shift_start_opt","maker_fee","maker_fee_opt","market_index","market_index","max_base_lots","max_base_lots","max_base_lots","max_base_lots","max_base_qty","max_base_qty","max_base_qty","max_base_qty","max_base_transfer","max_buy","max_buy","max_buy","max_buy","max_buy_token_to_liqee","max_buy_token_to_liqee","max_buyback_usd","max_funding","max_funding_opt","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_liab_transfer","max_native_quote_qty_including_fees","max_native_quote_qty_including_fees","max_native_quote_qty_including_fees","max_native_quote_qty_including_fees","max_oracle_staleness_slots","max_oracle_staleness_slots","max_pnl_transfer","max_price_premium_rate","max_quote_lots","max_quote_lots","max_quote_lots","max_quote_lots","max_sell","max_sell","max_sell","max_sell","max_sell_token_to_liqor","max_sell_token_to_liqor","max_settle_amount","min_buy_token","min_funding","min_funding_opt","min_taker_price","min_vault_to_deposits_ratio","min_vault_to_deposits_ratio_opt","mngo_token_index_opt","name","name","name","name","name","name","name","name_opt","name_opt","name_opt","name_opt","net_borrow_limit_per_window_quote","net_borrow_limit_per_window_quote_opt","net_borrow_limit_window_size_ts","net_borrow_limit_window_size_ts_opt","new_addresses","num_loans","oracle_config","oracle_config","oracle_config_opt","oracle_config_opt","oracle_opt","oracle_opt","oracle_price_band","oracle_price_band_opt","order_id","order_id","order_id","order_type","order_type","order_type","order_type","order_type","order_type","order_type","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","peg_limit","peg_limit","perp_count","perp_count","perp_count","perp_count","perp_market_index","perp_oo_count","perp_oo_count","perp_oo_count","perp_oo_count","platform_liquidation_fee","platform_liquidation_fee","platform_liquidation_fee_opt","platform_liquidation_fee_opt","positive_pnl_liquidation_fee","positive_pnl_liquidation_fee_opt","price","price","price","price_end","price_lots","price_lots","price_lower_limit","price_lower_limit","price_lower_limit","price_offset_lots","price_offset_lots","price_premium_rate","price_premium_rate","price_start","price_upper_limit","price_upper_limit","price_upper_limit","quote_lot_size","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only_opt","reduce_only_opt","reduce_only_opt","reduce_only_opt","reset_net_borrow_limit","reset_stable_price","reset_stable_price","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","security_admin_opt","self_trade_behavior","self_trade_behavior","self_trade_behavior","self_trade_behavior","self_trade_behavior","self_trade_behavior","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serum3_count","serum3_count","serum3_count","serum3_count","set_fallback_oracle","settle_fee_amount_threshold","settle_fee_amount_threshold_opt","settle_fee_flat","settle_fee_flat_opt","settle_fee_fraction_low_health","settle_fee_fraction_low_health_opt","settle_pnl_limit_factor","settle_pnl_limit_factor_opt","settle_pnl_limit_window_size_ts","settle_pnl_limit_window_size_ts_opt","settle_token_index","side","side","side","side","side","side","side","side","side","side","side_option","stable_price_delay_growth_limit","stable_price_delay_growth_limit_opt","stable_price_delay_growth_limit_opt","stable_price_delay_interval_seconds","stable_price_delay_interval_seconds_opt","stable_price_delay_interval_seconds_opt","stable_price_growth_limit","stable_price_growth_limit_opt","stable_price_growth_limit_opt","start_timestamp","taker_fee","taker_fee_opt","temporary_delegate_expiry_opt","temporary_delegate_opt","testing","testing_opt","token_conditional_swap_count","token_conditional_swap_count","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_index","token_conditional_swap_index","token_conditional_swap_index","token_conditional_swap_index","token_conditional_swap_maker_fee_rate","token_conditional_swap_maker_fee_rate_opt","token_conditional_swap_taker_fee_rate","token_conditional_swap_taker_fee_rate_opt","token_count","token_count","token_count","token_count","token_index","token_index","token_index","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","version","version_opt","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","zero_util_rate","zero_util_rate_opt","AccountBuybackFeesWithMngoLog","DeactivatePerpPositionLog","DeactivateTokenPositionLog","DepositLog","FillLog","FillLogV2","FillLogV3","FilledPerpOrderLog","FlashLoanLog","FlashLoanLogV2","FlashLoanLogV3","FlashLoanTokenDetail","FlashLoanTokenDetailV2","FlashLoanTokenDetailV3","LiqTokenBankruptcy","LiqTokenWithToken","LoanOriginationFeeInstruction","PerpBalanceLog","PerpForceClosePositionLog","PerpLiqBankruptcyLog","PerpLiqBaseOrPositivePnlLog","PerpLiqBaseOrPositivePnlLogV2","PerpLiqNegativePnlOrBankruptcyLog","PerpMarketMetaDataLog","PerpSettleFeesLog","PerpSettlePnlLog","PerpTakerTradeLog","PerpUpdateFundingLog","PerpUpdateFundingLogV2","Serum3LiqForceCancelOrders","Serum3OpenOrdersBalanceLog","Serum3OpenOrdersBalanceLogV2","Serum3PlaceOrder","Serum3RegisterMarketLog","Serum3SettleFunds","TokenBalanceLog","TokenConditionalSwapCancelLog","TokenConditionalSwapCreateLog","TokenConditionalSwapCreateLogV2","TokenConditionalSwapCreateLogV3","TokenConditionalSwapStartLog","TokenConditionalSwapTrigger","TokenConditionalSwapTriggerLog","TokenConditionalSwapTriggerLogV2","TokenConditionalSwapTriggerLogV3","TokenForceCloseBorrowsWithTokenLog","TokenForceCloseBorrowsWithTokenLogV2","TokenLiqBankruptcyLog","TokenLiqWithTokenLog","TokenLiqWithTokenLogV2","TokenMetaDataLog","TokenMetaDataLogV2","TokenWithdraw","Unknown","UpdateIndexLog","UpdateRateLog","UpdateRateLogV2","WithdrawLoanLog","WithdrawLoanOriginationFeeLog","WithdrawLog","__clone_box","account_a","account_b","allow_creating_borrows","allow_creating_borrows","allow_creating_borrows","allow_creating_deposits","allow_creating_deposits","allow_creating_deposits","approved_amount","approved_amount","asset_liquidation_fee","asset_liquidation_fee","asset_price","asset_price","asset_price","asset_price","asset_token_index","asset_token_index","asset_token_index","asset_token_index","asset_transfer","asset_transfer","asset_transfer_from_liqee","asset_transfer_from_liqee","asset_transfer_to_liqor","asset_transfer_to_liqor","avg_utilization","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bankruptcy","bankruptcy","base_decimals","base_free","base_free","base_lot_size","base_position","base_token_index","base_token_index","base_token_index","base_total","base_total","base_transfer","base_transfer","base_transfer_liqee","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_index","borrow_index","borrow_index","borrow_index","borrow_index","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_rate","buy_amount","buy_amount","buy_amount","buy_token_index","buy_token_index","buy_token_index","buy_token_index","buy_token_index","buy_token_index","buy_token_price","buy_token_price","buy_token_price","buyback_fees","buyback_mngo","caller","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","change_amount","change_amount","change_amount","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone_into","closed","closed","closed","collected_fees","cumulative_borrow_interest","cumulative_deposit_interest","cumulative_long_funding","cumulative_short_funding","curve_scaling","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","data","deposit_fee","deposit_index","deposit_index","deposit_index","deposit_index","deposit_index","deposit_rate","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_variant","display_price_style","display_price_style","display_price_style","display_price_style","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","duration_seconds","emit_perp_balances","emit_stack","ending_liab_deposit_index","ending_long_funding","ending_short_funding","eq","expiry_timestamp","expiry_timestamp","expiry_timestamp","fallback_oracle","fee","fee_factor","fee_factor","fee_penalty","fees_accrued","fees_accrued","fees_settled","fees_settled","flash_loan_type","flash_loan_type","flash_loan_type","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","id","id","id","id","incentive_amount","incentive_token_index","indexed_position","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","initial_liab_native","instantaneous_funding_rate","instantaneous_funding_rate","instruction","instruction","insurance_token_index","insurance_transfer","insurance_transfer","intention","intention","intention","intention","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","liab_price","liab_price","liab_price","liab_price","liab_price","liab_token_index","liab_token_index","liab_token_index","liab_token_index","liab_token_index","liab_transfer","liab_transfer","liab_transfer","liab_transfer","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","liqor","loan","loan","loan","loan_amount","loan_fee_rate","loan_origination_fee","loan_origination_fee","loan_origination_fee","loan_origination_fee","loan_origination_fee","long_funding","long_funding","long_funding","long_settled_funding","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","maker","maker","maker","maker_client_order_id","maker_client_order_id","maker_closed_pnl","maker_fee","maker_fee","maker_fee","maker_fee","maker_fee","maker_fee","maker_fee_rate","maker_fee_rate","maker_fee_rate","maker_order_id","maker_out","maker_out","maker_out","maker_slot","maker_slot","maker_slot","maker_timestamp","maker_timestamp","maker_timestamp","maker_volume","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account","mango_account_a","mango_account_b","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","mango_group","market_index","market_index","market_index","market_index","market_index","market_index","market_index","market_index","market_index","max_buy","max_buy","max_buy","max_rate","max_rate","max_sell","max_sell","max_sell","mint","mint","mint_decimals","mint_decimals","mint_info","mint_info","mngo_buyback_price","open_interest","open_interest","oracle","oracle","oracle","oracle_confidence","oracle_price","oracle_slot","oracle_slot","oracle_type","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","perp_market","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_market_index","perp_spot_transfers","pnl_settle_limit_transfer","pnl_settle_limit_transfer","pnl_transfer","pnl_transfer","price","price","price","price","price","price","price","price","price","price","price","price","price","price","price","price_lower_limit","price_lower_limit","price_lower_limit","price_premium_rate","price_premium_rate","price_premium_rate","price_upper_limit","price_upper_limit","price_upper_limit","quantity","quantity","quantity","quantity","quantity","quote_free","quote_free","quote_lot_size","quote_platform_fee","quote_position","quote_token_index","quote_token_index","quote_token_index","quote_total","quote_total","quote_transfer","quote_transfer","quote_transfer_liqee","quote_transfer_liqor","rate0","rate0","rate1","rate1","referrer_rebates_accrued","referrer_rebates_accrued","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","sell_amount","sell_amount","sell_amount","sell_token_index","sell_token_index","sell_token_index","sell_token_index","sell_token_index","sell_token_index","sell_token_price","sell_token_price","sell_token_price","seq_num","seq_num","seq_num","seq_num","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serum_market","serum_program","serum_program_external","settlement","settlement","settlement","settler","short_funding","short_funding","short_funding","short_settled_funding","signer","signer","socialized_loss","socialized_loss","stable_price","stable_price","stable_price","start_timestamp","start_timestamp","starting_liab_deposit_index","starting_long_funding","starting_short_funding","swap_fee","taker","taker","taker","taker_client_order_id","taker_client_order_id","taker_client_order_id","taker_closed_pnl","taker_fee","taker_fee","taker_fee","taker_fee","taker_fee","taker_fee","taker_fee_rate","taker_fee_rate","taker_fee_rate","taker_fees_paid","taker_order_id","taker_side","taker_side","taker_side","taker_side","taker_volume","target_utilization","tcs_type","tcs_type","timestamp","timestamp","timestamp","to_owned","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_id","token_conditional_swap_id","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_index","token_loan_details","token_loan_details","token_loan_details","total_base_lots_decremented","total_base_lots_taken","total_borrows","total_deposits","total_quote_lots_decremented","total_quote_lots_taken","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","util0","util1","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","account_buyback_fees_with_mngo","account_close","account_create","account_create_v2","account_edit","account_expand","account_expand_v2","account_size_migration","account_toggle_freeze","admin_perp_withdraw_fees","admin_token_withdraw_fees","alt_extend","alt_set","benchmark","compute_account_data","flash_loan_begin","flash_loan_end","flash_loan_end_v2","flash_loan_swap_begin","group_close","group_create","group_edit","group_withdraw_insurance_fund","health_region_begin","health_region_end","ix_gate_set","liq_token_bankruptcy","liq_token_with_token","openbook_v2_cancel_all_orders","openbook_v2_cancel_order","openbook_v2_close_open_orders","openbook_v2_create_open_orders","openbook_v2_deregister_market","openbook_v2_edit_market","openbook_v2_liq_force_cancel_orders","openbook_v2_place_order","openbook_v2_place_taker_order","openbook_v2_register_market","openbook_v2_settle_funds","perp_cancel_all_orders","perp_cancel_all_orders_by_side","perp_cancel_order","perp_cancel_order_by_client_order_id","perp_close_market","perp_consume_events","perp_create_market","perp_deactivate_position","perp_edit_market","perp_force_close_position","perp_liq_base_or_positive_pnl","perp_liq_force_cancel_orders","perp_liq_negative_pnl_or_bankruptcy","perp_liq_negative_pnl_or_bankruptcy_v2","perp_place_order","perp_place_order_pegged","perp_place_order_pegged_v2","perp_place_order_v2","perp_settle_fees","perp_settle_pnl","perp_update_funding","serum3_cancel_all_orders","serum3_cancel_order","serum3_cancel_order_by_client_order_id","serum3_close_open_orders","serum3_create_open_orders","serum3_deregister_market","serum3_edit_market","serum3_liq_force_cancel_orders","serum3_place_order","serum3_place_order_v2","serum3_register_market","serum3_settle_funds","serum3_settle_funds_v2","stub_oracle_close","stub_oracle_create","stub_oracle_set","stub_oracle_set_test","token_add_bank","token_conditional_swap_cancel","token_conditional_swap_create","token_conditional_swap_create_linear_auction","token_conditional_swap_create_premium_auction","token_conditional_swap_create_v2","token_conditional_swap_start","token_conditional_swap_trigger","token_conditional_swap_trigger_v2","token_deposit","token_deposit_into_existing","token_deregister","token_edit","token_force_close_borrows_with_token","token_liq_bankruptcy","token_liq_with_token","token_register","token_register_trustless","token_update_index_and_rate","token_withdraw","MangoV4","__clone_box","az","borrow","borrow_mut","cast_from","checked_as","checked_cast_from","clone","clone_into","deref","deref_mut","drop","from","id","init","into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","overflowing_as","overflowing_cast_from","saturating_as","saturating_cast_from","to_owned","try_from","try_into","type_id","unwrapped_as","unwrapped_cast_from","vzip","wrapping_as","wrapping_cast_from","CancelOrder","CloseOpenOrders","InitOpenOrders","OpenOrdersAmounts","OpenOrdersSlim","OrderBookStateHeader","PlaceOrder","SettleFunds","__clone_box","account_flags","asks","asks","az","az","az","az","az","az","az","base_vault","base_vault","bids","bids","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call","call","call","call","cancel_all","cancel_one","cancel_one_by_client_order_id","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone_into","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","drop","drop","event_queue","event_queue","fmt","from","from","from","from","from","from","from","from_oo","has_serum_header","init","init","init","init","init","init","init","into","into","into","into","into","into","into","is_valid_bit_pattern","load_asks_mut","load_bids_mut","load_market_state","load_open_orders","load_open_orders_bytes","load_open_orders_ref","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","market","market","market","market","market","native_base_free","native_base_free","native_base_reserved","native_base_reserved","native_base_total","native_base_total","native_quote_free","native_quote_free","native_quote_reserved","native_quote_reserved","native_quote_total","native_quote_total","native_rebates","native_rebates","open_orders","open_orders","open_orders","open_orders","open_orders","open_orders_authority","open_orders_authority","open_orders_authority","open_orders_authority","order_payer_token_account","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","program","program","program","program","program","pubkey_from_u64_array","quote_vault","quote_vault","rebates_quote_wallet","remove_slop_mut","rent","request_queue","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","sol_destination","to_owned","token_program","token_program","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","user_authority","user_base_wallet","user_quote_wallet","vault_signer","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","AbortTransaction","AccountBuybackFeesWithMngo","AccountClose","AccountCreate","AccountEdit","AccountExpand","AccountSizeMigration","AccountToggleFreeze","AdminPerpWithdrawFees","AdminTokenWithdrawFees","AltExtend","AltSet","AnyEvent","AnyNode","Ask","AskFixed","AskOraclePegged","Asks","Bank","BecameNotLiquidatable","Bid","BidFixed","BidOraclePegged","Bids","BookSide","BookSideIter","BookSideIterItem","BookSideOrderHandle","BookSideOrderTree","BuyTokenPerSellToken","CancelProvide","CheckLiquidatable","DAY","DAY_I80F48","DecrementTake","DerefOrBorrow","DerefOrBorrowMut","DynamicAccount","DynamicHeader","EventQueue","EventQueueHeader","EventType","FEE_BUYBACK_QUOTE_TOKEN_INDEX","FREE_ORDER_SLOT","Fill","FillEvent","Fixed","Fixed","FixedPremium","FlashLoan","FreeNode","FreeNode","Group","GroupClose","GroupCreate","GroupWithdrawInsuranceFund","HOUR","HealthRegion","INSURANCE_TOKEN_INDEX","ImmediateOrCancel","ImmediateOrCancel","InnerNode","InnerNode","Invalid","Item","IxGate","LastFreeNode","LeafNode","LeafNode","Limit","Limit","LinearAuction","Liquidatable","Liquidate","MAX_BANKS","MAX_NUM_EVENTS","MAX_ORDERTREE_NODES","MangoAccount","MangoAccountDynamicHeader","MangoAccountFixed","MangoAccountLoadedRef","MangoAccountLoadedRefCell","MangoAccountLoadedRefCellMut","MangoAccountLoader","MangoAccountPdaSeeds","MangoAccountRef","MangoAccountRefMut","MangoAccountValue","Market","Market","MintInfo","NodeHandle","NodeTag","NotLiquidatable","ONE_BPS","ORCA_WHIRLPOOL_DISCRIMINATOR","ORCA_WHIRLPOOL_LEN","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2Market","OpenbookV2MarketIndex","OpenbookV2MarketIndexReservation","OpenbookV2PlaceOrder","OpenbookV2PlaceTakeOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","OracleAccountInfos","OracleConfig","OracleConfigParams","OraclePegged","OraclePegged","OracleState","OracleType","OrcaCLMM","Order","OrderParams","OrderState","OrderTreeIter","OrderTreeNodes","OrderTreeRoot","OrderTreeType","Orderbook","Out","OutEvent","PERP_SETTLE_TOKEN_INDEX","PerpCancelAllOrders","PerpCancelAllOrdersBySide","PerpCancelOrder","PerpCancelOrderByClientOrderId","PerpCloseMarket","PerpConsumeEvents","PerpCreateMarket","PerpDeactivatePosition","PerpForceClosePosition","PerpLiqBaseOrPositivePnl","PerpLiqForceCancelOrders","PerpLiqNegativePnlOrBankruptcy","PerpMarket","PerpMarketIndex","PerpOpenOrder","PerpPlaceOrder","PerpPosition","PerpSettleFees","PerpSettlePnl","PerpUpdateFunding","PlaceOrderType","PostOnly","PostOnly","PostOnlySlide","PostOnlySlide","PostOrderType","PremiumAuction","Pyth","QUOTE_DECIMALS","QUOTE_NATIVE_TO_UI","QUOTE_TOKEN_INDEX","QueueHeader","SOL_DECIMALS","SelfTradeBehavior","SellTokenPerBuyToken","Serum3CancelAllOrders","Serum3CancelOrder","Serum3CloseOpenOrders","Serum3CreateOpenOrders","Serum3DeregisterMarket","Serum3EditMarket","Serum3LiqForceCancelOrders","Serum3Market","Serum3MarketIndex","Serum3MarketIndexReservation","Serum3Orders","Serum3PlaceOrder","Serum3PlaceOrderV2","Serum3RegisterMarket","Serum3SettleFunds","Side","SideAndOrderTree","Skipped","StablePriceModel","StopLoss","Stub","StubOracle","StubOracleClose","StubOracleCreate","StubOracleSet","SwitchboardV1","SwitchboardV2","TCS_START_INCENTIVE","TakeProfit","TokenAddBank","TokenConditionalSwap","TokenConditionalSwapCancel","TokenConditionalSwapCreate","TokenConditionalSwapCreateLinearAuction","TokenConditionalSwapCreatePremiumAuction","TokenConditionalSwapDisplayPriceStyle","TokenConditionalSwapIntention","TokenConditionalSwapStart","TokenConditionalSwapTrigger","TokenConditionalSwapType","TokenDeposit","TokenDeregister","TokenForceCloseBorrowsWithToken","TokenIndex","TokenLiqBankruptcy","TokenLiqWithToken","TokenPosition","TokenRegister","TokenRegisterTrustless","TokenUpdateIndexAndRate","TokenWithdraw","TransferResult","Uninitialized","Unknown","Valid","WhirlpoolState","WithdrawResult","YEAR_I80F48","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","account_num","account_num","account_num_bytes","account_seeds","account_seeds","account_size","accrue_buyback_fees","accrued_liquidation_fees","active_perp_positions","active_serum3_orders","active_token_conditional_swaps","active_token_positions","add_perp_order","add_taker_trade","address_lookup_tables","adjust_maker_lots","adjustment_factor","admin","all_perp_orders","all_perp_positions","all_serum3_orders","all_token_conditional_swaps","all_token_positions","allow_creating_borrows","allow_creating_borrows","allow_creating_deposits","allow_creating_deposits","allowed_fast_listings_per_interval","allows_asset_liquidation","apply_pnl_settle_limit","are_borrows_reduce_only","are_deposits_reduce_only","as_inner","as_inner_mut","as_leaf","as_leaf_mut","as_ref","as_ref","asks","asks","asks_base_lots","available_settle_limit","avg_entry_price","avg_entry_price_per_base_lot","avg_utilization","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank_num","bank_rate_last_updated","bank_seeds","bank_seeds","banks","banks","base_borrows_without_fee","base_decimals","base_liquidation_fee","base_lot_size","base_position_lots","base_position_lots","base_position_native","base_quote_change","base_token_index","base_token_index","base_token_index","being_liquidated","being_liquidated","being_liquidated","best_price","bids","bids","bids_base_lots","blocked1","bookside","bookside_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_index","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_weight_scale_start_quote","bought","break_even_price","buf","bump","bump","bump","bump","bump","bump","bump","bump_bytes","bump_index","buy_token_index","buyback_fees","buyback_fees","buyback_fees_accrued","buyback_fees_accrued_current","buyback_fees_accrued_current","buyback_fees_accrued_previous","buyback_fees_accrued_previous","buyback_fees_expiry_interval","buyback_fees_expiry_timestamp","buyback_fees_expiry_timestamp","buyback_fees_mngo_bonus_factor","buyback_fees_swap_mango_account","cancel_all_orders","cancel_order_by_id","cancel_order_by_slot","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","change_with_fee","change_without_fee","check_confidence","check_confidence_and_maybe_staleness","check_deposit_and_oo_limit","check_health_post","check_health_post_checks","check_health_pre","check_health_pre_checks","check_is_valid_fallback_oracle","check_liquidatable","check_net_borrows","check_resize_from","check_staleness","check_startable","check_triggerable","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_transfer_with_fee","child_earliest_expiry","children","clear","client_id","client_order_id","client_order_id","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","collected_fees_native","collected_liquidation_fees","compute_equity","compute_index","compute_interest_rate","compute_new_avg_utilization","compute_settle_fee","conf_filter","conf_filter","count","count","create_serum3_orders","creator","cumulative_borrow_interest","cumulative_deposit_interest","cumulative_long_funding","cumulative_short_funding","data","deactivate_perp_position","deactivate_perp_position_and_log","deactivate_serum3_orders","deactivate_token_position","deactivate_token_position_and_log","decr_event_id","decr_event_id","decrement_in_use","default","default","default","default","default","default","default","default","default_for_tests","default_for_tests","delay_accumulator_price","delay_accumulator_time","delay_growth_limit","delay_interval_index","delay_interval_seconds","delay_prices","delegate","delegate","deposit","deposit_index","deposit_internal","deposit_internal_wrapper","deposit_limit","deposit_limit_quote","deposit_weight_scale_start_quote","deposit_with_dusting","deprecated_realized_trade_pnl_native","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","deserialize_variant","determine_oracle_type","deviation","deviation","disable_asset_liquidation","display_price_style","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","duration_seconds","dust","dust_if_possible","dynamic","dynamic_perp_oo_vec_offset","dynamic_perp_vec_offset","dynamic_reserved_bytes_offset","dynamic_serum3_vec_offset","dynamic_size","dynamic_token_conditional_swap_vec_offset","dynamic_token_vec_offset","earliest_expiry","earliest_expiry","effective_base_position_lots","elligible_for_group_insurance_fund","elligible_for_group_insurance_fund","enforce_borrows_lte_deposits","enforce_max_utilization_on_borrow","ensure_perp_position","ensure_token_position","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","event_queue","event_type","event_type","event_type","execute_perp_maker","execute_perp_out_event","execute_perp_taker","expected_health_accounts","expire_buyback_fees","expiry","expiry_timestamp","fallback_opt","fallback_oracle","fallback_oracle","fallback_oracle_state_unchecked","fast_listing_admin","fast_listing_interval_start","fast_listings_in_interval","fee_penalty","fees_accrued","fees_settled","fees_withdrawn","fees_withdrawn","find_earliest_expiry","find_first_active_unused_perp_position","find_worst","first_bank","first_vault","fixed","fixed_price_data","fixed_price_lots","flash_loan_approved_amount","flash_loan_swap_fee_rate","flash_loan_token_account_initial","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","force_close","force_close","force_close","force_close","free_list_head","free_list_len","free_token_conditional_swap_mut","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_existing_bank","from_leaf_node","from_reader","frozen_until","frozen_until","full","funding_last_updated","gen_order_id","get_quote_oracle","group","group","group","group","group","group","group","group","group","group","group","group_insurance_fund","group_insurance_fund","group_num","group_seeds","group_seeds","handle","has_loan","has_loan","has_open_orders","has_open_orders_or_fills","has_open_taker_fills","head","head","header","header","header_version","header_version","health_region_begin_init_health","health_region_begin_init_health","highest_placed_ask","highest_placed_bid_inv","id","id","impact_price","impact_quantity","in_health_region","in_use_count","incr_event_id","incr_event_id","increment_in_use","index_last_updated","indexed_borrows","indexed_deposits","indexed_position","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init_asset_weight","init_base_asset_weight","init_base_liab_weight","init_liab_weight","init_overall_asset_weight","initialize","initialize","insert_leaf","insert_leaf","inside_price_limit","insurance_mint","insurance_vault","intention","interest_curve_scaling","interest_rate_curve_calculator","interest_target_utilization","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_iter","into_iter","invert_side","is_active","is_active","is_active","is_active","is_active_for_market","is_active_for_market","is_active_for_market","is_active_for_token","is_configured","is_configured","is_delegate","is_empty","is_expired","is_expired","is_force_close","is_force_close","is_force_close","is_force_close","is_full","is_full","is_in_health_region","is_in_use","is_inverted","is_ix_enabled","is_operational","is_owner_or_delegate","is_post_only","is_price_better","is_price_data_better","is_price_within_limit","is_reduce_only","is_reduce_only","is_reduce_only","is_startable","is_startable_type","is_testing","is_triggerable","is_valid","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","iter","iter","iter_all_including_invalid","iter_valid","ix_gate","key","key","key","last_delay_interval_index","last_net_borrows_window_start_ts","last_update_slot","last_update_slot","last_update_timestamp","last_update_ts","leaf_count","len","liquidation_fee","load_full","load_full_init","load_full_mut","load_whirlpool_state","loan_amount","loan_amount","loan_fee_rate","loan_origination_fee","loan_origination_fee","loan_origination_fee_rate","long_funding","long_settled_funding","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lot_to_native_price","lowest_placed_ask","lowest_placed_bid_inv","maint_asset_weight","maint_base_asset_weight","maint_base_liab_weight","maint_liab_weight","maint_overall_asset_weight","maint_weight_shift_asset_target","maint_weight_shift_duration_inv","maint_weight_shift_end","maint_weight_shift_liab_target","maint_weight_shift_start","maint_weights","maker","maker_client_order_id","maker_fee","maker_fee","maker_fee","maker_fee_rate","maker_order_id","maker_out","maker_out","maker_price","maker_slot","maker_timestamp","maker_volume","market","market_index","market_index","market_index","market_index","market_index","market_index","matched_amount","matched_quantity","max_base_lots","max_buy","max_buy_for_position","max_funding","max_health_accounts","max_leaf","max_quote_lots","max_rate","max_sell","max_sell_for_position","max_staleness_slots","max_staleness_slots","maybe_node","maybe_recover_from_being_liquidated","min_funding","min_leaf","min_vault_to_deposits_ratio","mint","mint","mint","mint_decimals","mngo_token_index","multiple_banks_supported","multiunzip","name","name","name","name","name","name","name","name","name","name","name","native","native_borrows","native_deposits","native_price_to_lot","needs_penalty_fee","net_borrow_limit_per_window_quote","net_borrow_limit_window_size_ts","net_borrows_in_window","net_deposits","net_deposits","new","new","new","new","new","new","new","new_node_key","new_order","next","next","next_token_conditional_swap_id","next_token_conditional_swap_id","node","node","node","node","node","node_mut","node_mut","nodes","nodes","num_banks","oneshot_settle_pnl_allowance","open_interest","open_orders","openbook_v2_market_external","openbook_v2_market_seeds","openbook_v2_market_seeds","openbook_v2_program","openbook_v2_supported","oracle","oracle","oracle","oracle","oracle_config","oracle_config","oracle_log_context","oracle_pegged_price_data","oracle_pegged_price_offset","oracle_price","oracle_price","oracle_price_band","oracle_price_band","oracle_state","oracle_state_unchecked","oracle_type","orca_mainnet_whirlpool","order_id","order_tree","order_tree","order_tree_type","order_tree_type","order_type","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner","owner_slot","owner_slot","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding","padding1","padding1","padding1","padding1","padding2","padding2","padding2","padding2","padding2","padding3","padding3","padding3","padding4","padding4","padding5","padding6","padding7","padding8","params","passed_start","pda_seeds","peek","peek_front","peek_front_mut","peg_limit","peg_limit","perp_count","perp_count","perp_find_order_with_client_order_id","perp_find_order_with_order_id","perp_market_index","perp_next_order_slot","perp_offset","perp_oo_count","perp_oo_count","perp_open_orders","perp_order_by_raw_index","perp_order_mut_by_raw_index","perp_position","perp_position_by_raw_index","perp_position_mut","perp_position_mut_by_raw_index","perp_spot_transfers","perp_spot_transfers","perp_spot_transfers","perps","perps_supported","platform_liquidation_fee","platform_liquidation_fee","pop_front","position_is_active","positive_pnl_liquidation_fee","post_target","potential_base_tokens","potential_quote_tokens","potential_serum_tokens","power_of_ten","prefix_len","premium_price","previous_index","price","price","price","price","price_data","price_lots","price_lower_limit","price_premium_rate","price_upper_limit","progress_with","progress_with","push_back","pyth_mainnet_sol_oracle","pyth_mainnet_usdc_oracle","quantity","quantity","quantity","quantity","quantity_at_price","quote_borrows_without_fee","quote_lot_size","quote_position_native","quote_position_native","quote_running_native","quote_token_index","quote_token_index","quote_token_index","rank_orders","rate0","rate1","realized_pnl_for_position_native","record_liquidation_pnl_takeover","record_liquidation_quote_change","record_settle","record_trade","record_trading_fee","recurring_settle_pnl_allowance","reduce_buyback_fees_accrued","reduce_only","reduce_only","reduce_only","reduce_only","reduce_only","registration_time","registration_time","registration_time","registration_time","remaining_buy","remaining_deposits_until_limit","remaining_net_borrows_quote","remaining_sell","remove_by_key","remove_by_key","remove_one_expired","remove_one_expired","remove_perp_order","remove_taker_trade","remove_worst","remove_worst","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved_dynamic","reserved_roots","reset_on_nonzero_price","reset_to_price","resize_dynamic_content","revert_pushes","root","root_mut","roots","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","scaled_init_asset_weight","scaled_init_liab_weight","security_admin","self_trade_behavior","sell_token_index","seq_num","seq_num","seq_num","seq_num","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serum3","serum3_count","serum3_count","serum3_offset","serum3_orders","serum3_orders_by_raw_index","serum3_orders_mut","serum3_orders_mut_by_raw_index","serum3_supported","serum_market_external","serum_market_seeds","serum_market_seeds","serum_program","set_being_liquidated","set_count","set_count","set_elligible_for_group_insurance_fund","set_head","set_head","set_in_health_region","set_is_configured","settle_fee_amount_threshold","settle_fee_flat","settle_fee_fraction_low_health","settle_funding","settle_limit","settle_pnl_limit_factor","settle_pnl_limit_factor","settle_pnl_limit_settled_in_current_window_native","settle_pnl_limit_window","settle_pnl_limit_window_size_ts","settle_token_index","short_funding","short_settled_funding","side","side","side","side","side","side","side","side_and_tree","side_and_tree","signer_seeds","socialize_loss","sol_mint_mainnet","sol_opt","sold","source_is_active","space","sqrt_price","stable_growth_limit","stable_price","stable_price","stable_price","stable_price_model","stable_price_model","start_timestamp","state","switchboard_v1_devnet_oracle","switchboard_v2_mainnet_oracle","tag","tag","tag","taker","taker_base_lots","taker_client_order_id","taker_fee","taker_fee","taker_fee","taker_fee_rate","taker_price","taker_quote_lots","taker_side","taker_side","taker_volume","target_is_active","tcs_type","tcs_type","temporary_delegate","temporary_delegate_expiry","testing","tif_from_expiry","time_in_force","time_in_force","timestamp","timestamp","timestamp","to_oracle_config","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_post_order_type","token_conditional_swap_by_id","token_conditional_swap_by_index","token_conditional_swap_count","token_conditional_swap_count","token_conditional_swap_free_index","token_conditional_swap_maker_fee_rate","token_conditional_swap_mut_by_index","token_conditional_swap_taker_fee_rate","token_conditional_swaps","token_count","token_count","token_decrement_dust_deactivate","token_index","token_index","token_index","token_mint_a","token_mint_b","token_offset","token_position","token_position_and_raw_index","token_position_by_raw_index","token_position_mut","token_position_mut_by_raw_index","tokens","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_deserialize_unchecked","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_from_primitive","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_serialize","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","ui","unsettled_funding","unsettled_pnl","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","update","update_cumulative_interest","update_funding_and_stable_price","update_interest_rate_scaling","update_net_borrows","update_parent_earliest_expiry","update_potential_serum_tokens","update_settle_limit","usdc_mint_mainnet","usdc_opt","util0","util1","vault","vaults","verify","verify_banks_ais","version","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","withdraw_loan_origination_fee","withdraw_with_fee","withdraw_without_fee","withdraw_without_fee_with_dusting","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","zero","zero_util_rate","max_oracle_staleness_slots","order_type","order_type","peg_limit","price_lots","price_lots","price_offset_lots","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","ID","check_id","id","I80F48","PerpMarketIndex","Serum3MarketIndex","TokenIndex","az","az","az","az","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","default","default","default","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize_reader","deserialize_reader","deserialize_reader","deserialize_reader","drop","drop","drop","drop","from","from","from","from","init","init","init","init","into","into","into","into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","serialize","serialize","serialize","serialize","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","fill_from_str","format_zero_terminated_utf8_bytes"],"q":["mango_v4","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::accounts","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::accounts_ix","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::accounts_ix::compute_budget","","","mango_v4::accounts_ix::jupiter_mainnet_3","","","mango_v4::accounts_ix::jupiter_mainnet_4","","","mango_v4::accounts_ix::jupiter_mainnet_6","","","mango_v4::accounts_zerocopy","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::address_lookup_table_program","","","mango_v4::error","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::events","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::health","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::i80f48","","","","","","mango_v4::instruction","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::logs","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::mango_v4","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::program","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::serum3_cpi","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::state","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::state::OrderParams","","","","","","","mango_v4::state::orca_mainnet_whirlpool","","","mango_v4::state::pyth_mainnet_sol_oracle","","","mango_v4::state::pyth_mainnet_usdc_oracle","","","mango_v4::state::sol_mint_mainnet","","","mango_v4::state::switchboard_v1_devnet_oracle","","","mango_v4::state::switchboard_v2_mainnet_oracle","","","mango_v4::state::usdc_mint_mainnet","","","mango_v4::types","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4::util",""],"d":["The static program ID","","","","An Anchor generated module, providing a set of structs …","","","","","","","","","Confirms that a given pubkey is equivalent to the program …","","","","","","","","The Anchor codegen exposes a programming model where a …","","Creates an Error with a particular message, using …","Creates an Error with a particular message, using …","","Returns the argument unchanged.","","","","Returns the program ID","","","An Anchor generated module containing the program’s set …","Calls U::from(self).","","","","","","","","","","Module representing the program.","Like anchor’s require!(), but with a customizable message","Like anchor’s require!(), but with a customizable …","","","","","","","","","","","","","","","","","","Generated client accounts for AccountBuybackFeesWithMngo.","Generated client accounts for AccountClose.","Generated client accounts for AccountCreate.","Generated client accounts for AccountCreateV2.","Generated client accounts for AccountEdit.","Generated client accounts for AccountExpand.","Generated client accounts for AccountSizeMigration.","Generated client accounts for AccountToggleFreeze.","Generated client accounts for AdminPerpWithdrawFees.","Generated client accounts for AdminTokenWithdrawFees.","Generated client accounts for AltExtend.","Generated client accounts for AltSet.","Generated client accounts for Benchmark.","Generated client accounts for ComputeAccountData.","Generated client accounts for FlashLoanBegin.","Generated client accounts for FlashLoanEnd.","Generated client accounts for FlashLoanSwapBegin.","Generated client accounts for GroupClose.","Generated client accounts for GroupCreate.","Generated client accounts for GroupEdit.","Generated client accounts for GroupWithdrawInsuranceFund.","Generated client accounts for HealthRegionBegin.","Generated client accounts for HealthRegionEnd.","Generated client accounts for IxGateSet.","Generated client accounts for OpenbookV2CancelOrder.","Generated client accounts for OpenbookV2CloseOpenOrders.","Generated client accounts for OpenbookV2CreateOpenOrders.","Generated client accounts for OpenbookV2DeregisterMarket.","Generated client accounts for OpenbookV2EditMarket.","Generated client accounts for …","Generated client accounts for OpenbookV2PlaceOrder.","Generated client accounts for OpenbookV2PlaceTakeOrder.","Generated client accounts for OpenbookV2RegisterMarket.","Generated client accounts for OpenbookV2SettleFunds.","Generated client accounts for PerpCancelAllOrders.","Generated client accounts for PerpCancelAllOrdersBySide.","Generated client accounts for PerpCancelOrder.","Generated client accounts for …","Generated client accounts for PerpCloseMarket.","Generated client accounts for PerpConsumeEvents.","Generated client accounts for PerpCreateMarket.","Generated client accounts for PerpDeactivatePosition.","Generated client accounts for PerpEditMarket.","Generated client accounts for PerpForceClosePosition.","Generated client accounts for PerpLiqBaseOrPositivePnl.","Generated client accounts for PerpLiqForceCancelOrders.","Generated client accounts for …","Generated client accounts for …","Generated client accounts for PerpPlaceOrder.","Generated client accounts for PerpSettleFees.","Generated client accounts for PerpSettlePnl.","Generated client accounts for PerpUpdateFunding.","Generated client accounts for Serum3CancelAllOrders.","Generated client accounts for Serum3CancelOrder.","Generated client accounts for Serum3CloseOpenOrders.","Generated client accounts for Serum3CreateOpenOrders.","Generated client accounts for Serum3DeregisterMarket.","Generated client accounts for Serum3EditMarket.","Generated client accounts for Serum3LiqForceCancelOrders.","Generated client accounts for Serum3PlaceOrder.","Generated client accounts for Serum3RegisterMarket.","Generated client accounts for Serum3SettleFunds.","Generated client accounts for Serum3SettleFunds.","Generated client accounts for Serum3SettleFundsV2.","Generated client accounts for Serum3SettleFundsV2Extra.","Generated client accounts for StubOracleClose.","Generated client accounts for StubOracleCreate.","Generated client accounts for StubOracleSet.","Generated client accounts for TokenAddBank.","Generated client accounts for TokenConditionalSwapCancel.","Generated client accounts for TokenConditionalSwapCreate.","Generated client accounts for TokenConditionalSwapStart.","Generated client accounts for TokenConditionalSwapTrigger.","Generated client accounts for TokenDeposit.","Generated client accounts for TokenDepositIntoExisting.","Generated client accounts for TokenDeregister.","Generated client accounts for TokenEdit.","Generated client accounts for …","Generated client accounts for TokenLiqBankruptcy.","Generated client accounts for TokenLiqWithToken.","Generated client accounts for TokenRegister.","Generated client accounts for TokenRegisterTrustless.","Generated client accounts for TokenUpdateIndexAndRate.","Generated client accounts for TokenWithdraw.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","group admin or fast listing admin, checked at #1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Accounts are initialised by client, anchor discriminator …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bank’s token_index is checked at #1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The fallback oracle account is optional and only used when …","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Instructions Sysvar for instruction introspection","Instructions Sysvar for instruction introspection","Instructions Sysvar for instruction introspection","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","needed for the automatic settle_funds call","","needed for the automatic settle_funds call","needed for the automatic settle_funds call","needed for the automatic settle_funds call","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The oracle account is optional and only used when …","","","","","","","","","","","","","","The oracle account is optional and only used when …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bank that pays for the order, if necessary","The bank that pays for the order, if necessary","The bank that pays for the order, if necessary","","","","The bank vault that pays for the order, if necessary","The bank vault that pays for the order, if necessary","The bank vault that pays for the order, if necessary","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Sets up mango vaults for flash loan","Finalizes a flash loan","","","","","","","Sets up for a health region","Ends a health region.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Copy paste a bunch of enums so that we could …","","","","","","","","","","","","","","","","In addition to these accounts, there must be …","Changes a token’s parameters.","","","","","","Updates token interest and interest rates.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: ALT address is checked inline","CHECK: ALT authority is checked inline","","","","","","","","","","","","","","","","","","","group admin or fast listing admin, checked at #1","","","","","","","","","CHECK: asks will be checked by openbook_v2","CHECK: asks will be checked by openbook_v2","CHECK: asks will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","","","","","CHECK: bids will be checked by openbook_v2","CHECK: bids will be checked by openbook_v2","CHECK: bids will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","","","","","Accounts are initialised by client, anchor discriminator …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bank’s token_index is checked at #1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: unused, exists only because anchor is unhappy in …","","","CHECK: event will be checked by openbook_v2","CHECK: event queue will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The fallback oracle account is optional and only used when …","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","","CHECK: Oracle can have different account types","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","CHECK: Instruction gate will be checked in instruction …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: bank/vault/token account in remaining accounts …","Instructions Sysvar for instruction introspection CHECK: …","Instructions Sysvar for instruction introspection CHECK: …","Instructions Sysvar for instruction introspection CHECK: …","CHECK: fixed instructions sysvar account","","","","CHECK: Oracle can have different account types","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","","CHECK: base vault will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","","CHECK: quote vault will be checked by openbook_v2","CHECK: Validated by the openbook_v2 cpi call","","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the openbook_v2 cpi call","CHECK: Validated by the serum cpi call","CHECK: Validated by the openbook_v2 cpi call","CHECK: Validated by the openbook_v2 cpi call","CHECK: Validated by the openbook_v2 cpi call","needed for the automatic settle_funds call CHECK: …","CHECK: Validated by the serum cpi call","needed for the automatic settle_funds call CHECK: …","needed for the automatic settle_funds call CHECK: …","","","","","","","","","","","","","CHECK: Oracle can have different account types","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Will be checked against seeds and will be initiated …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Newly created by serum cpi call","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","CHECK: Validated inline by checking against the pubkey …","","","","","","","","","","","","","","","","","","","","","","","","CHECK: Can register a market for any openbook_v2 program","","CHECK: The oracle can be one of several different account …","The oracle account is optional and only used when …","CHECK: Oracle can have different account types, …","CHECK: Oracle can have different account types, …","CHECK: Oracle can have different account types, …","CHECK: Oracle can have different account types, …","CHECK: The oracle can be one of several different account …","CHECK: Oracle can have different account types, …","CHECK: Oracle can have different account types, …","CHECK: The oracle can be one of several different account …","","","","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","The oracle account is optional and only used when …","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","CHECK: oracle can be one of multiple account types","CHECK: The oracle can be one of several different account …","CHECK: bank/vault/token account in remaining accounts …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bank that pays for the order, if necessary","The bank that pays for the order, if necessary","The bank that pays for the order, if necessary","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","The bank vault that pays for the order, if necessary","The bank vault that pays for the order, if necessary","The bank vault that pays for the order, if necessary","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: The oracle can be one of several different account …","CHECK: The oracle can be one of several different account …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: Can register any serum market","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: The pubkey is checked and then it’s passed to the …","CHECK: Can register a market for any serum program","CHECK: The pubkey is checked and then it’s passed to the …","","","","","","CHECK: Oracle can have different account types","CHECK: Oracle can have different account types","CHECK: Oracle can have different account types","CHECK: Oracle can have different account types","CHECK: Oracle can have different account types","","","","","","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","CHECK: target for account rent needs no checks","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","A Ref to an AccountInfo - makes AccountInfo compatible …","","Functions should prefer to work with AccountReader where …","","Like AccountReader, but can also get the account pubkey","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","Using AccountLoader forces a AccountInfo.clone() and then …","Using AccountLoader forces a AccountInfo.clone() and then …","","","","","Same as load(), but doesn’t check the discriminator or …","Same as load(), but doesn’t check the discriminator or …","","","","","Same as load(), but mut","Same as load(), but mut","","Same as load_fully_unchecked(), but mut","Same as load_fully_unchecked(), but mut","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Add a context string c to a Result or Error","","","","","Creates an Error with a particular message, using …","Creates an Error with a particular message, using …","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","Gets the name of this [#enum_name].","","","Like anchor’s require!(), but with a customizable message","Like anchor’s require!(), but with a customizable …","","","","","","","","","","","Like context(), but evaluate the context string lazily","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","This trait abstracts how to find accounts needed for the …","Assumes the account infos needed for the health …","Store information needed to compute account health","There are three types of health:","","","","Stores information about perp market positions and their …","Information about prices for a bank or perp market.","","Takes a list of account infos containing","Information about reserved funds on Serum3 open orders …","Temporary value used during health computations","","","","","","","","","","","Changes the cached user account token balance.","","","","The asset price to use for the given health type","","Computes the account assets and liabilities marked to …","","","","","","","","","","","","Freely available spot balance for the token.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Compute health with an arbitrary AccountRetriever","Computes health for a mango account given a set of account …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns token balances that account for spot and perp …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Liquidatable spot assets mean: actual token deposits and …","Liquidatable spot borrows mean: actual token borrows plus …","","","","","","","","Phase1 is spot/perp order cancellation and spot settlement …","Phase2 is for:","Phase3 is bankruptcy:","","","The open orders account has no free or reserved funds","","","","","The health ratio is","The perp-risk (but not token-risk) adjusted upnl. Also …","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","Computes the account leverage as ratio of liabs / (assets …","The liability price to use for the given health type","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","NOTE: keep getMaxSourceForTokenSwap in ts/client in sync …","The sum of serum-reserved amounts over all markets","How many source native tokens may be swapped for target …","Verifies neither the net borrow or deposit limits","","","","","","Generate a HealthCache for an account and its health …","Generate a special HealthCache for an account and its …","","","The current oracle price","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns how much pnl is settleable for a given settle …","","","","","Recompute the cached information about a serum market.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","How much of a token can be gained before health increases …","How much of a token can be taken away before health …","Sum of token_info.balance_spot and perp …","A “stable” price, provided by StablePriceModel","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Settle token native provided by perp position and open …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","Instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The amount that was transfered out to the user","The amount that was transfered out to the user","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The amount by which the user’s token position changed at …","The amount by which the user’s token position changed at …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Deposit fee paid for positive change_amount.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","including liqor and platform liquidation fees","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The amount that was a loan (<= approved_amount, depends on …","The amount that was a loan (<= approved_amount, depends on …","","","","The fee paid on the loan, not included in loan or …","The fee paid on the loan, not included in loan or …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Swap fee paid on the in token of a swap.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","benchmark","Warning, this instruction is for testing purposes only!","","","","A version of flash_loan_begin that’s specialized for …","","","","","","","","","","","","","","","","","","","OpenbookV2","","","","","","","","Perps","","","","","","","","","","","","","","","","","","","","","","","","requires the receiver_bank in the health account list to …","Serum","Deprecated instruction that used to settles all free funds …","Like Serum3SettleFunds, but fees_to_dao determines if …","","","","","","","","","","","","","","","","","","","","","","","","","Type representing the program.","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","For loan origination fees bookkeeping purposes","Copied over from serum dex","","","","","CHECK: cpi","CHECK: cpi","","","","","","","","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: cpi","CHECK: cpi","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","CHECK: cpi","","CHECK: cpi","CHECK: cpi","CHECK: cpi","","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","CHECK: cpi","","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","must cover the open_orders and the …","CHECK: cpi","CHECK: cpi","CHECK: cpi","","","","","","","","","","","","","","","","","","","","","","Cancels the whole transaction as soon as a self-matching …","","","","","","","","","","","","","","","","","","","","","","","","","Iterates the fixed and oracle_pegged OrderTrees …","","Reference to a node in a book side component","","","Cancels the maker side of the trade, the taker side gets …","","","","Both the maker and taker sides of the matched orders are …","","","","Header is created by scanning and parsing the dynamic …","","","","The token index used in AccountBuybackFeesWithMngo to …","","","","","","","","","","","","","","","","The token index used for the insurance fund.","","Take existing orders up to price, max_base_quantity and …","InnerNodes and LeafNodes compose the binary tree of orders.","","","","Enum for lookup into ix gate note: total ix files 56, ix …","","LeafNodes represent an order in the binary tree","","Take existing orders up to price, max_base_quantity and …","Take existing orders up to price, max_base_quantity and …","","","","","","","","","","Useful when loading from bytes","Useful when loading from RefCell, like from AccountInfo","Useful when loading from RefCell, like from AccountInfo","Trait to allow a AccountLoader to create an accessor for …","","Full reference type, useful for borrows","Full reference type, useful for borrows","Fully owned MangoAccount, useful for tests","","Ignore price and take orders up to max_base_quantity and …","","","","","","","","","","","","","","","","","","","","","Contains all oracle account infos that could be used to …","","","","","","","","Perp order parameters","","","Iterate over orders in order (bids=descending, …","A binary tree on AnyNode::key()","","","","","","The token index used for settling perp markets.","","","","","","","","","","","","","","","","","","","","","","Never take any existing orders, post the order on the book …","Never take any existing orders, post the order on the book …","If existing orders match with this order, adjust the price …","If existing orders match with this order, adjust the price …","","","","","","This token index is supposed to be the token that oracles …","","","Self trade behavior controls how taker orders interact …","","","","","","","","","","","","","","","","","","SideAndOrderTree is a storage optimization, so we don’t …","","Maintains a “stable_price” based on the oracle price.","Reducing a position when the price gets worse","","","","","","","","Incentive to pay to callers who start an auction, in $1e-6","Reducing a position when the price gets better","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Add new fees that are usable with the buyback fees feature.","Platform fees that were accrued during liquidation (in …","","","","","","Add taker trade after it has been matched but before it …","","","","","","","","","","","may token selling create borrows? (often users just want …","","may token purchases create deposits? (often users just …","Number of fast listings that are allowed per interval","","Given some pnl, applies the pnl settle limit and returns …","","","","","","","","","","Address of the BookSide account for asks","Base lots in open asks","Returns the (min_pnl, max_pnl) range of quote-native pnl …","Calculate the average entry price of the position, in …","The native average entry price for the base lots of the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Tracks the amount of borrows that have flowed into the …","Number of decimals used for the base token.","Fees Fee for base position liquidation","Number of base native in a base lot. Must be a power of 10.","","Active position size, measured in base lots","","","Store the base/quote token index, so health computations …","","","","","Tracks that this account should be liquidated until …","Return the price of the order closest to the spread","","Address of the BookSide account for bids","Base lots in open bids","Field used to contain the trusted_market flag and is now …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Soft borrow limit in native quote","how many native tokens were already bought/sold","Calculate the break even price of the position, in …","","","","","","","PDA bump","","","","indexes of tokens for the swap","","","The total buyback fees amount that the account can make …","Fees usable with the “fees buyback” feature. This …","","Fees buyback amount from the previous expiry interval.","","Number of seconds after which fees that could be used with …","End timestamp of the current expiry interval of the …","","","","Cancels up to limit orders that are listed on the mango …","Cancels an order on a side, removing it from the book and …","Cancels an order in an open order slot, removing it from …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Change a position, while taking the loan origination fee …","Change a position without applying the loan origination fee","","","","","","","","","","","Error if this header isn’t a valid resize from prev","","Do the current conditions and tcs type allow starting?","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Generic “transfer” from source to target.","The earliest expiry timestamp for the left and right …","indexes into BookSide::nodes","","","Arbitrary user-controlled order id.","User defined id for this order, used in FillEvents","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Fees collected over the lifetime of the bank","Platform fees that were collected during liquidation (in …","","","returns the current interest rate in APR","","Returns the fee for settling settlement when the account …","","","","","","","","","Cumulative long funding in quote native units. If the user …","Cumulative short funding in quote native units If the user …","","","","","","","","","","","","","","","","","","","Creates default market for tests","The delay price is based on an average over each …","Accumulating the total time for the above average.","Maximal relative difference between two delay_price in …","","Length of a delay_interval","Stored delay_price for each delay_interval. If we want the …","","","Deposits native_amount.","the index used to scale the value of an IndexedPosition …","Internal function to deposit funds","","zero means none, in token native","","Limit for collateral of deposits in native quote","Like deposit(), but allows dusting of in-use accounts.","Deprecated field: Amount of pnl that was realized by …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If set to 1, deposits cannot be liquidated when an account …","The stored prices are always “sell token per buy token”…","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Duration of the auction mechanism","","Returns true if the position remains active","","","","","","","","","The lowest timestamp at which one of the contained …","","","","","","Prevent borrowing away the full bank vault. Keep some in …","","Creates or retrieves a TokenPosition for the token_index. …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Address of the EventQueue account","","","","Returns amount of realized trade pnl for the maker","","Returns amount of realized trade pnl for the taker","","Updates the buyback_fees_* fields for staggered expiry of …","Time at which this order will expire, u64::MAX if never","timestamp until which the conditional swap is valid","","Oracle that may be used if the main oracle is stale or not …","","","","Fast-listings are limited per week, this is the start of …","Number of fast listings that happened this interval","Fee (in quote native) to charge for ioc orders","Fees accrued in native quote currency these are increased …","Fees settled in native quote currency these are increased …","","","Returns the handle of the node with the lowest expiry …","","","","","","Creates price data for a fixed order’s price","Retrieves the price (in lots) from a fixed order’s price …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Builds header by scanning and parsing the dynamic portion …","","","","","","","","","","","","timestamp that funding was last updated in","","","","","","","","","","","","","","","Is this market covered by the group insurance fund?","","","","","","","Does the user have any orders on the book?","Are there any open orders or fills that haven’t been …","","","","","","","","Init health as calculated during HealthReginBegin, rounded …","","","Track something like the highest open bid / lowest open …","","","Walk up the book quantity units and return the price at …","For funding, get the impact price this many base lots deep …","The account is currently inside a health region marked by …","incremented when a market requires this position to stay …","","","","","","deposits/borrows for this bank","The deposit_index (if positive) or borrow_index (if …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","initializes a header on the dynamic portion of a new …","","","","Is native_price an acceptable order for the side of this …","","","The intention the user had when placing this order, …","Current interest curve scaling, always >= 1.0","calculator function that can be used to compute an interest","Target utilization: If actual utilization is higher, scale …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Whether the entry is in use","If this struct is in use. (tcs are stored in a …","","","Returns if the order is expired at now_ts","","","","","","","","","","","","","","Is this order required to be posted to the orderbook? It …","Is lhs is a better order for side than rhs?","Is lhs is a better order for side than rhs?","Is price acceptable for a limit order on side?","","","","","Does this tcs type support an explicit tcs_start …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Iterate over all entries, including invalid orders","","Iterate over all entries, including invalid orders","Iterate over all entries in the book filtering out invalid …","","","only the top prefix_len bits of key are relevant","The binary tree key, see new_node_key()","The delay_interval_index that update() was last called on.","Timestamp at which the last net borrows window started","","","","","","","Liquidation fee that goes to the liqor.","","","","","","","","","","","Current long funding value. Increasing it means that every …","Already settled long funding","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Convert from the price stored on the book to the price …","","Track lowest bid/highest ask, same way as for highest …","","These weights apply to the base position. The quote …","","","Weights for full perp market health, if positive","Maint asset weight to reach at _shift_end.","Cache of the inverse of maint_weight_shift_end - …","End timestamp in seconds until which the maint weights …","","Start timestamp in seconds at which maint weights should …","","","","","","Fee when matching maker orders. May be negative.","The maker has to pay premium_price * (1 + maker_fee_rate)","","","","Premium price adjusted for the maker fee","","","Cumulative maker volume in quote native units","","","","","","","","Walk up the book given base units and return the amount in …","Walk up the book given quote units and return the quantity …","Max base lots to buy/sell.","maximum amount of native tokens to buy or sell","The remaining buy amount, taking the current buy token …","Maximal funding rate per day, must be >= 0.","","","Max quote lots to pay/receive (not taking fees into …","the 100% utilization rate","","The remaining sell amount, taking the current sell token …","","","","","Minimal funding rate per day, must be <= 0.","","The maximum utilization allowed when borrowing is 1-this …","","","","","","","","","","","","","","","","","Name. Trailing zero bytes are ignored.","","","","","","Should this order be penalized with an extra fee?","Net borrow limit per window in quote native; set to -1 to …","Size in seconds of a net borrows window","Sum of all deposits and borrows in the last window, in …","","","","","","","","","","Creates a binary tree node key.","","","","Next id to use when adding a token condition swap","","","","","","","","","","","","Amount of pnl that can be settled once.","Number of base lots currently active in the market. Always …","","","","","","","","","","Oracle account address","","Oracle configuration","","Creates price data for an oracle pegged order from the …","Retrieves the price offset (in lots) from an oracle pegged …","Tries to return the primary oracle price, and if there is …","","","Limit orders must be <= oracle * (1+band) and >= oracle / …","","Returns the price of one native base token, in native …","","","","","","","","PostOrderType, this was added for TradingView move order","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Address of the owning MangoAccount","","Index into the owning MangoAccount’s PerpOpenOrders","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Order type specific params","","","","","","pegging limit for oracle peg orders, otherwise -1","If the effective price of an oracle pegged order exceeds …","","","","","Index of this perp market. Other data, like the …","","","","","","","","","","","","","","Cumulative number of quote native units transfered from …","","","Additional to liquidation_fee, but goes to the group owner …","Additional to liquidation_fee, but goes to the group owner …","","","","Order tree that this order should be added to","An overestimate of the amount of tokens that might flow …","","Largest amount of tokens that might be added the the bank …","","number of highest key bits that all children share e.g. if …","Base price adjusted for the premium","","Compute the price_lots this order is currently at, as well …","","","","The order’s price_data as stored in the key","","The lower or starting price:","The premium to pay over oracle price to incentivize …","Parallel to price_lower_limit, but an upper limit / …","","","","","","","Number of base lots to buy or sell, always >=1","","","Return the quantity of orders that can be matched by an …","","Number of quote native in a quote lot. Must be a power of …","","Active position in oracle quote native. At the same time …","Tracks what the position is to calculate average entry & …","","","","Compares the fixed and oracle_pegged order and returns the …","","","Trade pnl, fees, funding that were added over the current …","Adds to the quote position and adds a recurring (“…","Adds immediately-settleable realized pnl when a liqor …","Update the perp position for pnl settlement","Change the base and quote positions as the result of a …","Update perp position for a maker/taker fee payment","Amount of pnl that can be settled in each settle window.","Reduce the available buyback fees amount because it was …","Reduce only","","","If true, users may no longer increase their market …","","","","Timestamp in seconds that the market was registered at.","","","","","","","","Remove the order with the lowest expiry timestamp in the …","Remove the order with the lowest expiry timestamp, if that…","Removes the perp order and updates the maker bids/asks …","Remove taker trade after it has been processed on …","Remove the overall worst-price order.","","","","","","","","","","","","","","","","","","","","","","","","","","","","If set to 1, the stable price will reset on the next …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the init asset weight, adjusted for the number of …","","","Configure how matches with order of the same owner are …","","","","","Total number of orders seen","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Pnl settlement amount needed to be eligible for the flat …","In native units of settlement token, given to each settle …","Fraction of pnl to pay out as fee if +pnl account has low …","Move unrealized funding payments into the quote_position","Returns the (min_pnl, max_pnl) range of quote-native pnl …","","Controls the strictness of the settle limit. Set to a …","Amount of realized trade pnl and unrealized pnl that was …","Index of the current settle pnl limit window","Window size in seconds for the perp settlement limit","Token index that settlements happen in.","See long_funding.","Already settled short funding","","","","","","","","","","","Socialize the loss in this account across all longs and …","","","","","Number of bytes needed for the MangoAccount, including the …","","Maximal per-second relative difference of the stable price.","","","Current stable price to use in health","","Maintains a stable price based on the oracle price that is …","In seconds since epoch. 0 means not-started.","","","","","NodeTag","","","Amount of base lots on the EventQueue waiting to be …","","","","Fee for taker orders, may not be negative.","The taker receives only premium_price * (1 - …","Premium price adjusted for the taker fee","Amount of quote lots on the EventQueue waiting to be …","","","Cumulative taker volume in quote native units","","","Stores a TokenConditionalSwapType enum value","","","","Convert an input expiry timestamp to a time_in_force value","Number of seconds the order shall live, 0 meaning forever","Time in seconds after timestamp at which the order expires.","The time the order was placed","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Fees for the token conditional swap feature","","","","Decrements the in_use_count for the token position for the …","","index into Group.tokens","","","","","","Returns","","Returns","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The amount of funding this account still needs to pay, in …","Calculate the PnL of the position for a given price","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Use current order book price and index price to update the …","","Update the bank’s net_borrows fields.","When a node changes, the parents’ child_earliest_expiry …","Grows potential_serum_tokens if new > old, shrinks it …","Updates the perp pnl limit time windowing, resetting the …","","","The unscaled borrow interest curve is defined as …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Withdraws native_amount while applying the loan …","Withdraws native_amount without applying the loan …","Like withdraw_without_fee() but allows dusting of in-use …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The unscaled borrow interest curve point for zero …","","","","","","","","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","The const program ID.","Returns true if given pubkey is the program ID.","Returns the program ID.","","","","Nothing in Rust shall use these types. They only exist so …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,5,0,0,0,0,0,5,0,5,5,5,0,5,5,5,5,5,5,5,0,0,0,0,0,5,0,0,0,0,5,5,0,5,0,5,5,5,5,0,0,5,5,0,0,0,5,5,0,0,0,5,5,5,5,0,5,5,0,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,12,13,14,15,16,17,18,24,25,26,27,32,33,35,36,37,40,41,42,44,45,46,47,48,52,56,59,60,63,64,65,66,69,70,72,72,79,80,83,84,93,54,61,54,61,21,22,18,19,20,21,22,28,30,31,34,38,39,43,49,51,53,67,68,71,75,76,77,78,85,86,90,91,35,40,41,42,45,46,47,48,49,51,56,59,62,26,35,36,37,41,42,44,79,80,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,19,20,78,83,84,90,91,93,40,43,44,69,71,72,72,44,73,40,44,69,72,72,35,40,41,42,45,46,47,48,49,51,56,59,62,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,79,80,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,29,10,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,31,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,23,85,40,41,42,49,50,51,59,78,86,90,91,10,10,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,24,28,29,30,31,32,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,72,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,38,43,67,71,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,26,25,26,32,92,58,58,29,58,28,29,31,57,58,88,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,88,55,57,58,81,82,87,88,89,55,57,58,81,82,87,88,89,81,82,55,57,58,87,88,89,10,10,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,30,30,31,31,32,32,33,33,34,34,35,35,36,36,37,37,38,38,39,39,40,40,41,41,42,42,43,43,44,44,45,45,46,46,47,47,48,48,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,58,58,59,59,60,60,61,61,62,62,63,63,64,64,65,65,66,66,67,67,68,68,69,69,70,70,71,71,72,72,73,73,74,74,75,75,76,76,77,77,78,78,79,79,80,80,81,81,82,82,83,83,84,84,85,85,86,86,87,87,88,88,89,89,90,90,91,91,92,92,93,93,10,10,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,30,30,31,31,32,32,33,33,34,34,35,35,36,36,37,37,38,38,39,39,40,40,41,41,42,42,43,43,44,44,45,45,46,46,47,47,48,48,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,58,58,59,59,60,60,61,61,62,62,63,63,64,64,65,65,66,66,67,67,68,68,69,69,70,70,71,71,72,72,73,73,74,74,75,75,76,76,77,77,78,78,79,79,80,80,81,81,82,82,83,83,84,84,85,85,86,86,87,87,88,88,89,89,90,90,91,91,92,92,93,93,39,68,63,64,69,70,40,41,42,44,69,70,72,72,63,64,69,70,63,64,69,70,40,41,42,44,69,70,72,72,42,70,40,41,42,44,69,70,72,72,76,78,90,91,78,85,86,90,91,92,10,10,35,36,37,40,41,44,63,64,65,66,69,70,72,72,35,36,37,38,40,41,42,43,44,35,36,37,40,41,42,43,44,35,36,37,40,41,42,43,44,51,53,54,55,57,58,59,60,61,62,75,76,77,83,84,86,90,91,92,93,26,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,25,26,27,45,46,47,48,52,59,63,64,65,66,70,72,72,84,93,13,14,16,17,21,29,37,43,51,66,71,76,78,90,91,41,42,70,41,42,70,41,42,70,19,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,40,43,44,69,71,72,72,44,73,40,44,69,72,72,88,29,37,66,78,90,91,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,79,80,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,63,64,65,66,67,69,70,71,72,72,63,64,65,66,69,70,71,72,72,63,64,65,66,69,70,71,72,72,55,57,58,60,61,55,57,58,60,61,55,57,58,61,61,12,28,36,38,49,65,67,75,85,13,14,16,17,26,29,37,43,51,66,71,76,78,90,91,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,19,20,83,84,93,83,84,12,19,20,25,26,27,28,29,31,38,40,41,42,44,49,57,58,67,69,70,72,72,75,78,83,84,85,88,90,91,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,74,74,19,20,78,83,84,90,91,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,97,0,0,0,0,0,0,0,0,0,0,0,0,99,0,99,97,0,97,0,0,0,0,0,0,0,0,0,0,98,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,96,97,98,99,102,104,105,106,107,108,109,110,116,117,118,119,124,125,127,128,129,132,133,134,136,137,138,139,140,144,148,151,152,155,156,157,158,161,162,164,171,172,175,176,185,146,153,146,153,113,114,100,110,111,112,113,114,120,122,123,126,130,131,135,141,143,145,159,160,163,167,168,169,170,177,178,182,183,127,132,133,134,137,138,139,140,141,143,148,151,154,118,127,128,129,133,134,136,171,172,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,111,112,170,175,176,182,183,185,132,135,136,161,163,164,136,165,132,136,161,164,127,132,133,134,137,138,139,140,141,143,148,151,154,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,171,172,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,96,97,98,99,96,97,98,99,0,121,102,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,96,97,98,99,100,96,97,98,99,123,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,115,177,96,132,133,134,141,142,143,151,170,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,178,182,183,102,102,96,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,116,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,130,135,159,163,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,118,117,118,124,184,150,150,121,150,120,121,123,149,150,180,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,0,0,0,180,147,149,150,173,174,179,180,181,147,149,150,173,174,179,180,181,173,174,147,149,150,179,180,181,102,102,104,104,105,105,106,106,107,107,108,108,109,109,110,110,111,111,112,112,113,113,114,114,115,115,116,116,117,117,118,118,119,119,96,96,120,120,121,121,122,122,123,123,124,124,125,125,126,126,127,127,128,128,129,129,130,130,131,131,132,132,133,133,134,134,135,135,136,136,137,137,138,138,139,139,140,140,141,141,142,142,143,143,144,144,145,145,146,146,147,147,148,148,149,149,150,150,151,151,152,152,153,153,154,154,155,155,156,156,157,157,158,158,159,159,160,160,161,161,97,97,98,98,99,99,162,162,163,163,164,164,165,165,166,166,167,167,168,168,169,169,170,170,171,171,172,172,173,173,174,174,175,175,176,176,177,177,178,178,179,179,180,180,181,181,182,182,100,100,183,183,184,184,185,185,102,102,104,104,105,105,106,106,107,107,108,108,109,109,110,110,111,111,112,112,113,113,114,114,115,115,116,116,117,117,118,118,119,119,96,96,120,120,121,121,122,122,123,123,124,124,125,125,126,126,127,127,128,128,129,129,130,130,131,131,132,132,133,133,134,134,135,135,136,136,137,137,138,138,139,139,140,140,141,141,142,142,143,143,144,144,145,145,146,146,147,147,148,148,149,149,150,150,151,151,152,152,153,153,154,154,155,155,156,156,157,157,158,158,159,159,160,160,161,161,97,97,98,98,99,99,162,162,163,163,164,164,165,165,166,166,167,167,168,168,169,169,170,170,171,171,172,172,173,173,174,174,175,175,176,176,177,177,178,178,179,179,180,180,181,181,182,182,100,100,183,183,184,184,185,185,131,160,155,156,161,162,132,133,134,136,161,162,164,155,156,161,162,155,156,161,162,132,133,134,136,161,162,164,134,162,132,133,134,136,161,162,164,100,168,170,182,183,170,177,178,182,183,184,102,102,127,128,129,132,133,136,155,156,157,158,161,162,164,127,128,129,130,132,133,134,135,136,127,128,129,132,133,134,135,136,127,128,129,132,133,134,135,136,143,145,146,147,149,150,151,152,153,154,167,168,169,175,176,178,182,183,184,185,118,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,117,118,119,137,138,139,140,144,151,155,156,157,158,162,164,176,185,105,106,108,109,113,121,129,135,143,158,163,168,170,182,183,133,134,162,133,134,162,133,134,162,111,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,132,135,136,161,163,164,136,165,132,136,161,164,180,100,100,121,129,158,170,182,183,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,171,172,96,97,98,99,100,155,156,157,158,159,161,162,163,164,155,156,157,158,161,162,163,164,155,156,157,158,161,162,163,164,147,149,150,152,153,147,149,150,152,153,147,149,150,153,153,104,120,128,130,141,157,159,167,177,105,106,108,109,118,121,129,135,143,158,163,168,170,182,183,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,96,97,98,99,111,112,175,176,185,175,176,104,111,112,117,118,119,120,121,123,130,132,133,134,136,141,149,150,159,161,162,164,167,170,175,176,177,180,182,183,185,111,112,123,150,180,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,97,98,98,99,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,97,98,99,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,100,100,166,166,111,112,170,175,176,182,183,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,102,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,96,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,97,98,99,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,100,183,184,185,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,197,196,194,195,196,197,194,194,195,195,196,197,194,195,196,197,194,195,194,195,196,197,194,195,196,197,194,195,196,197,196,197,196,197,482,194,195,196,197,194,195,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,221,194,195,196,197,194,195,196,197,483,484,194,195,196,197,483,484,194,195,196,197,485,486,195,485,486,195,194,194,195,195,196,196,197,197,194,194,195,195,196,196,197,197,197,194,195,196,197,194,195,196,197,482,194,195,196,197,194,195,194,195,196,197,194,195,196,197,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,194,195,196,197,0,0,0,205,205,205,205,205,205,0,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,0,205,205,205,0,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,487,205,205,205,205,0,0,205,205,205,205,205,488,488,205,205,205,205,205,205,205,0,0,205,205,205,205,205,205,205,205,205,205,487,205,205,0,0,0,0,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,210,211,212,213,210,210,211,211,212,212,213,213,210,210,211,211,212,212,213,213,210,210,211,212,213,210,211,212,213,213,211,210,211,212,213,210,211,212,213,210,211,212,213,212,211,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,210,211,212,213,212,210,211,212,213,210,211,212,213,210,211,212,213,0,0,0,0,218,218,218,0,0,0,0,0,0,0,0,217,218,219,225,226,227,228,214,214,222,219,228,217,219,214,222,224,223,217,218,219,225,226,227,228,214,219,489,222,223,224,223,227,228,228,228,222,222,222,228,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,217,218,219,225,226,227,228,214,217,218,219,225,226,227,228,214,0,0,225,226,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,218,218,222,224,223,217,218,219,225,226,227,228,214,214,218,217,219,227,228,214,222,224,223,217,218,219,225,226,227,228,214,214,214,228,228,214,214,214,214,214,214,214,214,214,214,227,214,214,214,219,214,228,214,214,214,222,224,223,217,218,219,225,226,227,228,214,219,228,228,219,228,219,219,222,224,223,217,218,219,225,226,227,228,214,223,214,214,217,219,222,222,224,224,223,223,217,217,218,218,219,219,225,225,226,226,227,227,228,228,214,214,222,222,224,224,223,223,217,217,218,218,219,219,225,225,226,226,227,227,228,228,214,214,219,228,228,219,228,227,214,214,226,214,214,214,222,222,223,0,0,0,217,223,217,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,214,489,222,223,228,214,219,228,227,214,214,214,214,227,227,227,227,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,224,223,223,223,218,489,222,223,228,222,0,0,225,217,222,217,218,219,225,226,227,228,214,219,214,214,214,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,228,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,222,224,223,217,218,219,225,226,227,228,214,0,0,490,490,491,491,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,322,323,333,308,259,260,261,262,259,260,261,262,333,308,309,310,332,285,286,288,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,326,283,282,283,282,283,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,329,327,333,333,333,333,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,245,246,274,276,277,278,279,293,295,296,318,329,327,333,329,327,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,311,329,327,259,260,261,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,259,260,259,260,261,262,276,277,278,279,333,283,282,243,290,329,327,304,305,316,250,282,300,327,317,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,283,329,282,327,334,283,282,253,254,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,329,327,283,282,283,282,329,327,283,282,260,261,329,327,329,327,329,327,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,331,311,285,286,288,241,242,245,246,265,271,272,273,276,277,278,279,289,292,295,296,245,246,295,296,329,327,306,307,329,327,329,327,240,240,241,241,242,242,243,243,244,244,245,245,246,246,247,247,248,248,249,249,250,250,251,251,252,252,253,253,254,254,255,255,256,256,257,257,258,258,259,259,260,260,261,261,262,262,263,263,264,264,265,265,266,266,267,267,268,268,269,269,270,270,271,271,272,272,273,273,274,274,275,275,276,276,277,277,278,278,279,279,280,280,281,281,282,282,283,283,284,284,285,285,286,286,287,287,288,288,289,289,290,290,291,291,292,292,293,293,294,294,295,295,296,296,297,297,298,298,299,299,300,300,301,301,302,302,303,303,304,304,305,305,306,306,307,307,308,308,309,309,310,310,311,311,312,312,313,313,314,314,315,315,316,316,317,317,318,318,319,319,320,320,321,321,322,322,323,323,324,324,325,325,326,326,327,327,328,328,329,329,330,330,331,331,332,332,333,333,334,334,335,335,336,336,240,240,241,241,242,242,243,243,244,244,245,245,246,246,247,247,248,248,249,249,250,250,251,251,252,252,253,253,254,254,255,255,256,256,257,257,258,258,259,259,260,260,261,261,262,262,263,263,264,264,265,265,266,266,267,267,268,268,269,269,270,270,271,271,272,272,273,273,274,274,275,275,276,276,277,277,278,278,279,279,280,280,281,281,282,282,283,283,284,284,285,285,286,286,287,287,288,288,289,289,290,290,291,291,292,292,293,293,294,294,295,295,296,296,297,297,298,298,299,299,300,300,301,301,302,302,303,303,304,304,305,305,306,306,307,307,308,308,309,309,310,310,311,311,312,312,313,313,314,314,315,315,316,316,317,317,318,318,319,319,320,320,321,321,322,322,323,323,324,324,325,325,326,326,327,327,328,328,329,329,330,330,331,331,332,332,333,333,334,334,335,335,336,336,329,327,283,282,283,282,329,327,283,282,327,327,327,327,327,283,282,251,301,276,277,278,279,245,246,295,296,266,259,260,261,262,256,257,315,283,282,263,264,284,285,286,287,288,245,246,295,296,276,277,266,260,276,277,278,279,259,260,261,262,256,257,267,256,283,282,256,329,327,333,251,283,301,322,323,328,329,282,300,318,327,329,327,329,327,253,304,283,329,282,327,282,327,301,300,244,275,294,246,276,277,278,279,295,296,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,276,277,320,321,322,323,283,320,321,322,323,283,329,282,327,283,282,311,312,314,259,278,279,260,261,262,276,277,261,262,259,260,261,262,283,276,277,278,279,309,310,329,250,282,300,327,327,282,327,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,333,245,246,276,278,295,296,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,320,321,322,323,327,283,282,283,282,283,282,283,282,283,282,283,244,245,246,276,277,278,279,294,295,296,272,329,282,327,329,282,327,329,282,327,259,283,282,318,318,334,333,320,322,255,256,257,258,255,256,257,258,329,327,329,327,320,321,322,323,326,328,329,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,334,333,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,329,327,0,0,0,0,0,0,0,0,0,0,0,0,0,0,337,337,0,0,0,0,0,0,0,0,0,0,0,0,0,337,0,0,337,0,337,0,0,0,0,0,0,337,0,0,0,0,0,0,0,0,0,0,337,337,0,0,0,0,0,0,337,375,375,378,379,380,378,379,380,387,388,354,377,353,354,376,377,353,354,376,377,353,376,354,377,354,377,350,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,353,354,364,355,356,364,338,355,356,365,355,356,366,375,367,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,339,386,387,388,350,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,350,381,382,383,378,379,380,381,382,383,381,382,383,372,372,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,337,337,381,382,383,350,360,360,361,361,352,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,387,339,386,387,388,350,350,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,337,379,380,382,383,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,380,0,0,359,368,368,337,378,379,380,363,370,376,377,374,348,349,348,349,340,341,342,337,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,378,379,380,384,385,385,339,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,359,348,349,357,358,359,359,368,379,380,382,383,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,353,354,359,376,377,353,354,359,376,377,353,354,376,377,353,354,359,366,367,368,369,376,377,381,382,383,353,354,359,366,367,368,369,376,377,381,382,383,386,387,388,358,350,386,387,388,357,358,338,348,349,338,338,338,339,339,386,386,387,387,388,388,340,340,341,341,342,342,343,343,344,344,345,345,346,346,347,347,348,348,349,349,350,350,351,351,352,352,353,353,354,354,355,355,356,356,337,337,357,357,358,358,359,359,360,360,361,361,362,362,363,363,364,364,365,365,366,366,367,367,368,368,369,369,370,370,371,371,372,372,373,373,374,374,375,375,376,376,377,377,378,378,379,379,380,380,381,381,382,382,383,383,384,384,385,385,338,338,339,339,386,386,387,387,388,388,340,340,341,341,342,342,343,343,344,344,345,345,346,346,347,347,348,348,349,349,350,350,351,351,352,352,353,353,354,354,355,355,356,356,337,337,357,357,358,358,359,359,360,360,361,361,362,362,363,363,364,364,365,365,366,366,367,367,368,368,369,369,370,370,371,371,372,372,373,373,374,374,375,375,376,376,377,377,378,378,379,379,380,380,381,381,382,382,383,383,384,384,385,385,345,346,347,346,347,347,345,346,347,381,382,383,378,379,380,345,345,346,347,345,346,347,345,346,347,361,338,339,340,341,342,343,344,355,356,357,358,360,361,371,372,374,378,379,380,384,385,370,370,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,345,346,347,348,349,356,361,365,378,379,380,351,352,378,379,380,362,363,362,363,362,363,372,348,349,362,363,364,349,372,348,349,349,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,364,364,366,367,368,369,370,371,373,374,375,361,366,367,366,367,386,387,388,343,344,345,346,347,348,349,350,358,366,367,375,378,379,380,378,379,380,378,379,380,343,344,345,346,347,355,356,364,367,338,355,356,365,355,356,366,375,367,367,351,352,351,352,355,356,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,381,382,383,378,379,380,381,382,383,381,382,383,345,346,347,373,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,365,365,365,369,370,371,370,338,348,349,338,343,344,359,368,348,349,350,380,383,359,368,368,388,345,346,347,345,346,347,347,345,346,347,381,382,383,378,379,380,374,345,345,346,347,374,361,352,380,383,345,346,347,337,381,382,383,385,339,386,387,388,343,344,350,351,352,357,358,360,362,363,340,341,342,374,374,350,350,374,374,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,352,352,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,338,339,386,387,388,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,337,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,0,0,0,0,0,0,0,0,412,412,408,410,404,406,407,408,410,412,238,407,408,408,410,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,410,410,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,412,412,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,408,410,238,404,406,407,408,410,412,238,238,0,404,406,407,408,410,412,238,404,406,407,408,410,412,238,412,0,0,0,0,0,0,404,404,406,406,407,407,408,408,410,410,412,412,238,238,404,404,406,406,407,407,408,408,410,410,412,412,238,238,404,406,407,408,410,492,238,492,238,492,238,492,238,492,238,492,238,492,238,404,406,407,408,410,404,406,407,410,408,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,0,407,408,407,0,404,408,404,406,407,408,410,412,238,404,406,407,408,410,412,238,406,412,407,408,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,408,407,407,407,404,406,407,408,410,412,238,404,406,407,408,410,412,238,404,406,407,408,410,412,238,398,440,440,440,440,440,440,440,440,440,440,440,0,0,233,431,431,449,0,436,233,431,431,449,0,0,0,0,0,401,398,0,0,0,398,0,0,0,0,0,0,0,0,0,455,0,493,421,460,440,0,477,0,440,440,440,0,440,0,493,396,0,477,446,494,0,477,0,477,396,448,460,436,455,0,0,0,0,0,0,0,0,0,0,0,0,0,0,493,396,0,0,0,436,0,0,0,440,440,440,440,440,440,0,0,0,440,440,440,440,0,0,0,493,421,0,0,444,0,0,0,0,0,0,0,0,455,0,0,440,440,440,440,440,440,440,440,440,440,440,440,0,0,0,440,0,440,440,440,0,396,448,396,448,0,460,444,0,0,0,0,0,0,401,440,440,440,440,440,440,440,0,0,0,0,440,440,440,440,0,0,446,0,402,444,0,440,440,440,444,444,0,402,440,0,440,440,440,440,0,0,440,440,0,440,440,440,0,440,440,0,440,440,440,440,0,477,402,446,0,0,0,215,418,405,440,441,416,415,432,237,235,438,426,442,443,435,444,445,421,428,446,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,441,416,473,0,0,415,416,236,418,418,418,418,418,235,405,235,215,405,418,418,418,418,418,423,423,423,423,405,215,235,215,215,424,424,424,424,425,422,429,236,235,235,235,235,215,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,0,0,426,426,237,236,236,236,235,235,235,427,237,442,457,418,416,441,428,429,236,235,236,429,429,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,423,235,452,215,405,441,416,442,236,457,473,451,423,405,405,416,441,416,441,416,405,441,416,405,405,429,429,429,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,434,434,215,418,418,418,418,0,418,215,415,434,423,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,425,425,438,438,465,422,215,418,405,440,441,416,415,432,237,235,438,426,442,443,435,444,445,421,428,446,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,418,405,440,441,416,415,432,237,235,438,426,442,443,435,444,445,421,428,446,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,0,215,215,215,236,435,395,494,453,418,405,432,432,235,235,424,418,418,418,418,418,494,453,432,432,237,235,438,395,398,459,423,441,236,459,459,459,459,459,459,441,416,215,215,215,215,215,405,215,215,235,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,417,420,441,432,237,235,438,435,395,444,421,425,422,396,448,398,233,431,449,427,456,401,402,460,423,444,421,396,448,398,233,431,449,401,402,460,0,434,445,215,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,423,215,215,418,441,441,441,441,441,441,441,425,424,235,426,236,215,215,418,418,436,435,444,421,446,422,396,448,398,233,431,449,455,401,402,460,435,435,421,421,422,422,396,396,448,448,398,398,233,233,431,431,449,449,455,455,401,401,402,402,460,460,236,454,427,456,418,418,418,415,416,422,423,461,215,426,0,405,405,405,236,236,236,215,236,451,418,451,426,426,418,0,0,215,215,215,215,405,440,441,415,432,237,235,438,426,442,443,435,395,421,422,396,448,398,233,431,449,454,427,456,236,457,458,459,423,215,442,236,457,451,451,418,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,496,231,462,418,418,415,215,456,461,441,416,452,236,236,464,473,215,441,416,426,442,443,445,236,457,458,426,236,405,0,0,466,433,437,235,235,235,494,453,418,452,418,441,441,416,237,237,438,423,428,236,441,432,494,453,432,215,215,215,432,433,437,473,434,461,464,429,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,236,236,215,236,496,415,428,451,236,405,405,423,215,215,215,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,468,467,233,432,237,235,438,237,235,438,432,423,423,416,452,422,423,215,442,236,457,428,451,416,432,464,405,416,416,465,233,233,233,442,236,457,423,423,405,423,466,215,405,416,432,237,235,438,426,442,443,435,445,428,425,422,447,424,450,451,452,453,454,427,456,236,457,458,459,423,451,452,428,428,405,424,425,422,459,215,434,445,459,445,450,452,215,497,497,497,0,433,437,215,433,437,215,236,235,433,433,437,437,473,473,434,434,461,461,464,464,429,429,495,495,466,466,468,468,465,465,493,493,467,467,215,215,418,418,405,405,440,440,436,436,441,441,416,416,415,415,432,432,237,237,235,235,438,438,426,426,442,442,443,443,435,435,395,395,444,444,445,445,421,421,428,428,446,446,477,477,425,425,422,422,447,447,424,424,396,396,448,448,398,398,233,233,431,431,449,449,450,450,451,451,452,452,453,453,454,454,455,455,427,427,456,456,236,236,457,457,458,458,459,459,401,401,402,402,460,460,423,423,433,433,437,437,473,473,434,434,461,461,464,464,429,429,495,495,466,466,468,468,465,465,493,493,467,467,215,215,418,418,405,405,440,440,436,436,441,441,416,416,415,415,432,432,237,237,235,235,438,438,426,426,442,442,443,443,435,435,395,395,444,444,445,445,421,421,428,428,446,446,477,477,425,425,422,422,447,447,424,424,396,396,448,448,398,398,233,233,431,431,449,449,450,450,451,451,452,452,453,453,454,454,455,455,427,427,456,456,236,236,457,457,458,458,459,459,401,401,402,402,460,460,423,423,236,237,237,215,236,236,215,236,215,215,215,215,215,215,427,427,423,427,236,423,427,427,427,423,427,427,235,438,237,235,442,443,457,458,428,428,465,423,423,236,415,451,465,215,423,423,435,395,450,416,236,451,215,215,426,445,215,405,405,467,215,416,442,236,457,215,441,416,442,236,457,432,215,215,236,465,215,215,215,441,416,468,467,425,422,431,427,456,0,429,468,467,441,416,428,450,451,495,466,428,451,428,451,426,235,236,237,442,0,0,442,405,461,215,426,236,215,236,0,0,0,215,236,457,457,236,0,434,0,456,431,495,451,451,422,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,405,441,416,426,442,443,445,428,452,236,457,458,473,441,416,422,456,422,456,215,405,441,416,432,237,235,425,422,451,454,427,459,423,438,426,442,457,438,442,422,427,457,441,427,236,441,236,441,441,441,441,465,423,416,467,452,452,465,422,415,415,418,418,236,418,415,415,415,441,418,418,418,418,418,418,441,416,235,441,405,215,236,452,433,236,465,237,237,215,0,425,423,432,465,434,445,427,422,466,423,423,423,468,467,452,0,0,438,422,427,456,428,237,236,235,235,235,237,442,457,0,215,215,235,235,235,235,235,235,235,416,465,215,442,236,457,426,442,236,457,423,215,215,423,428,451,428,451,418,235,428,451,215,405,441,416,432,237,235,438,426,442,443,435,445,428,425,422,451,452,427,236,457,458,459,423,441,428,459,459,418,452,428,428,428,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,405,465,423,453,427,456,236,441,432,237,235,438,435,395,444,421,425,422,396,448,398,233,431,449,427,456,401,402,460,423,441,415,415,415,418,418,418,418,405,457,0,0,457,416,494,453,236,494,453,416,423,236,236,236,235,235,236,236,235,235,236,236,236,235,467,428,431,449,456,465,456,438,438,473,236,0,461,423,437,441,464,459,215,236,459,215,236,423,466,0,0,425,422,424,427,235,427,423,427,236,423,423,235,427,427,235,437,423,423,416,416,405,465,465,422,422,427,456,395,215,418,405,440,441,416,415,432,237,235,438,426,442,443,435,444,445,421,428,446,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,396,418,418,415,415,418,215,418,215,441,415,415,418,215,432,426,464,464,415,418,418,418,418,418,441,215,405,441,426,442,443,445,428,452,236,457,458,215,405,441,426,442,443,445,428,452,236,457,458,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,421,428,446,477,477,425,422,447,424,396,396,448,448,398,398,233,233,431,431,449,449,450,451,452,453,454,455,455,427,427,427,456,456,456,236,457,458,459,401,401,402,402,460,460,423,421,477,396,448,398,233,431,449,455,401,402,460,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,441,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,432,235,235,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,459,215,236,215,215,451,215,235,0,461,215,215,215,426,215,426,405,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,215,215,215,215,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,433,437,473,434,461,464,429,495,466,468,465,493,467,215,418,405,440,436,441,416,415,432,237,235,438,426,442,443,435,395,444,445,421,428,446,477,425,422,447,424,396,448,398,233,431,449,450,451,452,453,454,455,427,456,236,457,458,459,401,402,460,423,415,215,498,499,498,498,500,499,498,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,478,479,479,480,480,481,481,478,478,479,479,480,480,481,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,478,479,480,481,0,0],"f":[0,0,[1],0,0,0,0,0,[[]],0,[[]],[[]],[[]],[2,3],[[],4],[[],4],[5,5],[[]],[6],[6],[6],[2,7],0,0,0,0,[[]],0,0,0,[[],2],[[],2],[[],6],0,[[]],0,[[],4],[[],4],[[]],[[]],0,0,[[]],[[]],0,0,0,[[]],[[]],0,0,0,[[]],[[],8],[[],8],[[],9],0,[[]],[[]],0,[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[10,[[8,[11]]]],[12,[[8,[11]]]],[13,[[8,[11]]]],[14,[[8,[11]]]],[15,[[8,[11]]]],[16,[[8,[11]]]],[17,[[8,[11]]]],[18,[[8,[11]]]],[19,[[8,[11]]]],[20,[[8,[11]]]],[21,[[8,[11]]]],[22,[[8,[11]]]],[23,[[8,[11]]]],[24,[[8,[11]]]],[25,[[8,[11]]]],[26,[[8,[11]]]],[27,[[8,[11]]]],[28,[[8,[11]]]],[29,[[8,[11]]]],[30,[[8,[11]]]],[31,[[8,[11]]]],[32,[[8,[11]]]],[33,[[8,[11]]]],[34,[[8,[11]]]],[35,[[8,[11]]]],[36,[[8,[11]]]],[37,[[8,[11]]]],[38,[[8,[11]]]],[39,[[8,[11]]]],[40,[[8,[11]]]],[41,[[8,[11]]]],[42,[[8,[11]]]],[43,[[8,[11]]]],[44,[[8,[11]]]],[45,[[8,[11]]]],[46,[[8,[11]]]],[47,[[8,[11]]]],[48,[[8,[11]]]],[49,[[8,[11]]]],[50,[[8,[11]]]],[51,[[8,[11]]]],[52,[[8,[11]]]],[53,[[8,[11]]]],[54,[[8,[11]]]],[55,[[8,[11]]]],[56,[[8,[11]]]],[57,[[8,[11]]]],[58,[[8,[11]]]],[59,[[8,[11]]]],[60,[[8,[11]]]],[61,[[8,[11]]]],[62,[[8,[11]]]],[63,[[8,[11]]]],[64,[[8,[11]]]],[65,[[8,[11]]]],[66,[[8,[11]]]],[67,[[8,[11]]]],[68,[[8,[11]]]],[69,[[8,[11]]]],[70,[[8,[11]]]],[71,[[8,[11]]]],[72,[[8,[11]]]],[73,[[8,[11]]]],[74,[[8,[11]]]],[75,[[8,[11]]]],[76,[[8,[11]]]],[77,[[8,[11]]]],[78,[[8,[11]]]],[79,[[8,[11]]]],[80,[[8,[11]]]],[81,[[8,[11]]]],[82,[[8,[11]]]],[83,[[8,[11]]]],[84,[[8,[11]]]],[85,[[8,[11]]]],[86,[[8,[11]]]],[87,[[8,[11]]]],[88,[[8,[11]]]],[89,[[8,[11]]]],[90,[[8,[11]]]],[91,[[8,[11]]]],[92,[[8,[11]]]],[93,[[8,[11]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[10,[4,[3]]],[[95,[94]]]],[[12,[4,[3]]],[[95,[94]]]],[[13,[4,[3]]],[[95,[94]]]],[[14,[4,[3]]],[[95,[94]]]],[[15,[4,[3]]],[[95,[94]]]],[[16,[4,[3]]],[[95,[94]]]],[[17,[4,[3]]],[[95,[94]]]],[[18,[4,[3]]],[[95,[94]]]],[[19,[4,[3]]],[[95,[94]]]],[[20,[4,[3]]],[[95,[94]]]],[[21,[4,[3]]],[[95,[94]]]],[[22,[4,[3]]],[[95,[94]]]],[[23,[4,[3]]],[[95,[94]]]],[[24,[4,[3]]],[[95,[94]]]],[[25,[4,[3]]],[[95,[94]]]],[[26,[4,[3]]],[[95,[94]]]],[[27,[4,[3]]],[[95,[94]]]],[[28,[4,[3]]],[[95,[94]]]],[[29,[4,[3]]],[[95,[94]]]],[[30,[4,[3]]],[[95,[94]]]],[[31,[4,[3]]],[[95,[94]]]],[[32,[4,[3]]],[[95,[94]]]],[[33,[4,[3]]],[[95,[94]]]],[[34,[4,[3]]],[[95,[94]]]],[[35,[4,[3]]],[[95,[94]]]],[[36,[4,[3]]],[[95,[94]]]],[[37,[4,[3]]],[[95,[94]]]],[[38,[4,[3]]],[[95,[94]]]],[[39,[4,[3]]],[[95,[94]]]],[[40,[4,[3]]],[[95,[94]]]],[[41,[4,[3]]],[[95,[94]]]],[[42,[4,[3]]],[[95,[94]]]],[[43,[4,[3]]],[[95,[94]]]],[[44,[4,[3]]],[[95,[94]]]],[[45,[4,[3]]],[[95,[94]]]],[[46,[4,[3]]],[[95,[94]]]],[[47,[4,[3]]],[[95,[94]]]],[[48,[4,[3]]],[[95,[94]]]],[[49,[4,[3]]],[[95,[94]]]],[[50,[4,[3]]],[[95,[94]]]],[[51,[4,[3]]],[[95,[94]]]],[[52,[4,[3]]],[[95,[94]]]],[[53,[4,[3]]],[[95,[94]]]],[[54,[4,[3]]],[[95,[94]]]],[[55,[4,[3]]],[[95,[94]]]],[[56,[4,[3]]],[[95,[94]]]],[[57,[4,[3]]],[[95,[94]]]],[[58,[4,[3]]],[[95,[94]]]],[[59,[4,[3]]],[[95,[94]]]],[[60,[4,[3]]],[[95,[94]]]],[[61,[4,[3]]],[[95,[94]]]],[[62,[4,[3]]],[[95,[94]]]],[[63,[4,[3]]],[[95,[94]]]],[[64,[4,[3]]],[[95,[94]]]],[[65,[4,[3]]],[[95,[94]]]],[[66,[4,[3]]],[[95,[94]]]],[[67,[4,[3]]],[[95,[94]]]],[[68,[4,[3]]],[[95,[94]]]],[[69,[4,[3]]],[[95,[94]]]],[[70,[4,[3]]],[[95,[94]]]],[[71,[4,[3]]],[[95,[94]]]],[[72,[4,[3]]],[[95,[94]]]],[[73,[4,[3]]],[[95,[94]]]],[[74,[4,[3]]],[[95,[94]]]],[[75,[4,[3]]],[[95,[94]]]],[[76,[4,[3]]],[[95,[94]]]],[[77,[4,[3]]],[[95,[94]]]],[[78,[4,[3]]],[[95,[94]]]],[[79,[4,[3]]],[[95,[94]]]],[[80,[4,[3]]],[[95,[94]]]],[[81,[4,[3]]],[[95,[94]]]],[[82,[4,[3]]],[[95,[94]]]],[[83,[4,[3]]],[[95,[94]]]],[[84,[4,[3]]],[[95,[94]]]],[[85,[4,[3]]],[[95,[94]]]],[[86,[4,[3]]],[[95,[94]]]],[[87,[4,[3]]],[[95,[94]]]],[[88,[4,[3]]],[[95,[94]]]],[[89,[4,[3]]],[[95,[94]]]],[[90,[4,[3]]],[[95,[94]]]],[[91,[4,[3]]],[[95,[94]]]],[[92,[4,[3]]],[[95,[94]]]],[[93,[4,[3]]],[[95,[94]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[1],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[96,96],[97,97],[98,98],[99,99],[[]],[[]],[[]],[[]],0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[96,11]]]],[[],[[8,[97,11]]]],[[],[[8,[98,11]]]],[[],[[8,[99,11]]]],[[],[[8,[100,11]]]],[101,[[8,[96,11]]]],[101,[[8,[97,11]]]],[101,[[8,[98,11]]]],[101,[[8,[99,11]]]],0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[96,96],3],0,0,0,0,0,0,0,0,[[102,2],103],[[104,2],103],[[105,2],103],[[106,2],103],[[107,2],103],[[108,2],103],[[109,2],103],[[110,2],103],[[111,2],103],[[112,2],103],[[113,2],103],[[114,2],103],[[115,2],103],[[116,2],103],[[117,2],103],[[118,2],103],[[119,2],103],[[120,2],103],[[121,2],103],[[122,2],103],[[123,2],103],[[124,2],103],[[125,2],103],[[126,2],103],[[127,2],103],[[128,2],103],[[129,2],103],[[130,2],103],[[131,2],103],[[132,2],103],[[133,2],103],[[134,2],103],[[135,2],103],[[136,2],103],[[137,2],103],[[138,2],103],[[139,2],103],[[140,2],103],[[141,2],103],[[142,2],103],[[143,2],103],[[144,2],103],[[145,2],103],[[146,2],103],[[147,2],103],[[148,2],103],[[149,2],103],[[150,2],103],[[151,2],103],[[152,2],103],[[153,2],103],[[154,2],103],[[155,2],103],[[156,2],103],[[157,2],103],[[158,2],103],[[159,2],103],[[160,2],103],[[161,2],103],[[162,2],103],[[163,2],103],[[164,2],103],[[165,2],103],[[166,2],103],[[167,2],103],[[168,2],103],[[169,2],103],[[170,2],103],[[171,2],103],[[172,2],103],[[173,2],103],[[174,2],103],[[175,2],103],[[176,2],103],[[177,2],103],[[178,2],103],[[179,2],103],[[180,2],103],[[181,2],103],[[182,2],103],[[183,2],103],[[184,2],103],[[185,2],103],0,0,0,0,0,[[96,186],187],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[96,[[8,[11]]]],[97,[[8,[11]]]],[98,[[8,[11]]]],[99,[[8,[11]]]],[100,[[8,[11]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[102,[[95,[188]]]],[104,[[95,[188]]]],[105,[[95,[188]]]],[106,[[95,[188]]]],[107,[[95,[188]]]],[108,[[95,[188]]]],[109,[[95,[188]]]],[110,[[95,[188]]]],[111,[[95,[188]]]],[112,[[95,[188]]]],[113,[[95,[188]]]],[114,[[95,[188]]]],[115,[[95,[188]]]],[116,[[95,[188]]]],[117,[[95,[188]]]],[118,[[95,[188]]]],[119,[[95,[188]]]],[120,[[95,[188]]]],[121,[[95,[188]]]],[122,[[95,[188]]]],[123,[[95,[188]]]],[124,[[95,[188]]]],[125,[[95,[188]]]],[126,[[95,[188]]]],[127,[[95,[188]]]],[128,[[95,[188]]]],[129,[[95,[188]]]],[130,[[95,[188]]]],[131,[[95,[188]]]],[132,[[95,[188]]]],[133,[[95,[188]]]],[134,[[95,[188]]]],[135,[[95,[188]]]],[136,[[95,[188]]]],[137,[[95,[188]]]],[138,[[95,[188]]]],[139,[[95,[188]]]],[140,[[95,[188]]]],[141,[[95,[188]]]],[142,[[95,[188]]]],[143,[[95,[188]]]],[144,[[95,[188]]]],[145,[[95,[188]]]],[146,[[95,[188]]]],[147,[[95,[188]]]],[148,[[95,[188]]]],[149,[[95,[188]]]],[150,[[95,[188]]]],[151,[[95,[188]]]],[152,[[95,[188]]]],[153,[[95,[188]]]],[154,[[95,[188]]]],[155,[[95,[188]]]],[156,[[95,[188]]]],[157,[[95,[188]]]],[158,[[95,[188]]]],[159,[[95,[188]]]],[160,[[95,[188]]]],[161,[[95,[188]]]],[162,[[95,[188]]]],[163,[[95,[188]]]],[164,[[95,[188]]]],[165,[[95,[188]]]],[166,[[95,[188]]]],[167,[[95,[188]]]],[168,[[95,[188]]]],[169,[[95,[188]]]],[170,[[95,[188]]]],[171,[[95,[188]]]],[172,[[95,[188]]]],[173,[[95,[188]]]],[174,[[95,[188]]]],[175,[[95,[188]]]],[176,[[95,[188]]]],[177,[[95,[188]]]],[178,[[95,[188]]]],[179,[[95,[188]]]],[180,[[95,[188]]]],[181,[[95,[188]]]],[182,[[95,[188]]]],[183,[[95,[188]]]],[184,[[95,[188]]]],[185,[[95,[188]]]],[[102,[4,[3]]],[[95,[94]]]],[[104,[4,[3]]],[[95,[94]]]],[[105,[4,[3]]],[[95,[94]]]],[[106,[4,[3]]],[[95,[94]]]],[[107,[4,[3]]],[[95,[94]]]],[[108,[4,[3]]],[[95,[94]]]],[[109,[4,[3]]],[[95,[94]]]],[[110,[4,[3]]],[[95,[94]]]],[[111,[4,[3]]],[[95,[94]]]],[[112,[4,[3]]],[[95,[94]]]],[[113,[4,[3]]],[[95,[94]]]],[[114,[4,[3]]],[[95,[94]]]],[[115,[4,[3]]],[[95,[94]]]],[[116,[4,[3]]],[[95,[94]]]],[[117,[4,[3]]],[[95,[94]]]],[[118,[4,[3]]],[[95,[94]]]],[[119,[4,[3]]],[[95,[94]]]],[[120,[4,[3]]],[[95,[94]]]],[[121,[4,[3]]],[[95,[94]]]],[[122,[4,[3]]],[[95,[94]]]],[[123,[4,[3]]],[[95,[94]]]],[[124,[4,[3]]],[[95,[94]]]],[[125,[4,[3]]],[[95,[94]]]],[[126,[4,[3]]],[[95,[94]]]],[[127,[4,[3]]],[[95,[94]]]],[[128,[4,[3]]],[[95,[94]]]],[[129,[4,[3]]],[[95,[94]]]],[[130,[4,[3]]],[[95,[94]]]],[[131,[4,[3]]],[[95,[94]]]],[[132,[4,[3]]],[[95,[94]]]],[[133,[4,[3]]],[[95,[94]]]],[[134,[4,[3]]],[[95,[94]]]],[[135,[4,[3]]],[[95,[94]]]],[[136,[4,[3]]],[[95,[94]]]],[[137,[4,[3]]],[[95,[94]]]],[[138,[4,[3]]],[[95,[94]]]],[[139,[4,[3]]],[[95,[94]]]],[[140,[4,[3]]],[[95,[94]]]],[[141,[4,[3]]],[[95,[94]]]],[[142,[4,[3]]],[[95,[94]]]],[[143,[4,[3]]],[[95,[94]]]],[[144,[4,[3]]],[[95,[94]]]],[[145,[4,[3]]],[[95,[94]]]],[[146,[4,[3]]],[[95,[94]]]],[[147,[4,[3]]],[[95,[94]]]],[[148,[4,[3]]],[[95,[94]]]],[[149,[4,[3]]],[[95,[94]]]],[[150,[4,[3]]],[[95,[94]]]],[[151,[4,[3]]],[[95,[94]]]],[[152,[4,[3]]],[[95,[94]]]],[[153,[4,[3]]],[[95,[94]]]],[[154,[4,[3]]],[[95,[94]]]],[[155,[4,[3]]],[[95,[94]]]],[[156,[4,[3]]],[[95,[94]]]],[[157,[4,[3]]],[[95,[94]]]],[[158,[4,[3]]],[[95,[94]]]],[[159,[4,[3]]],[[95,[94]]]],[[160,[4,[3]]],[[95,[94]]]],[[161,[4,[3]]],[[95,[94]]]],[[162,[4,[3]]],[[95,[94]]]],[[163,[4,[3]]],[[95,[94]]]],[[164,[4,[3]]],[[95,[94]]]],[[165,[4,[3]]],[[95,[94]]]],[[166,[4,[3]]],[[95,[94]]]],[[167,[4,[3]]],[[95,[94]]]],[[168,[4,[3]]],[[95,[94]]]],[[169,[4,[3]]],[[95,[94]]]],[[170,[4,[3]]],[[95,[94]]]],[[171,[4,[3]]],[[95,[94]]]],[[172,[4,[3]]],[[95,[94]]]],[[173,[4,[3]]],[[95,[94]]]],[[174,[4,[3]]],[[95,[94]]]],[[175,[4,[3]]],[[95,[94]]]],[[176,[4,[3]]],[[95,[94]]]],[[177,[4,[3]]],[[95,[94]]]],[[178,[4,[3]]],[[95,[94]]]],[[179,[4,[3]]],[[95,[94]]]],[[180,[4,[3]]],[[95,[94]]]],[[181,[4,[3]]],[[95,[94]]]],[[182,[4,[3]]],[[95,[94]]]],[[183,[4,[3]]],[[95,[94]]]],[[184,[4,[3]]],[[95,[94]]]],[[185,[4,[3]]],[[95,[94]]]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[111,[[190,[189]]]],[112,[[190,[189]]]],[123,[[190,[189]]]],[150,[[190,[189]]]],[180,[[190,[189]]]],[185,[[190,[189]]]],[[2,191,192],[[103,[102]]]],[[2,191,192],[[103,[104]]]],[[2,191,192],[[103,[105]]]],[[2,191,192],[[103,[106]]]],[[2,191,192],[[103,[107]]]],[[2,191,192],[[103,[108]]]],[[2,191,192],[[103,[109]]]],[[2,191,192],[[103,[110]]]],[[2,191,192],[[103,[111]]]],[[2,191,192],[[103,[112]]]],[[2,191,192],[[103,[113]]]],[[2,191,192],[[103,[114]]]],[[2,191,192],[[103,[115]]]],[[2,191,192],[[103,[116]]]],[[2,191,192],[[103,[117]]]],[[2,191,192],[[103,[118]]]],[[2,191,192],[[103,[119]]]],[[2,191,192],[[103,[120]]]],[[2,191,192],[[103,[121]]]],[[2,191,192],[[103,[122]]]],[[2,191,192],[[103,[123]]]],[[2,191,192],[[103,[124]]]],[[2,191,192],[[103,[125]]]],[[2,191,192],[[103,[126]]]],[[2,191,192],[[103,[127]]]],[[2,191,192],[[103,[128]]]],[[2,191,192],[[103,[129]]]],[[2,191,192],[[103,[130]]]],[[2,191,192],[[103,[131]]]],[[2,191,192],[[103,[132]]]],[[2,191,192],[[103,[133]]]],[[2,191,192],[[103,[134]]]],[[2,191,192],[[103,[135]]]],[[2,191,192],[[103,[136]]]],[[2,191,192],[[103,[137]]]],[[2,191,192],[[103,[138]]]],[[2,191,192],[[103,[139]]]],[[2,191,192],[[103,[140]]]],[[2,191,192],[[103,[141]]]],[[2,191,192],[[103,[142]]]],[[2,191,192],[[103,[143]]]],[[2,191,192],[[103,[144]]]],[[2,191,192],[[103,[145]]]],[[2,191,192],[[103,[146]]]],[[2,191,192],[[103,[147]]]],[[2,191,192],[[103,[148]]]],[[2,191,192],[[103,[149]]]],[[2,191,192],[[103,[150]]]],[[2,191,192],[[103,[151]]]],[[2,191,192],[[103,[152]]]],[[2,191,192],[[103,[153]]]],[[2,191,192],[[103,[154]]]],[[2,191,192],[[103,[155]]]],[[2,191,192],[[103,[156]]]],[[2,191,192],[[103,[157]]]],[[2,191,192],[[103,[158]]]],[[2,191,192],[[103,[159]]]],[[2,191,192],[[103,[160]]]],[[2,191,192],[[103,[161]]]],[[2,191,192],[[103,[162]]]],[[2,191,192],[[103,[163]]]],[[2,191,192],[[103,[164]]]],[[2,191,192],[[103,[165]]]],[[2,191,192],[[103,[166]]]],[[2,191,192],[[103,[167]]]],[[2,191,192],[[103,[168]]]],[[2,191,192],[[103,[169]]]],[[2,191,192],[[103,[170]]]],[[2,191,192],[[103,[171]]]],[[2,191,192],[[103,[172]]]],[[2,191,192],[[103,[173]]]],[[2,191,192],[[103,[174]]]],[[2,191,192],[[103,[175]]]],[[2,191,192],[[103,[176]]]],[[2,191,192],[[103,[177]]]],[[2,191,192],[[103,[178]]]],[[2,191,192],[[103,[179]]]],[[2,191,192],[[103,[180]]]],[[2,191,192],[[103,[181]]]],[[2,191,192],[[103,[182]]]],[[2,191,192],[[103,[183]]]],[[2,191,192],[[103,[184]]]],[[2,191,192],[[103,[185]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[97,[193,[97]]]]]],[[],8],[[],8],[101,[[8,[98,[193,[98]]]]]],[[],8],[101,[[8,[99,[193,[99]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],[[8,[97,[193,[97]]]]]],[[],[[8,[98,[193,[98]]]]]],[[],[[8,[99,[193,[99]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,0,0,0,0,0,0,0,0,0,[1],[1],0,[[]],[[]],[[]],[[]],[[]],[188,[[103,[194]]]],[[]],[188,[[103,[195]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[103,[[95,[194]]]]]],[[],[[103,[[95,[195]]]]]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[196,196],[197,197],[[]],[[]],[[]],[194],[195],[196],[197],0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[],2],[194,2],[195,2],[196,2],[197,2],0,0,0,0,[[],103],[[],[[103,[[200,[[0,[198,199]]]]]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],103],[[],[[103,[[200,[[0,[198,199]]]]]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],[[8,[201]]]],[[],103],[[],[[103,[[202,[[0,[198,199]]]]]]]],[195,103],[[],103],[[],[[103,[[202,[[0,[198,199]]]]]]]],[195,103],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[2,203],197],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],2],[194,2],[195,2],[196,2],[197,2],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[2,3],[[188,188,188,[95,[2]]],[[8,[204]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[[]],[[]],[[]],[[]],[[],4],[[],4],[205,205],[[]],[206],[6],[6],[6],[205,207],0,0,[[205,186],[[8,[208]]]],[[205,186],187],[[]],[[],6],[[]],[207,3],[[],3],[[],4],[[],4],[[]],[[]],[205,209],[[]],[[]],0,0,[[]],[[]],[[]],[[],209],[[],8],[[],8],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[210,[[95,[101]]]],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[210,11]]]],[[],[[8,[211,11]]]],[[],[[8,[212,11]]]],[[],[[8,[213,11]]]],[6],[6],[6],[6],0,[[211,186],187],[[212,186],187],[[213,186],187],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],0,[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[210,[[8,[11]]]],[211,[[8,[11]]]],[212,[[8,[11]]]],[213,[[8,[11]]]],0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[1],[1],[1],[1],[1],[[214,215,216],103],0,0,0,[[217,218],216],[[219,218],216],[214],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[2,6,220],103],[[[222,[221]],2,6,220],103],[[223,2,6,220],103],[[224,220,220],103],[[223,220,220],103],0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[217,217],[218,218],[219,219],[225,225],[226,226],[227,227],[228,228],[214,214],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[229,218,230],[[103,[216]]]],[[229,218,230],[[103,[216]]]],[[],225],[[],226],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[218,11]]]],[101,[[8,[218,11]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[214,218],[[95,[225]]]],[[218,218],3],[[217,186],187],[[219,186],187],[[227,186],187],[[228,186],187],[[214,186],187],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[214,3],[214,3],0,0,[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],[214,3],0,[[214,218],216],[[214,218]],[[214,218]],[[219,218,216],216],[[214,218],216],[[228,218],216],[214,3],[214,3],[214,3],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[223,224],[214,3],[214,216],[[217,218],216],[[219,218],216],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[214,231,215,216],[[103,[216]]]],[[214,232,216,233,216],[[103,[234]]]],0,[[214,231,215,216,215,216,216],[[103,[216]]]],[[214,231,215,216,215,216,216],[[103,[216]]]],[[214,231,215,216,215,216,216],[[103,[216]]]],0,0,[2,[[103,[223]]]],[229,[[103,[[222,[194]]]]]],[[229,230],[[103,[214]]]],[[229,230],[[103,[214]]]],[216,217],[[2,[4,[230]]],[[103,[223]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[214,232],[[103,[228]]]],[[2,6,232],103],[[[222,[221]],2,6,232],103],[[223,2,6,232],103],0,[[214,220],[[103,[216]]]],0,0,0,[[214,235,236],103],[[214,237,238,216,216],103],[214,103],[214,103],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[224,220],103],[[223,220],103],[[223,232],103],[[223,2],[[103,[239]]]],[218,[[8,[11]]]],[[6,2],[[103,[239]]]],[[[222,[221]],6,2],[[103,[239]]]],[[223,6,2],[[103,[239]]]],0,0,[[216,216,216,216],[[103,[216]]]],[[216,216,216,216],[[103,[216]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[214,220],[[103,[219]]]],[[214,220],[[103,[6]]]],0,[[214,218,220],[[103,[216]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[228,218],216],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[216,[[4,[216]]]],[216,[[4,[216]]]],[[],234],[[],230],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[240,11]]]],[[],[[8,[241,11]]]],[[],[[8,[242,11]]]],[[],[[8,[243,11]]]],[[],[[8,[244,11]]]],[[],[[8,[245,11]]]],[[],[[8,[246,11]]]],[[],[[8,[247,11]]]],[[],[[8,[248,11]]]],[[],[[8,[249,11]]]],[[],[[8,[250,11]]]],[[],[[8,[251,11]]]],[[],[[8,[252,11]]]],[[],[[8,[253,11]]]],[[],[[8,[254,11]]]],[[],[[8,[255,11]]]],[[],[[8,[256,11]]]],[[],[[8,[257,11]]]],[[],[[8,[258,11]]]],[[],[[8,[259,11]]]],[[],[[8,[260,11]]]],[[],[[8,[261,11]]]],[[],[[8,[262,11]]]],[[],[[8,[263,11]]]],[[],[[8,[264,11]]]],[[],[[8,[265,11]]]],[[],[[8,[266,11]]]],[[],[[8,[267,11]]]],[[],[[8,[268,11]]]],[[],[[8,[269,11]]]],[[],[[8,[270,11]]]],[[],[[8,[271,11]]]],[[],[[8,[272,11]]]],[[],[[8,[273,11]]]],[[],[[8,[274,11]]]],[[],[[8,[275,11]]]],[[],[[8,[276,11]]]],[[],[[8,[277,11]]]],[[],[[8,[278,11]]]],[[],[[8,[279,11]]]],[[],[[8,[280,11]]]],[[],[[8,[281,11]]]],[[],[[8,[282,11]]]],[[],[[8,[283,11]]]],[[],[[8,[284,11]]]],[[],[[8,[285,11]]]],[[],[[8,[286,11]]]],[[],[[8,[287,11]]]],[[],[[8,[288,11]]]],[[],[[8,[289,11]]]],[[],[[8,[290,11]]]],[[],[[8,[291,11]]]],[[],[[8,[292,11]]]],[[],[[8,[293,11]]]],[[],[[8,[294,11]]]],[[],[[8,[295,11]]]],[[],[[8,[296,11]]]],[[],[[8,[297,11]]]],[[],[[8,[298,11]]]],[[],[[8,[299,11]]]],[[],[[8,[300,11]]]],[[],[[8,[301,11]]]],[[],[[8,[302,11]]]],[[],[[8,[303,11]]]],[[],[[8,[304,11]]]],[[],[[8,[305,11]]]],[[],[[8,[306,11]]]],[[],[[8,[307,11]]]],[[],[[8,[308,11]]]],[[],[[8,[309,11]]]],[[],[[8,[310,11]]]],[[],[[8,[311,11]]]],[[],[[8,[312,11]]]],[[],[[8,[313,11]]]],[[],[[8,[314,11]]]],[[],[[8,[315,11]]]],[[],[[8,[316,11]]]],[[],[[8,[317,11]]]],[[],[[8,[318,11]]]],[[],[[8,[319,11]]]],[[],[[8,[320,11]]]],[[],[[8,[321,11]]]],[[],[[8,[322,11]]]],[[],[[8,[323,11]]]],[[],[[8,[324,11]]]],[[],[[8,[325,11]]]],[[],[[8,[326,11]]]],[[],[[8,[327,11]]]],[[],[[8,[328,11]]]],[[],[[8,[329,11]]]],[[],[[8,[330,11]]]],[[],[[8,[331,11]]]],[[],[[8,[332,11]]]],[[],[[8,[333,11]]]],[[],[[8,[334,11]]]],[[],[[8,[335,11]]]],[[],[[8,[336,11]]]],0,0,0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,[240,[[8,[11]]]],[241,[[8,[11]]]],[242,[[8,[11]]]],[243,[[8,[11]]]],[244,[[8,[11]]]],[245,[[8,[11]]]],[246,[[8,[11]]]],[247,[[8,[11]]]],[248,[[8,[11]]]],[249,[[8,[11]]]],[250,[[8,[11]]]],[251,[[8,[11]]]],[252,[[8,[11]]]],[253,[[8,[11]]]],[254,[[8,[11]]]],[255,[[8,[11]]]],[256,[[8,[11]]]],[257,[[8,[11]]]],[258,[[8,[11]]]],[259,[[8,[11]]]],[260,[[8,[11]]]],[261,[[8,[11]]]],[262,[[8,[11]]]],[263,[[8,[11]]]],[264,[[8,[11]]]],[265,[[8,[11]]]],[266,[[8,[11]]]],[267,[[8,[11]]]],[268,[[8,[11]]]],[269,[[8,[11]]]],[270,[[8,[11]]]],[271,[[8,[11]]]],[272,[[8,[11]]]],[273,[[8,[11]]]],[274,[[8,[11]]]],[275,[[8,[11]]]],[276,[[8,[11]]]],[277,[[8,[11]]]],[278,[[8,[11]]]],[279,[[8,[11]]]],[280,[[8,[11]]]],[281,[[8,[11]]]],[282,[[8,[11]]]],[283,[[8,[11]]]],[284,[[8,[11]]]],[285,[[8,[11]]]],[286,[[8,[11]]]],[287,[[8,[11]]]],[288,[[8,[11]]]],[289,[[8,[11]]]],[290,[[8,[11]]]],[291,[[8,[11]]]],[292,[[8,[11]]]],[293,[[8,[11]]]],[294,[[8,[11]]]],[295,[[8,[11]]]],[296,[[8,[11]]]],[297,[[8,[11]]]],[298,[[8,[11]]]],[299,[[8,[11]]]],[300,[[8,[11]]]],[301,[[8,[11]]]],[302,[[8,[11]]]],[303,[[8,[11]]]],[304,[[8,[11]]]],[305,[[8,[11]]]],[306,[[8,[11]]]],[307,[[8,[11]]]],[308,[[8,[11]]]],[309,[[8,[11]]]],[310,[[8,[11]]]],[311,[[8,[11]]]],[312,[[8,[11]]]],[313,[[8,[11]]]],[314,[[8,[11]]]],[315,[[8,[11]]]],[316,[[8,[11]]]],[317,[[8,[11]]]],[318,[[8,[11]]]],[319,[[8,[11]]]],[320,[[8,[11]]]],[321,[[8,[11]]]],[322,[[8,[11]]]],[323,[[8,[11]]]],[324,[[8,[11]]]],[325,[[8,[11]]]],[326,[[8,[11]]]],[327,[[8,[11]]]],[328,[[8,[11]]]],[329,[[8,[11]]]],[330,[[8,[11]]]],[331,[[8,[11]]]],[332,[[8,[11]]]],[333,[[8,[11]]]],[334,[[8,[11]]]],[335,[[8,[11]]]],[336,[[8,[11]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[337,337],[[]],0,0,0,0,0,0,0,0,0,[338,[[95,[101]]]],[339,[[95,[101]]]],[340,[[95,[101]]]],[341,[[95,[101]]]],[342,[[95,[101]]]],[343,[[95,[101]]]],[344,[[95,[101]]]],[345,[[95,[101]]]],[346,[[95,[101]]]],[347,[[95,[101]]]],[348,[[95,[101]]]],[349,[[95,[101]]]],[350,[[95,[101]]]],[351,[[95,[101]]]],[352,[[95,[101]]]],[353,[[95,[101]]]],[354,[[95,[101]]]],[355,[[95,[101]]]],[356,[[95,[101]]]],[357,[[95,[101]]]],[358,[[95,[101]]]],[359,[[95,[101]]]],[360,[[95,[101]]]],[361,[[95,[101]]]],[362,[[95,[101]]]],[363,[[95,[101]]]],[364,[[95,[101]]]],[365,[[95,[101]]]],[366,[[95,[101]]]],[367,[[95,[101]]]],[368,[[95,[101]]]],[369,[[95,[101]]]],[370,[[95,[101]]]],[371,[[95,[101]]]],[372,[[95,[101]]]],[373,[[95,[101]]]],[374,[[95,[101]]]],[375,[[95,[101]]]],[376,[[95,[101]]]],[377,[[95,[101]]]],[378,[[95,[101]]]],[379,[[95,[101]]]],[380,[[95,[101]]]],[381,[[95,[101]]]],[382,[[95,[101]]]],[383,[[95,[101]]]],[384,[[95,[101]]]],[385,[[95,[101]]]],0,0,0,0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[338,11]]]],[[],[[8,[339,11]]]],[[],[[8,[386,11]]]],[[],[[8,[387,11]]]],[[],[[8,[388,11]]]],[[],[[8,[340,11]]]],[[],[[8,[341,11]]]],[[],[[8,[342,11]]]],[[],[[8,[343,11]]]],[[],[[8,[344,11]]]],[[],[[8,[345,11]]]],[[],[[8,[346,11]]]],[[],[[8,[347,11]]]],[[],[[8,[348,11]]]],[[],[[8,[349,11]]]],[[],[[8,[350,11]]]],[[],[[8,[351,11]]]],[[],[[8,[352,11]]]],[[],[[8,[353,11]]]],[[],[[8,[354,11]]]],[[],[[8,[355,11]]]],[[],[[8,[356,11]]]],[[],[[8,[337,11]]]],[[],[[8,[357,11]]]],[[],[[8,[358,11]]]],[[],[[8,[359,11]]]],[[],[[8,[360,11]]]],[[],[[8,[361,11]]]],[[],[[8,[362,11]]]],[[],[[8,[363,11]]]],[[],[[8,[364,11]]]],[[],[[8,[365,11]]]],[[],[[8,[366,11]]]],[[],[[8,[367,11]]]],[[],[[8,[368,11]]]],[[],[[8,[369,11]]]],[[],[[8,[370,11]]]],[[],[[8,[371,11]]]],[[],[[8,[372,11]]]],[[],[[8,[373,11]]]],[[],[[8,[374,11]]]],[[],[[8,[375,11]]]],[[],[[8,[376,11]]]],[[],[[8,[377,11]]]],[[],[[8,[378,11]]]],[[],[[8,[379,11]]]],[[],[[8,[380,11]]]],[[],[[8,[381,11]]]],[[],[[8,[382,11]]]],[[],[[8,[383,11]]]],[[],[[8,[384,11]]]],[[],[[8,[385,11]]]],[101,[[8,[337,11]]]],0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,[[2,2,235,236]],[389],0,0,0,[[337,337],3],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[337,186],187],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[338,[[8,[11]]]],[339,[[8,[11]]]],[386,[[8,[11]]]],[387,[[8,[11]]]],[388,[[8,[11]]]],[340,[[8,[11]]]],[341,[[8,[11]]]],[342,[[8,[11]]]],[343,[[8,[11]]]],[344,[[8,[11]]]],[345,[[8,[11]]]],[346,[[8,[11]]]],[347,[[8,[11]]]],[348,[[8,[11]]]],[349,[[8,[11]]]],[350,[[8,[11]]]],[351,[[8,[11]]]],[352,[[8,[11]]]],[353,[[8,[11]]]],[354,[[8,[11]]]],[355,[[8,[11]]]],[356,[[8,[11]]]],[337,[[8,[11]]]],[357,[[8,[11]]]],[358,[[8,[11]]]],[359,[[8,[11]]]],[360,[[8,[11]]]],[361,[[8,[11]]]],[362,[[8,[11]]]],[363,[[8,[11]]]],[364,[[8,[11]]]],[365,[[8,[11]]]],[366,[[8,[11]]]],[367,[[8,[11]]]],[368,[[8,[11]]]],[369,[[8,[11]]]],[370,[[8,[11]]]],[371,[[8,[11]]]],[372,[[8,[11]]]],[373,[[8,[11]]]],[374,[[8,[11]]]],[375,[[8,[11]]]],[376,[[8,[11]]]],[377,[[8,[11]]]],[378,[[8,[11]]]],[379,[[8,[11]]]],[380,[[8,[11]]]],[381,[[8,[11]]]],[382,[[8,[11]]]],[383,[[8,[11]]]],[384,[[8,[11]]]],[385,[[8,[11]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[390,[102]],230],103],[[[390,[104]],3],103],[[[390,[105]],207,101,101,101,101,209],103],[[[390,[106]],207,101,101,101,101,101,209],103],[[[390,[107]],[4,[209]],[4,[2]],[4,[2]],[4,[230]]],103],[[[390,[108]],101,101,101,101],103],[[[390,[108]],101,101,101,101,101],103],[[[390,[109]]],103],[[[390,[110]],3],103],[[[390,[111]]],103],[[[390,[112]]],103],[[[390,[113]],101,[95,[2]]],103],[[[390,[114]],101],103],[[[390,[115]]],103],[[[390,[116]]],103],[[[390,[117]],[95,[230]]],103],[[[390,[119]],96],103],[[[390,[119]],101,96],103],[[[390,[118]],230],103],[[[390,[120]]],103],[[[390,[121]],207,101,101],103],[[[390,[122]],[4,[2]],[4,[2]],[4,[2]],[4,[101]],[4,[101]],[4,[230]],[4,[3]],[4,[391]],[4,[2]],[4,[220]],[4,[230]],[4,[392]]],103],[[[390,[123]],230],103],[[[390,[124]]],103],[[[390,[125]]],103],[[[390,[126]],393],103],[[[390,[180]],216],103],[[[390,[181]],220,220,216],103],[[[390,[127]],101],103],[[[390,[127]],101,393],103],[[[390,[128]]],103],[[[390,[129]],207],103],[[[390,[130]]],103],[[[390,[131]],[4,[3]],[4,[3]]],103],[[[390,[132]],101],103],[[[390,[133]],101,230,230,230,101,101,230,392],103],[[[390,[134]],101,230,230,230,101,230,392],103],[[[390,[135]],394,209],103],[[[390,[136]],3],103],[[[390,[137]],101],103],[[[390,[138]],[4,[233]],101],103],[[[390,[139]],393],103],[[[390,[140]],230],103],[[[390,[141]]],103],[[[390,[142]],6],103],[[[390,[143]],232,209,395,101,234,234,391,391,391,391,391,391,391,391,391,391,391,234,3,391,391,391,391,220,391,230,391,391],103],[[[390,[144]]],103],[[[390,[145]],[4,[2]],[4,[395]],[4,[101]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[234]],[4,[3]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[207]],[4,[391]],[4,[391]],[4,[391]],[4,[230]],[4,[3]],3,[4,[391]],[4,[209]],[4,[3]],[4,[391]]],103],[[[390,[146]]],103],[[[390,[147]],234,230],103],[[[390,[148]],101],103],[[[390,[149]],230],103],[[[390,[150]],230],103],[[[390,[151]],233,234,234,234,230,396,3,230,101],[[103,[[4,[393]]]]]],[[[390,[151]],233,234,234,234,234,230,396,3,230,101,397],[[103,[[4,[393]]]]]],[[[390,[151]],233,234,234,234,234,230,396,398,3,230,101,397],[[103,[[4,[393]]]]]],[[[390,[151]],233,234,234,234,230,396,398,3,230,101],[[103,[[4,[393]]]]]],[[[390,[152]],230],103],[[[390,[153]]],103],[[[390,[154]]],103],[[[390,[155]],101],103],[[[390,[156]],99,393],103],[[[390,[156]],230],103],[[[390,[157]]],103],[[[390,[158]]],103],[[[390,[159]]],103],[[[390,[160]],[4,[3]],[4,[3]],[4,[209]],[4,[391]]],103],[[[390,[161]],101],103],[[[390,[162]],99,230,230,230,97,98,230,392],103],[[[390,[162]],99,230,230,230,97,98,230,392],103],[[[390,[163]],399,209,391],103],[[[390,[164]]],103],[[[390,[166]],3],103],[[[390,[167]]],103],[[[390,[168]],216],103],[[[390,[169]],216],103],[[[390,[169]],216,230,216],103],[[[390,[170]],220,207],103],[[[390,[171]],101,230],103],[[[390,[172]],230,230,230,400,400,400,3,3],103],[[[390,[172]],230,230,230,400,400,3,3,401,230,230],103],[[[390,[172]],230,230,230,400,400,400,3,3,401,402,230],103],[[[390,[172]],230,230,230,400,400,400,3,3,401,402],103],[[[390,[173]],101,230],103],[[[390,[174]],101,230,230,230],103],[[[390,[174]],101,230,230,230,230,391],103],[[[390,[176]],230,3],103],[[[390,[175]],230,3],103],[[[390,[177]]],103],[[[390,[178]],[4,[2]],[4,[395]],[4,[3]],[4,[100]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[207]],[4,[391]],[4,[391]],[4,[400]],[4,[234]],[4,[230]],[4,[400]],[4,[400]],3,3,[4,[101]],[4,[209]],[4,[3]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[391]],[4,[230]],[4,[230]],[4,[391]],[4,[391]],3,3,[4,[230]],[4,[391]],[4,[391]],[4,[3]]],103],[[[390,[179]],220,220,230],103],[[[390,[180]],216],103],[[[390,[181]],220,220,216],103],[[[390,[182]],220,209,395,100,391,391,391,391,391,391,391,207,391,391,400,230,234,400,400,101,391,391,391,391,391,3,230,391,391,3],103],[[[390,[183]],220,209],103],[[[390,[184]]],103],[[[390,[185]],230,3],103],0,[1],[[]],[[]],[[]],[[]],[[],4],[[],4],[403,403],[[]],[6],[6],[6],[[]],[[],2],[[],6],[[]],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],9],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[1],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[404,405],103],[[406,405],103],[[407,405],103],[[408,405,409],103],[[410,405,101],103],[[410,405,411],103],[[410,405,230],103],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[412,412],[[]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[238,186],187],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[239,238],[[],3],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],3],[[413,188],[[103,[[202,[414]]]]]],[[413,188],[[103,[[202,[414]]]]]],[[188,2],[[103,[[200,[413]]]]]],[[],[[103,[239]]]],[[],[[103,[239]]]],[188,[[103,[[200,[239]]]]]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],[[],230],[238,230],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[],2],0,0,0,[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],0,0,0,0,0,[415,6],[[416,230]],0,[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,233,421,422],103],[[235,233,234,234]],0,[[235,233,234]],0,0,[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[[[418,[[417,[415]],[417,[416]],417]]],419],[423,3],0,[423,3],0,0,[215,3],[[235,236,216],216],[215,3],[215,3],[424,[[4,[425]]]],[424,[[4,[425]]]],[424,[[4,[422]]]],[424,[[4,[422]]]],[425,424],[422,424],0,0,0,[[235,236]],[[235,236],400],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[426],0,0,0,0,0,[235,234],0,[[235,236],216],[[427,233]],0,0,0,[[[418,[[417,[415]],[417,[416]],417]]],3],[416,3],0,[[428,230,234],[[4,[234]]]],0,0,0,0,[[429,233],428],[[429,233],428],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[418,[[417,[415]],[417,[416]],417]]],229],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]]],430],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[235,236],400],0,0,0,0,0,0,0,0,0,0,0,[405,3],0,[416,230],0,0,0,0,0,0,0,0,0,[[429,430,2,236,101,[4,[233]]],103],[[429,430,393,431,[4,[2]]],[[103,[422]]]],[[429,430,2,6,232],103],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,432,216,230],[[103,[433]]]],[[215,432,216,230],[[103,[3]]]],[[434,435],103],[[434,435,[4,[230]]],103],[215,103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],214,216],[[103,[216]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],216,216],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],214],[[103,[216]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],214,216],103],[[],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],214],[[103,[436]]]],[[215,216],103],[[415,415],103],[[434,435,230],103],[[423,400,230],103],[[423,400,230],103],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[215,432,216,432,216,230,216],[[103,[437]]]],0,0,[438],0,0,0,[215,215],[[[418,[439,439,439]]],[[418,[439,439,439]]]],[405,405],[440,440],[441,441],[416,416],[415,415],[432,432],[237,237],[235,235],[438,438],[426,426],[442,442],[443,443],[435,435],[444,444],[445,445],[421,421],[428,428],[446,446],[425,425],[422,422],[447,447],[424,424],[396,396],[448,448],[398,398],[233,233],[431,431],[449,449],[450,450],[451,451],[452,452],[453,453],[454,454],[455,455],[427,427],[456,456],[236,236],[457,457],[458,458],[459,459],[401,401],[402,402],[460,460],[423,423],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[229,223],[[103,[211]]]],[[215,216,216,216],103],[[215,216],216],[[215,216,216,230],216],[[236,216,216,216,216,216],[[103,[216]]]],0,0,[[],6],[453,6],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],399],[[103,[237]]]],0,0,0,0,0,0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,220],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,220,2],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],399],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6,2]],[230],[[453,230]],[432],[[],432],[[],237],[[],235],[[],438],[[],395],[[],398],[[],459],[[],423],[[],441],[[],236],0,0,0,[[459,230],101],0,0,0,0,[[215,432,216,230],[[103,[3]]]],0,[[215,432,216,3,230],[[103,[3]]]],[[215,432,216,3,230],[[103,[3]]]],0,0,0,[[215,432,216,230],[[103,[3]]]],0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[[]],[[]],[[],[[8,[441,11]]]],[[],[[8,[432,11]]]],[[],[[8,[237,11]]]],[[],[[8,[235,11]]]],[[],[[8,[438,11]]]],[[],[[8,[435,11]]]],[[],[[8,[395,11]]]],[[],[[8,[444,11]]]],[[],[[8,[421,11]]]],[[],[[8,[425,11]]]],[[],[[8,[422,11]]]],[[],[[8,[396,11]]]],[[],[[8,[448,11]]]],[[],[[8,[398,11]]]],[[],[[8,[233,11]]]],[[],[[8,[431,11]]]],[[],[[8,[449,11]]]],[[],[[8,[427,11]]]],[[],[[8,[456,11]]]],[[],[[8,[401,11]]]],[[],[[8,[402,11]]]],[[],[[8,[460,11]]]],[[],[[8,[423,11]]]],[101,[[8,[444,11]]]],[101,[[8,[421,11]]]],[101,[[8,[396,11]]]],[101,[[8,[448,11]]]],[101,[[8,[398,11]]]],[101,[[8,[233,11]]]],[101,[[8,[431,11]]]],[101,[[8,[449,11]]]],[101,[[8,[401,11]]]],[101,[[8,[402,11]]]],[101,[[8,[460,11]]]],[[],[[103,[444]]]],0,0,0,0,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],0,0,[[215,432,230],[[103,[3]]]],0,[[101,101,101],6],[[101,101],6],[[101,101,101,101,101],6],[101,6],[[101,101,101,101,101],6],[[101,101,101,101],6],[[],6],[425,230],[424,230],[235,234],[426,3],[236,3],[215,103],[215,103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,220],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],220],103],[[436,436],3],[[435,435],3],[[444,444],3],[[421,421],3],[[446,446],3],[[422,422],3],[[396,396],3],[[448,448],3],[[398,398],3],[[233,233],3],[[431,431],3],[[449,449],3],[[455,455],3],[[401,401],3],[[402,402],3],[[460,460],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],0,0,0,0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,236,427,405],[[103,[216]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,233,6,234,393],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232,236,427],[[103,[216]]]],[415,6],[[416,230,230]],[422,230],0,0,0,0,[[461,101],[[103,[434]]]],0,0,0,0,0,0,0,0,[[451,450],4],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]]],[[4,[235]]]],[[451,450],4],[426,2],[426,2],0,[234,[[103,[230]]]],[230,234],0,0,0,[[215,186],187],[[405,186],187],[[440,186],187],[[441,186],187],[[415,186],187],[[432,186],187],[[237,186],187],[[235,186],187],[[438,186],187],[[426,186],187],[[442,186],187],[[443,186],187],[[435,186],187],[[395,186],187],[[421,186],187],[[422,186],187],[[396,186],187],[[448,186],187],[[398,186],187],[[233,186],187],[[431,186],187],[[449,186],187],[[454,186],187],[[427,186],187],[[456,186],187],[[236,186],187],[[457,186],187],[[458,186],187],[[459,186],187],[[423,186],187],0,0,0,0,0,0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]]],[[103,[423]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],103],[[],[[103,[231]]]],[[],[[103,[462]]]],[[],[[103,[[418,[415,416]]]]]],[[],[[103,[[418,[415,416,[95,[101,463]]]]]]]],[[],[[103,[415]]]],[[215,2,207,101],215],[[233,230,230,422],456],[[],[[461,[221]]]],0,0,[452,3],0,[[236,233,230],393],[464,[[103,[2]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[433,3],[437,3],[235,3],[235,3],[235,3],[[],6],[453,6],0,0,[[[418,[[417,[415]],[417,[416]],417]]],101],0,0,0,0,0,0,0,[[428,234,230,234],[[4,[234]]]],0,0,0,[[]],[453],[432],0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[429],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],0,0,0,0,0,[[],103],[[],103],[[428,421,422],103],[[451,450,422],103],[[236,233,216,216],3],0,0,0,0,[[216,216,216,216,216,216,216,400],216],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[233,233],[432,3],[237,3],[235,3],[438,3],[[237,399],3],[[235,232],3],[[438,232],3],[[432,220],3],[423,3],0,[[416,2],3],[452,3],[[422,230],3],[[423,230],3],[215,3],[442,3],[236,3],[457,3],[428,3],[451,3],[416,3],[432,3],[464,3],[[405,440],3],[416,3],[[416,2],3],[465,3],[[233,234,234],3],[[233,230,230],3],[[233,234,234],3],[442,3],[236,3],[457,3],[[423,400,230],3],[423,3],[405,3],[[423,400,230],3],[466,3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[451,450],467],[452,419],[[428,230,234],468],[[428,230,234],419],0,[424,[[4,[393]]]],0,0,0,0,0,0,0,0,0,[452,6],0,[[],[[103,[469]]]],[[],[[103,[470]]]],[[],[[103,[470]]]],[[],[[103,[464]]]],0,0,0,0,0,0,0,0,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[236,234],216],0,0,0,0,0,0,0,0,0,0,0,0,[[215,230]],0,0,[[423,216],230],0,0,0,0,[427,3],0,[[423,400],400],0,0,0,0,0,0,0,0,0,0,[[428,234,230,234],[[4,[234]]]],[[428,234,230,234],[[4,[234]]]],0,0,[[423,216,215],230],0,[[],6],[[451,450],4],0,0,0,[[423,216,215],230],0,0,0,[[416,216],3],0,[[451,450],4],0,0,0,0,0,0,[405,3],[[]],[215,471],[416,471],[442,471],[236,471],[457,471],0,0,0,0,0,0,[[432,215],216],[215,216],[215,216],[[236,216],234],[465,3],0,0,0,0,0,[[428,230,234],468],[[451,450],467],[[207,393],425],[[101,393,2,234,230,448,392,234,230],422],[[233,421],431],[[233,3,101,230,230,2,393,230,216,230,2,230,216,234,234],427],[[233,101,230,230,2,234,393],456],[[233,230,230],393],[[429,465,236,452,216,430,2,230,101],[[8,[[4,[393]],201]]]],[468,4],[467,4],0,0,[[428,472],[[4,[424]]]],[450,[[4,[472]]]],[[451,472],[[4,[424]]]],0,0,[[428,472],[[4,[424]]]],[[451,472],[[4,[424]]]],0,0,[426,6],0,0,0,0,0,0,0,[405,3],0,0,0,0,0,0,[[471,434,435,[4,[230]]],209],[234,230],[230,234],[[215,461,[4,[230]]],[[103,[216]]]],[[236,461,[4,[230]]],[[103,[216]]]],[457,391],0,[[236,461,[4,[230]]],[[103,[434]]]],[[461,101],[[103,[434]]]],0,0,0,[431,421],0,[451,449],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],[[],2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[423,230],3],[416,473],[467,4],[452,[[4,[454]]]],[452,[[4,[454]]]],[465,234],0,[415,6],0,[[[418,[[417,[415]],[417,[416]],417]],232,230],4],[[[418,[[417,[415]],[417,[416]],417]],232,393],4],0,[[[418,[[417,[415]],[417,[416]],417]]],[[103,[6]]]],[[415,6],6],[415,6],0,0,[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[438]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],438],[[[418,[[417,[415]],[417,[416]],417]],232],[[103,[235]]]],[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[235]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],232],[[103,[235]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],235],0,0,0,0,[405,3],0,0,[452,[[103,[454]]]],0,0,[465,[[4,[421]]]],0,0,0,[474,216],0,[[423,400,230],400],0,[[465,230,234,429],103],0,0,0,[422,230],0,0,0,0,[475,476],[475,476],[[452,454],[[8,[454]]]],0,0,0,0,0,0,[[428,234,230,234],234],0,0,[235,216],0,0,0,0,0,[[233,4,4,3,230,234],[[4,[466]]]],0,0,0,[[235,216,216]],[[235,216]],[[235,216,236]],[[235,236,234,216],216],[[235,216]],0,[[416,230]],0,0,0,0,0,0,0,0,0,[423,230],[215,216],[[215,216],216],[423,230],[[428,421,393],[[4,[422]]]],[[451,450,393],[[4,[422]]]],[[428,421,230],[[4,[422]]]],[[451,450,230],[[4,[422]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6,234],103],[[235,234,234]],[[428,230,234],4],[[451,450],[[4,[422]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[459,400,230]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],101,101,101,101,101],103],[[452,6],103],[[428,421],450],[[428,421],450],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,216],216],[[215,216],216],0,0,0,0,0,0,0,[441,[[8,[11]]]],[432,[[8,[11]]]],[237,[[8,[11]]]],[235,[[8,[11]]]],[438,[[8,[11]]]],[435,[[8,[11]]]],[395,[[8,[11]]]],[444,[[8,[11]]]],[421,[[8,[11]]]],[425,[[8,[11]]]],[422,[[8,[11]]]],[396,[[8,[11]]]],[448,[[8,[11]]]],[398,[[8,[11]]]],[233,[[8,[11]]]],[431,[[8,[11]]]],[449,[[8,[11]]]],[427,[[8,[11]]]],[456,[[8,[11]]]],[401,[[8,[11]]]],[402,[[8,[11]]]],[460,[[8,[11]]]],[423,[[8,[11]]]],0,[415,6],0,[[415,6],6],[[[418,[[417,[415]],[417,[416]],417]],399],[[103,[237]]]],[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[237]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],399],[[103,[237]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],237],[405,3],0,0,0,0,[[416,3]],[207],[[453,207]],[[236,3]],[207],[[453,207]],[[416,3]],[[423,3]],0,0,0,[[235,236]],[[235,236]],[236,216],0,0,0,0,0,0,0,[467,233],[428,233],[431,233],[449,233],[456,233],0,0,[438,431],0,[473],[[236,216],[[103,[216]]]],0,0,0,0,[[101,101,101,101,101],6],0,0,[215,216],[236,216],0,0,0,0,0,0,0,0,0,0,0,0,0,[[423,216],230],0,0,0,[[423,400],400],0,[427,233],0,0,0,[423,460],0,0,0,0,[230,[[4,[392]]]],0,0,0,0,0,[395,435],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[396,[[103,[448]]]],[[[418,[[417,[415]],[417,[416]],417]],230],103],[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[423]]]],[415,6],0,[[[418,[[417,[415]],[417,[416]],417]]],[[103,[6]]]],0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],[[103,[423]]]],0,0,[415,6],0,[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],215,230,2],103],0,0,0,0,0,[[415,6],6],[[[418,[[417,[415]],[417,[416]],417]],220],[[103,[432]]]],[[[418,[[417,[415]],[417,[416]],417]],220],103],[[[418,[[417,[415]],[417,[416]],417]],6],[[103,[432]]]],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],220],103],[[[418,[[0,[[420,[415]],[417,[415]]]],[0,[[420,[416]],[417,[416]]]],[0,[420,417]]]],6],432],0,[[],[[103,[215]]]],[[],[[103,[405]]]],[[],[[103,[441]]]],[[],[[103,[426]]]],[[],[[103,[442]]]],[[],[[103,[443]]]],[[],[[103,[445]]]],[[],[[103,[428]]]],[[],[[103,[452]]]],[[],[[103,[236]]]],[[],[[103,[457]]]],[[],[[103,[458]]]],[[],[[103,[215]]]],[[],[[103,[405]]]],[[],[[103,[441]]]],[[],[[103,[426]]]],[[],[[103,[442]]]],[[],[[103,[443]]]],[[],[[103,[445]]]],[[],[[103,[428]]]],[[],[[103,[452]]]],[[],[[103,[236]]]],[[],[[103,[457]]]],[[],[[103,[458]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[421,[193,[421]]]]]],[[],8],[[],8],[[],8],[101,[[8,[477,[193,[477]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[396,[193,[396]]]]]],[[],8],[101,[[8,[448,[193,[448]]]]]],[101,[[8,[398,[193,[398]]]]]],[[],8],[[],8],[101,[[8,[233,[193,[233]]]]]],[[],8],[101,[[8,[431,[193,[431]]]]]],[101,[[8,[449,[193,[449]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[455,[193,[455]]]]]],[454,[[103,[427]]]],[454,[[103,[427]]]],[[],8],[[],8],[454,[[103,[456]]]],[454,[[103,[456]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[401,[193,[401]]]]]],[101,[[8,[402,[193,[402]]]]]],[[],8],[[],8],[101,[[8,[460,[193,[460]]]]]],[[],8],[[],[[8,[421,[193,[421]]]]]],[[],[[8,[477,[193,[477]]]]]],[[],[[8,[396,[193,[396]]]]]],[[],[[8,[448,[193,[448]]]]]],[[],[[8,[398,[193,[398]]]]]],[[],[[8,[233,[193,[233]]]]]],[[],[[8,[431,[193,[431]]]]]],[[],[[8,[449,[193,[449]]]]]],[[],[[8,[455,[193,[455]]]]]],[[],[[8,[401,[193,[401]]]]]],[[],[[8,[402,[193,[402]]]]]],[[],[[8,[460,[193,[460]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[441,103],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[432,215],216],[[235,236],216],[[235,236,216],[[103,[216]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[459,230,400]],[[215,432,216]],[[236,429,434,230],103],[215],[[215,216,230]],[[451,230,230]],[[215,230,230]],[[235,236,230]],0,0,0,0,0,0,[215,103],[426,103],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,432,216,230],[[103,[433]]]],[[215,432,216,230],[[103,[433]]]],[[215,432,216,230],[[103,[3]]]],[[215,432,216,230],[[103,[3]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],415],0,0,0,0,0,0,0,0,0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,[2,3],[[],2],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],478],[[],479],[[],480],[[],481],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[478,11]]]],[[],[[8,[479,11]]]],[[],[[8,[480,11]]]],[[],[[8,[481,11]]]],[6],[6],[6],[6],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[478,[[8,[11]]]],[479,[[8,[11]]]],[480,[[8,[11]]]],[481,[[8,[11]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[471,103],[186,[[8,[208]]]]],"p":[[3,"Private"],[3,"Pubkey"],[15,"bool"],[4,"Option"],[3,"Mango"],[15,"usize"],[6,"ProgramResult"],[4,"Result"],[3,"TypeId"],[3,"AccountBuybackFeesWithMngo"],[3,"Error"],[3,"AccountClose"],[3,"AccountCreate"],[3,"AccountCreateV2"],[3,"AccountEdit"],[3,"AccountExpand"],[3,"AccountSizeMigration"],[3,"AccountToggleFreeze"],[3,"AdminPerpWithdrawFees"],[3,"AdminTokenWithdrawFees"],[3,"AltExtend"],[3,"AltSet"],[3,"Benchmark"],[3,"ComputeAccountData"],[3,"FlashLoanBegin"],[3,"FlashLoanSwapBegin"],[3,"FlashLoanEnd"],[3,"GroupClose"],[3,"GroupCreate"],[3,"GroupEdit"],[3,"GroupWithdrawInsuranceFund"],[3,"HealthRegionBegin"],[3,"HealthRegionEnd"],[3,"IxGateSet"],[3,"OpenbookV2CancelOrder"],[3,"OpenbookV2CloseOpenOrders"],[3,"OpenbookV2CreateOpenOrders"],[3,"OpenbookV2DeregisterMarket"],[3,"OpenbookV2EditMarket"],[3,"OpenbookV2LiqForceCancelOrders"],[3,"OpenbookV2PlaceOrder"],[3,"OpenbookV2PlaceTakeOrder"],[3,"OpenbookV2RegisterMarket"],[3,"OpenbookV2SettleFunds"],[3,"PerpCancelAllOrders"],[3,"PerpCancelAllOrdersBySide"],[3,"PerpCancelOrder"],[3,"PerpCancelOrderByClientOrderId"],[3,"PerpCloseMarket"],[3,"PerpConsumeEvents"],[3,"PerpCreateMarket"],[3,"PerpDeactivatePosition"],[3,"PerpEditMarket"],[3,"PerpForceClosePosition"],[3,"PerpLiqBaseOrPositivePnl"],[3,"PerpLiqForceCancelOrders"],[3,"PerpLiqNegativePnlOrBankruptcy"],[3,"PerpLiqNegativePnlOrBankruptcyV2"],[3,"PerpPlaceOrder"],[3,"PerpSettleFees"],[3,"PerpSettlePnl"],[3,"PerpUpdateFunding"],[3,"Serum3CancelAllOrders"],[3,"Serum3CancelOrder"],[3,"Serum3CloseOpenOrders"],[3,"Serum3CreateOpenOrders"],[3,"Serum3DeregisterMarket"],[3,"Serum3EditMarket"],[3,"Serum3LiqForceCancelOrders"],[3,"Serum3PlaceOrder"],[3,"Serum3RegisterMarket"],[3,"Serum3SettleFunds"],[3,"Serum3SettleFundsV2Extra"],[3,"Serum3SettleFundsV2"],[3,"StubOracleClose"],[3,"StubOracleCreate"],[3,"StubOracleSet"],[3,"TokenAddBank"],[3,"TokenConditionalSwapCancel"],[3,"TokenConditionalSwapCreate"],[3,"TokenConditionalSwapStart"],[3,"TokenConditionalSwapTrigger"],[3,"TokenDepositIntoExisting"],[3,"TokenDeposit"],[3,"TokenDeregister"],[3,"TokenEdit"],[3,"TokenForceCloseBorrowsWithToken"],[3,"TokenLiqBankruptcy"],[3,"TokenLiqWithToken"],[3,"TokenRegister"],[3,"TokenRegisterTrustless"],[3,"TokenUpdateIndexAndRate"],[3,"TokenWithdraw"],[3,"AccountMeta"],[3,"Vec"],[4,"FlashLoanType"],[4,"Serum3SelfTradeBehavior"],[4,"Serum3OrderType"],[4,"Serum3Side"],[3,"InterestRateParams"],[15,"u8"],[3,"AccountBuybackFeesWithMngo"],[6,"Result"],[3,"AccountClose"],[3,"AccountCreate"],[3,"AccountCreateV2"],[3,"AccountEdit"],[3,"AccountExpand"],[3,"AccountSizeMigration"],[3,"AccountToggleFreeze"],[3,"AdminPerpWithdrawFees"],[3,"AdminTokenWithdrawFees"],[3,"AltExtend"],[3,"AltSet"],[3,"Benchmark"],[3,"ComputeAccountData"],[3,"FlashLoanBegin"],[3,"FlashLoanSwapBegin"],[3,"FlashLoanEnd"],[3,"GroupClose"],[3,"GroupCreate"],[3,"GroupEdit"],[3,"GroupWithdrawInsuranceFund"],[3,"HealthRegionBegin"],[3,"HealthRegionEnd"],[3,"IxGateSet"],[3,"OpenbookV2CancelOrder"],[3,"OpenbookV2CloseOpenOrders"],[3,"OpenbookV2CreateOpenOrders"],[3,"OpenbookV2DeregisterMarket"],[3,"OpenbookV2EditMarket"],[3,"OpenbookV2LiqForceCancelOrders"],[3,"OpenbookV2PlaceOrder"],[3,"OpenbookV2PlaceTakeOrder"],[3,"OpenbookV2RegisterMarket"],[3,"OpenbookV2SettleFunds"],[3,"PerpCancelAllOrders"],[3,"PerpCancelAllOrdersBySide"],[3,"PerpCancelOrder"],[3,"PerpCancelOrderByClientOrderId"],[3,"PerpCloseMarket"],[3,"PerpConsumeEvents"],[3,"PerpCreateMarket"],[3,"PerpDeactivatePosition"],[3,"PerpEditMarket"],[3,"PerpForceClosePosition"],[3,"PerpLiqBaseOrPositivePnl"],[3,"PerpLiqForceCancelOrders"],[3,"PerpLiqNegativePnlOrBankruptcy"],[3,"PerpLiqNegativePnlOrBankruptcyV2"],[3,"PerpPlaceOrder"],[3,"PerpSettleFees"],[3,"PerpSettlePnl"],[3,"PerpUpdateFunding"],[3,"Serum3CancelAllOrders"],[3,"Serum3CancelOrder"],[3,"Serum3CloseOpenOrders"],[3,"Serum3CreateOpenOrders"],[3,"Serum3DeregisterMarket"],[3,"Serum3EditMarket"],[3,"Serum3LiqForceCancelOrders"],[3,"Serum3PlaceOrder"],[3,"Serum3RegisterMarket"],[3,"Serum3SettleFunds"],[3,"Serum3SettleFundsV2Extra"],[3,"Serum3SettleFundsV2"],[3,"StubOracleClose"],[3,"StubOracleCreate"],[3,"StubOracleSet"],[3,"TokenAddBank"],[3,"TokenConditionalSwapCancel"],[3,"TokenConditionalSwapCreate"],[3,"TokenConditionalSwapStart"],[3,"TokenConditionalSwapTrigger"],[3,"TokenDepositIntoExisting"],[3,"TokenDeposit"],[3,"TokenDeregister"],[3,"TokenEdit"],[3,"TokenForceCloseBorrowsWithToken"],[3,"TokenLiqBankruptcy"],[3,"TokenLiqWithToken"],[3,"TokenRegister"],[3,"TokenRegisterTrustless"],[3,"TokenUpdateIndexAndRate"],[3,"TokenWithdraw"],[3,"Formatter"],[6,"Result"],[3,"AccountInfo"],[3,"Transfer"],[3,"CpiContext"],[3,"BTreeMap"],[3,"BTreeSet"],[3,"TryFromPrimitiveError"],[3,"AccountInfoRef"],[3,"AccountInfoRefMut"],[3,"KeyedAccount"],[3,"KeyedAccountSharedData"],[8,"ZeroCopy"],[8,"Owner"],[3,"Ref"],[4,"Error"],[3,"RefMut"],[3,"AccountSharedData"],[4,"ProgramError"],[4,"MangoError"],[8,"Display"],[15,"u32"],[3,"Error"],[3,"String"],[3,"MangoAccountData"],[3,"Equity"],[3,"TokenEquity"],[3,"PerpEquity"],[3,"HealthCache"],[3,"Bank"],[6,"I80F48"],[3,"Prices"],[4,"HealthType"],[3,"TokenInfo"],[6,"TokenIndex"],[8,"KeyedAccountReader"],[3,"FixedOrderAccountRetriever"],[3,"ScanningAccountRetriever"],[3,"ScannedBanksAndOracles"],[3,"TokenBalance"],[3,"TokenMaxReserved"],[3,"Serum3Info"],[3,"PerpInfo"],[6,"MangoAccountRef"],[15,"u64"],[6,"MangoAccountValue"],[6,"PerpMarketIndex"],[4,"Side"],[15,"i64"],[3,"PerpPosition"],[3,"PerpMarket"],[3,"Serum3Orders"],[3,"OpenOrdersSlim"],[3,"OpenOrders"],[3,"Benchmark"],[3,"OpenbookV2CancelAllOrders"],[3,"OpenbookV2LiqForceCancelOrders"],[3,"OpenbookV2SettleFunds"],[3,"OpenbookV2CancelOrder"],[3,"OpenbookV2PlaceTakerOrder"],[3,"OpenbookV2PlaceOrder"],[3,"OpenbookV2CloseOpenOrders"],[3,"OpenbookV2CreateOpenOrders"],[3,"OpenbookV2DeregisterMarket"],[3,"OpenbookV2EditMarket"],[3,"OpenbookV2RegisterMarket"],[3,"ComputeAccountData"],[3,"AltExtend"],[3,"AltSet"],[3,"TokenConditionalSwapStart"],[3,"TokenConditionalSwapTriggerV2"],[3,"TokenConditionalSwapTrigger"],[3,"TokenConditionalSwapCancel"],[3,"TokenConditionalSwapCreateLinearAuction"],[3,"TokenConditionalSwapCreatePremiumAuction"],[3,"TokenConditionalSwapCreateV2"],[3,"TokenConditionalSwapCreate"],[3,"PerpLiqNegativePnlOrBankruptcyV2"],[3,"PerpLiqNegativePnlOrBankruptcy"],[3,"PerpLiqForceCancelOrders"],[3,"PerpLiqBaseOrPositivePnl"],[3,"PerpSettleFees"],[3,"PerpForceClosePosition"],[3,"PerpSettlePnl"],[3,"PerpUpdateFunding"],[3,"PerpConsumeEvents"],[3,"PerpCancelAllOrdersBySide"],[3,"PerpCancelAllOrders"],[3,"PerpCancelOrderByClientOrderId"],[3,"PerpCancelOrder"],[3,"PerpPlaceOrderPeggedV2"],[3,"PerpPlaceOrderPegged"],[3,"PerpPlaceOrderV2"],[3,"PerpPlaceOrder"],[3,"PerpDeactivatePosition"],[3,"PerpCloseMarket"],[3,"PerpEditMarket"],[3,"PerpCreateMarket"],[3,"TokenLiqBankruptcy"],[3,"TokenForceCloseBorrowsWithToken"],[3,"TokenLiqWithToken"],[3,"LiqTokenBankruptcy"],[3,"LiqTokenWithToken"],[3,"Serum3LiqForceCancelOrders"],[3,"Serum3SettleFundsV2"],[3,"Serum3SettleFunds"],[3,"Serum3CancelAllOrders"],[3,"Serum3CancelOrderByClientOrderId"],[3,"Serum3CancelOrder"],[3,"Serum3PlaceOrderV2"],[3,"Serum3PlaceOrder"],[3,"Serum3CloseOpenOrders"],[3,"Serum3CreateOpenOrders"],[3,"Serum3DeregisterMarket"],[3,"Serum3EditMarket"],[3,"Serum3RegisterMarket"],[3,"HealthRegionEnd"],[3,"HealthRegionBegin"],[3,"FlashLoanEndV2"],[3,"FlashLoanEnd"],[3,"FlashLoanSwapBegin"],[3,"FlashLoanBegin"],[3,"TokenWithdraw"],[3,"TokenDepositIntoExisting"],[3,"TokenDeposit"],[3,"StubOracleSetTest"],[3,"StubOracleSet"],[3,"StubOracleClose"],[3,"StubOracleCreate"],[3,"AccountBuybackFeesWithMngo"],[3,"AccountClose"],[3,"AccountToggleFreeze"],[3,"AccountEdit"],[3,"AccountSizeMigration"],[3,"AccountExpandV2"],[3,"AccountExpand"],[3,"AccountCreateV2"],[3,"AccountCreate"],[3,"TokenUpdateIndexAndRate"],[3,"TokenDeregister"],[3,"TokenAddBank"],[3,"TokenEdit"],[3,"TokenRegisterTrustless"],[3,"TokenRegister"],[3,"GroupClose"],[3,"IxGateSet"],[3,"GroupWithdrawInsuranceFund"],[3,"GroupEdit"],[3,"GroupCreate"],[3,"AdminPerpWithdrawFees"],[3,"AdminTokenWithdrawFees"],[4,"LoanOriginationFeeInstruction"],[3,"PerpBalanceLog"],[3,"TokenBalanceLog"],[3,"FlashLoanLog"],[3,"FlashLoanLogV2"],[3,"FlashLoanLogV3"],[3,"WithdrawLog"],[3,"DepositLog"],[3,"FillLog"],[3,"FillLogV2"],[3,"FillLogV3"],[3,"PerpUpdateFundingLog"],[3,"PerpUpdateFundingLogV2"],[3,"UpdateIndexLog"],[3,"UpdateRateLog"],[3,"UpdateRateLogV2"],[3,"TokenLiqWithTokenLog"],[3,"TokenLiqWithTokenLogV2"],[3,"Serum3OpenOrdersBalanceLog"],[3,"Serum3OpenOrdersBalanceLogV2"],[3,"WithdrawLoanOriginationFeeLog"],[3,"WithdrawLoanLog"],[3,"TokenLiqBankruptcyLog"],[3,"DeactivateTokenPositionLog"],[3,"DeactivatePerpPositionLog"],[3,"TokenMetaDataLog"],[3,"TokenMetaDataLogV2"],[3,"PerpMarketMetaDataLog"],[3,"Serum3RegisterMarketLog"],[3,"PerpLiqBaseOrPositivePnlLog"],[3,"PerpLiqBaseOrPositivePnlLogV2"],[3,"PerpLiqBankruptcyLog"],[3,"PerpLiqNegativePnlOrBankruptcyLog"],[3,"PerpSettlePnlLog"],[3,"PerpSettleFeesLog"],[3,"AccountBuybackFeesWithMngoLog"],[3,"FilledPerpOrderLog"],[3,"PerpTakerTradeLog"],[3,"PerpForceClosePositionLog"],[3,"TokenForceCloseBorrowsWithTokenLog"],[3,"TokenForceCloseBorrowsWithTokenLogV2"],[3,"TokenConditionalSwapCreateLog"],[3,"TokenConditionalSwapCreateLogV2"],[3,"TokenConditionalSwapCreateLogV3"],[3,"TokenConditionalSwapTriggerLog"],[3,"TokenConditionalSwapTriggerLogV2"],[3,"TokenConditionalSwapTriggerLogV3"],[3,"TokenConditionalSwapCancelLog"],[3,"TokenConditionalSwapStartLog"],[3,"FlashLoanTokenDetail"],[3,"FlashLoanTokenDetailV2"],[3,"FlashLoanTokenDetailV3"],[8,"Event"],[3,"Context"],[15,"f32"],[15,"u16"],[15,"u128"],[6,"OpenbookV2MarketIndex"],[3,"OracleConfigParams"],[4,"PlaceOrderType"],[15,"i32"],[4,"SelfTradeBehavior"],[6,"Serum3MarketIndex"],[15,"f64"],[4,"TokenConditionalSwapDisplayPriceStyle"],[4,"TokenConditionalSwapIntention"],[3,"MangoV4"],[3,"InitOpenOrders"],[3,"Group"],[3,"CloseOpenOrders"],[3,"SettleFunds"],[3,"PlaceOrder"],[3,"NewOrderInstructionV3"],[3,"CancelOrder"],[3,"CancelOrderInstructionV2"],[3,"OrderBookStateHeader"],[3,"MarketState"],[3,"Slab"],[3,"MangoAccountDynamicHeader"],[3,"MangoAccountFixed"],[8,"DerefOrBorrow"],[3,"DynamicAccount"],[8,"Iterator"],[8,"DerefOrBorrowMut"],[4,"BookSideOrderTree"],[3,"LeafNode"],[3,"TokenConditionalSwap"],[3,"AnyNode"],[3,"InnerNode"],[3,"MintInfo"],[3,"FillEvent"],[3,"BookSide"],[3,"Orderbook"],[6,"MangoAccountRefMut"],[4,"SideAndOrderTree"],[3,"TokenPosition"],[3,"WithdrawResult"],[3,"OracleState"],[3,"OracleConfig"],[4,"CheckLiquidatable"],[3,"TransferResult"],[3,"PerpOpenOrder"],[8,"Clone"],[4,"IxGate"],[3,"MangoAccount"],[3,"OpenbookV2Market"],[3,"OpenbookV2MarketIndexReservation"],[4,"OracleType"],[3,"StubOracle"],[4,"OrderState"],[3,"FreeNode"],[4,"PostOrderType"],[4,"OrderTreeType"],[3,"OrderTreeRoot"],[3,"OrderTreeNodes"],[3,"EventQueue"],[3,"EventQueueHeader"],[3,"AnyEvent"],[4,"EventType"],[3,"OutEvent"],[3,"Serum3Market"],[3,"Serum3MarketIndexReservation"],[3,"StablePriceModel"],[4,"TokenConditionalSwapType"],[3,"OracleAccountInfos"],[6,"MangoAccountLoadedRef"],[3,"Global"],[3,"WhirlpoolState"],[3,"Order"],[3,"BookSideIterItem"],[3,"OrderTreeIter"],[3,"BookSideIter"],[6,"MangoAccountLoadedRefCell"],[6,"MangoAccountLoadedRefCellMut"],[15,"str"],[6,"NodeHandle"],[3,"MangoAccountPdaSeeds"],[15,"i8"],[3,"ProgressBar"],[3,"ProgressBarIter"],[4,"NodeTag"],[3,"TokenIndex"],[3,"Serum3MarketIndex"],[3,"PerpMarketIndex"],[3,"I80F48"],[8,"AccountReader"],[8,"LoadZeroCopy"],[8,"LoadZeroCopyRef"],[8,"LoadMutZeroCopy"],[8,"LoadMutZeroCopyRef"],[8,"Contextable"],[8,"IsAnchorErrorWithCode"],[8,"AccountRetriever"],[8,"LowPrecisionDivision"],[8,"ClampToInt"],[8,"OpenOrdersAmounts"],[4,"OrderParams"],[8,"QueueHeader"],[3,"BookSideOrderHandle"],[8,"DynamicHeader"],[8,"MangoAccountLoader"],[13,"OraclePegged"],[13,"Fixed"],[13,"ImmediateOrCancel"]]},\ "mango_v4_client":{"doc":"","t":"INIIDDDEDDNNNEDNERDEDNDDDNDGDDDDEDNNNNQLLLLLLLLLLLLLMFFAMMMMMLMMLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLMLMMLMAMLMMMMMMMMLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMMLMLLMLLKLLKLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLALMMMLALMMMLLLLLLLLLLLLLLLLLLLLLLLLLLMFLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALLMLLMLLMMFLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLKMLMMMMLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMMMMLLLLLLLMMMLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFLLMAALLLFLMMMMMLLLMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLMMLLLLMMMMLLALMLLLLLLLLLLLLLLFLLLFLLLLLLMMLLLLMFLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMNDENNLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLMLLLLLLLLLLLLLLLLLLLDDDDNNNDELLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMNNDDENNNELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLDDDENNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFDNNDENNNNELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAALLLLLLLLLLLLDDDDDDDDLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLLLLLLLLLLLLLLLLLLLLLMMMLMMMLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLMLLLLLLLLLLLLLLLLDDDDDDDDDDLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLENNLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDDEDINNLLLMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLKLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLMLLLLLFLLLLMMLLMLLLLMLLMFLLLLLLLLDLLLLLLLLLLLLLFLLLLLLLLLMLLLLLLMLLMFLLLLLLLL","n":["AccountFetcher","All","AnyhowWrap","AsyncChannelSendUnlessFull","CachedAccountFetcher","Client","ClientBuilder","ClientBuilderError","ClientConfig","ComputeEstimates","Dynamic","ExactIn","ExactOut","FallbackOracleConfig","FallbackOracleContext","Fixed","JupiterSwapMode","MAX_ACCOUNTS_PER_TRANSACTION","MangoClient","MangoClientError","MangoGroupContext","Never","PerpMarketContext","PreparedInstructions","RpcAccountFetcher","SendTransactionPreflightFailure","Serum3MarketContext","SimulateTransactionResponse","TokenContext","TransactionBuilder","TransactionBuilderConfig","TransactionBuilderConfigBuilder","TransactionBuilderConfigBuilderError","TransactionSize","UninitializedField","UninitializedField","ValidationError","ValidationError","Value","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","account_fetcher","account_fetcher_fetch_anchor_account","account_fetcher_fetch_mango_account","account_update_stream","accounts","address","address","address_lookup_tables","address_lookup_tables","append","asks","asks","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","az","bank_oracle_price","banks","banks","base_decimals","base_lot_size","base_token_index","bids","bids","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build","build_config","builder","builder","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","chain_data","changed_significantly","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clear","clear_cache","client","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cluster","cluster","coin_lot_size","coin_vault","commitment","commitment","compute_budget_per_instruction","compute_budget_per_instruction","compute_estimates","config","config","confirm_transaction","context","create_account","cu","cu_per_mango_instruction","cu_per_oracle_fallback","cu_per_perp_order_cancel","cu_per_perp_order_match","cu_per_serum3_order_cancel","cu_per_serum3_order_match","decimals","default","default","default","default","default","default","default","default_rpc_confirm_transaction_config","default_rpc_send_transaction_config","delay_interval","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","derive_fallback_oracle_keys","derive_health_check_remaining_account_metas","derive_health_check_remaining_account_metas","derive_health_check_remaining_account_metas_two_accounts","derive_health_check_remaining_account_metas_two_accounts","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error_tracking","event_q","event_queue","fallback_context","fallback_oracle_config","fallback_oracle_config","fee_payer","fee_payer","fee_payer","fetch_address_lookup_table","fetch_address_lookup_tables","fetch_multiple_accounts","fetch_multiple_accounts","fetch_multiple_accounts","fetch_program_accounts","fetch_program_accounts","fetch_program_accounts","fetch_raw_account","fetch_raw_account","fetch_raw_account","fetch_raw_account_lookup_table","fetch_raw_account_lookup_table","find_accounts","find_or_create_account","first_bank","first_bank","first_vault","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_single","from_vec","get_slot","get_slot","get_slot","gpa","group","group","group","group","group_for_admin","health_cache","health_cache","health_cu_per_perp","health_cu_per_serum","health_cu_per_token","health_for_account","health_for_counts","health_region_begin_instruction","health_region_end_instruction","height","height","height","height","height","height","height","height","height","height","height","height","height","height","height","height","height","height","height","height","height","height","http_client","http_error_handling","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init","init_overall_asset_weight","instructions","instructions","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_empty","is_ok","jupiter","jupiter","jupiter_token","jupiter_token","jupiter_v4","jupiter_v4_url","jupiter_v4_url","jupiter_v6","jupiter_v6_url","jupiter_v6_url","key","keypair_from_cli","keys","len","length","limit","loop_check_for_context_changes_and_abort","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","mango_account","mango_account_address","mango_address_lookup_tables","map_err_anyhow","mint","mint_info_address","mint_info_address","name","name","name","native_to_ui","new","new","new","new_detail","new_for_existing_account","new_from_config","new_from_rpc","new_perp_markets_listed","new_rpc_async","new_serum3_markets_listed","new_tokens_listed","oracle","oracle","oracle_config","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","override_send_transaction_urls","override_send_transaction_urls","owner","owner","payer","pc_lot_size","pc_vault","perp","perp_cancel_all_orders_instruction","perp_deactivate_position","perp_liq_base_or_positive_pnl_instruction","perp_liq_force_cancel_orders","perp_liq_negative_pnl_or_bankruptcy_instruction","perp_market_address","perp_market_index","perp_market_indexes_by_name","perp_markets","perp_oracle_price","perp_place_order","perp_place_order_instruction","perp_pnl","perp_settle_pnl","perp_settle_pnl_instruction","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","prettify_client_error","prettify_solana_client_error","prioritization_micro_lamports","priority_fee_provider","priority_fee_provider","priority_fees","priority_fees_cli","provide","provide","provide","pubkey_from_cli","push","quote_key","quote_lot_size","quote_token_index","req_q","rpc","rpc_anchor_account","rpc_async","rpc_confirm_transaction_config","rpc_confirm_transaction_config","rpc_send_transaction_config","rpc_send_transaction_config","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","send","send_and_confirm","send_and_confirm_owner_tx","send_and_confirm_permissionless_tx","send_transaction","send_unless_full","serum3","serum3_base_token","serum3_cancel_all_orders","serum3_cancel_all_orders_instruction","serum3_cancel_order","serum3_create_open_orders","serum3_create_open_orders_instruction","serum3_liq_force_cancel_orders","serum3_liq_force_cancel_orders_instruction","serum3_market_index","serum3_market_indexes_by_name","serum3_markets","serum3_place_order","serum3_place_order_instruction","serum3_quote_token","serum3_settle_funds","serum_market_external","serum_program","settle_token_index","signers","simulate","simulate","snapshot_source","timeout","timeout","to_instructions","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_readonly_account_meta","to_string","to_string","to_string","to_writable_account_meta","token","token_by_mint","token_by_name","token_conditional_swap_start_instruction","token_conditional_swap_trigger_instruction","token_deposit","token_index","token_indexes_by_name","token_liq_bankruptcy_instruction","token_liq_with_token_instruction","token_withdraw","token_withdraw_instructions","tokens","tracing_subscriber_init","transaction","transaction_builder","transaction_builder_config","transaction_builder_config","transaction_size","transaction_with_blockhash","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","vault_signer","vaults","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","websocket_source","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","err","logs","Account","AccountUpdate","Message","Slot","Snapshot","__clone_box","__clone_box","account","az","az","borrow","borrow","borrow_mut","borrow_mut","cast_from","cast_from","checked_as","checked_as","checked_cast_from","checked_cast_from","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","descendants","descendants","drop","drop","from","from","from_ref","from_ref","from_rpc","height","height","init","init","into","into","into_request","into_request","into_request","into_request","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","pubkey","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","slot","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","update_chain_data","vzip","vzip","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","AccountData","AccountFetcher","ChainData","ChainDataMetrics","Confirmed","Processed","Rooted","SlotData","SlotStatus","__clone_box","__clone_box","__clone_box","account","account","account_bytes","account_writes_count","accounts_count","accounts_snapshot","az","az","az","az","az","az","best_chain_slot","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","chain","chain_data","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone","clone_into","clone_into","clone_into","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","descendants","descendants","descendants","descendants","descendants","descendants","drop","drop","drop","drop","drop","drop","eq","fetch","fetch_bank_and_price","fetch_bank_price","fetch_fresh","fetch_fresh_mango_account","fetch_mango_account","fetch_multiple_accounts","fetch_program_accounts","fetch_raw","fetch_raw_account","fetch_raw_account_lookup_table","fmt","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","from_ref","get_slot","height","height","height","height","height","height","init","init","init","init","init","init","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_newer_than","iter_accounts","iter_accounts_rooted","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","new","new","newest_processed_slot","newest_rooted_slot","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","parent","postorder","postorder","postorder","postorder","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder","preorder","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","raw_account_data","raw_slot_data","refresh_account_via_rpc","refresh_accounts_via_rpc_until_slot","report","rpc","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","slot","slot","slots_count","spawn_report_job","status","to_owned","to_owned","to_owned","transaction_max_slot","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","update_account","update_slot","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","write_version","BlockhashExpired","ClientError","RpcConfirmTransactionConfig","RpcConfirmTransactionConfigBuilder","RpcConfirmTransactionConfigBuilderError","Timeout","UninitializedField","ValidationError","WaitForTransactionConfirmationError","__clone_box","__clone_box","az","az","az","az","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone_into","clone_into","commitment","commitment","default","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","descendants","descendants","descendants","descendants","drop","drop","drop","drop","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from_ref","from_ref","height","height","height","height","init","init","init","init","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","postorder","postorder","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","provide","provide","recent_blockhash_initial_timeout","recent_blockhash_initial_timeout","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","signature_status_interval","signature_status_interval","source","timeout","timeout","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","vzip","vzip","vzip","vzip","wait_for_transaction_confirmation","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","ErrorState","ErrorTracking","ErrorTrackingBuilder","ErrorTrackingBuilderError","UninitializedField","ValidationError","__clone_box","__clone_box","az","az","az","az","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clear","clone","clone","clone_into","clone_into","count","default","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","descendants","descendants","descendants","descendants","drop","drop","drop","drop","errors","fmt","fmt","from","from","from","from","from","from","from_ref","from_ref","had_too_many_errors","height","height","height","height","init","init","init","init","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","keep_duration","keep_duration","last_at","log_error_skips","log_interval","log_interval","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","postorder","postorder","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","provide","record","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","skip_duration","skip_duration","skip_threshold","skip_threshold","skip_threshold_for_type","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unique_messages_to_keep","unique_messages_to_keep","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","update","vzip","vzip","vzip","vzip","wipe_old","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","fetch_anchor_account","fetch_banks","fetch_mango_accounts","fetch_mint_infos","fetch_multiple_accounts","fetch_perp_markets","fetch_serum3_markets","new","new_sync","Jupiter","Mock","Mock","Quote","RawQuote","V4","V4","V6","V6","Version","__clone_box","__clone_box","__clone_box","az","az","az","az","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone","clone_into","clone_into","clone_into","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","descendants","descendants","descendants","descendants","drop","drop","drop","drop","eq","equivalent","equivalent","first_route_label","from","from","from","from","from_ref","from_ref","from_ref","height","height","height","height","in_amount","init","init","init","init","input_mint","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","mango_client","out_amount","output_mint","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","postorder","postorder","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","prepare_swap_transaction","price_impact_pct","quote","raw","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from_v4","try_from_v6","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","v4","v6","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","JupiterV4","QueryFee","QueryMarketInfo","QueryResult","QueryRoute","QueryRouteFees","SwapRequest","SwapResponse","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","amount","amount","ata_deposits","az","az","az","az","az","az","az","az","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","cleanup_transaction","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","compute_unit_price_micro_lamports","context_slot","data","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","drop","drop","drop","drop","drop","drop","drop","drop","fees","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","height","height","height","height","height","height","height","height","id","in_amount","in_amount","init","init","init","init","init","init","init","init","input_mint","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","label","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lp_fee","mango_client","market_infos","min_in_amount","min_out_amount","minimal_sol_for_transaction","mint","not_enough_liquidity","open_orders_deposits","other_amount_threshold","out_amount","out_amount","output_mint","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","pct","platform_fee","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","prepare_swap_transaction","price_impact_pct","price_impact_pct","quote","route","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","serialize","serialize","serialize","serialize","serialize","serialize","serialize","setup_transaction","signature_fee","slippage_bps","swap","swap_mode","swap_transaction","time_taken","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","total_fee_and_deposits","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","user_public_key","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrap_unwrap_sol","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","AccountMeta","InstructionResponse","JupiterV6","PlatformFee","QuoteResponse","RoutePlan","SwapInfo","SwapInstructionsResponse","SwapRequest","SwapResponse","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","accounts","address_lookup_table_addresses","amm_key","amount","as_legacy_transaction","az","az","az","az","az","az","az","az","az","az","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","cleanup_instructions","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","compute_budget_instructions","compute_unit_price_micro_lamports","context_slot","data","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","descendants","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","destination_token_account","drop","drop","drop","drop","drop","drop","drop","drop","drop","drop","fee_account","fee_amount","fee_bps","fee_mint","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","from_ref","height","height","height","height","height","height","height","height","height","height","in_amount","in_amount","init","init","init","init","init","init","init","init","init","init","input_mint","input_mint","into","into","into","into","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","is_signer","is_writable","label","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","mango_client","other_amount_threshold","out_amount","out_amount","output_mint","output_mint","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","percent","platform_fee","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","prepare_swap_transaction","price_impact_pct","program_id","pubkey","quote","quote_response","route_plan","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","serialize","setup_instructions","slippage_bps","swap","swap_info","swap_instruction","swap_mode","swap_transaction","time_taken","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","token_ledger_instruction","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","use_shared_accounts","use_token_ledger","user_public_key","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","wrap_and_unwrap_sol","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","Direction","MaxNegative","MaxPositive","az","borrow","borrow_mut","cast_from","checked_as","checked_cast_from","deref","deref_mut","deref_or_borrow","deref_or_borrow_mut","descendants","drop","eq","fetch_top","fmt","from","height","init","into","into_request","into_request","lossless_try_into","lossless_try_into","lossy_into","lossy_into","overflowing_as","overflowing_cast_from","postorder","postorder_with_size_hint","preorder","preorder_with_size_hint","saturating_as","saturating_cast_from","try_from","try_into","type_id","unwrapped_as","unwrapped_cast_from","vzip","wrapping_as","wrapping_cast_from","BlockPrioFees","CuPercentileEmaPriorityFeeProvider","EmaPriorityFeeProviderConfig","EmaPriorityFeeProviderConfigBuilder","EmaPriorityFeeProviderConfigBuilderError","FixedPriorityFeeProvider","PriorityFeeProvider","UninitializedField","ValidationError","__clone_box","__clone_box","alpha","alpha","az","az","az","az","az","az","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","by_cu_percentile","cast_from","cast_from","cast_from","cast_from","cast_from","cast_from","checked_as","checked_as","checked_as","checked_as","checked_as","checked_as","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","clone","clone","clone_into","clone_into","compute_unit_fee_microlamports","compute_unit_fee_microlamports","compute_unit_fee_microlamports","compute_unit_fee_microlamports","default","default","deref","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","deref_or_borrow_mut","descendants","descendants","descendants","descendants","descendants","descendants","drop","drop","drop","drop","drop","drop","fallback_prio","fallback_prio","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from_ref","from_ref","height","height","height","height","height","height","init","init","init","init","init","init","into","into","into","into","into","into","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","into_request","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","max_age","max_age","new","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","percentile","percentile","percentile","postorder","postorder","postorder","postorder","postorder","postorder","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","postorder_with_size_hint","preorder","preorder","preorder","preorder","preorder","preorder","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","preorder_with_size_hint","provide","run","run_broadcast_from_websocket_feed","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","slot","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","vzip","vzip","vzip","vzip","vzip","vzip","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","PriorityFeeArgs","__clone_box","augment_args","augment_args_for_update","az","borrow","borrow_mut","cast_from","checked_as","checked_cast_from","clone","clone_into","deref","deref_mut","deref_or_borrow","deref_or_borrow_mut","descendants","drop","fmt","from","from_arg_matches","from_arg_matches_mut","from_ref","height","init","into","into_request","into_request","lossless_try_into","lossless_try_into","lossy_into","lossy_into","make_prio_provider","overflowing_as","overflowing_cast_from","postorder","postorder_with_size_hint","preorder","preorder_with_size_hint","saturating_as","saturating_cast_from","to_owned","try_from","try_into","type_id","unwrapped_as","unwrapped_cast_from","update_from_arg_matches","update_from_arg_matches_mut","vzip","wrapping_as","wrapping_cast_from","Config","az","borrow","borrow_mut","cast_from","checked_as","checked_cast_from","deref","deref_mut","deref_or_borrow","deref_or_borrow_mut","descendants","drop","from","get_multiple_accounts_count","height","init","into","into_request","into_request","is_mango_account","lossless_try_into","lossless_try_into","lossy_into","lossy_into","mango_group","min_slot","overflowing_as","overflowing_cast_from","parallel_rpc_requests","postorder","postorder_with_size_hint","preorder","preorder_with_size_hint","rpc_http_url","saturating_as","saturating_cast_from","snapshot_interval","start","try_from","try_into","type_id","unwrapped_as","unwrapped_cast_from","vzip","wrapping_as","wrapping_cast_from","Config","az","borrow","borrow_mut","cast_from","checked_as","checked_cast_from","deref","deref_mut","deref_or_borrow","deref_or_borrow_mut","descendants","drop","from","get_next_create_bank_slot","height","init","into","into_request","into_request","lossless_try_into","lossless_try_into","lossy_into","lossy_into","open_orders_authority","overflowing_as","overflowing_cast_from","postorder","postorder_with_size_hint","preorder","preorder_with_size_hint","rpc_ws_url","saturating_as","saturating_cast_from","serum_programs","start","try_from","try_into","type_id","unwrapped_as","unwrapped_cast_from","vzip","wrapping_as","wrapping_cast_from"],"q":["mango_v4_client","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::MangoClientError","","mango_v4_client::account_update_stream","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::chain_data","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::confirm_transaction","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::error_tracking","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::gpa","","","","","","","mango_v4_client::health_cache","","mango_v4_client::jupiter","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::jupiter::v4","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::jupiter::v6","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::perp_pnl","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::priority_fees","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::priority_fees_cli","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::snapshot_source","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::websocket_source","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","Every possible fallback oracle (may cause serious issues …","Some Result<> types don’t convert to anyhow::Result …","Push to an async_channel::Sender and ignore if the channel …","","","Builder for ClientConfig.","Error type for ClientBuilder","","","The account_fetcher checks for stale oracles and uses …","","","","","Only provided fallback oracles are used","","","","","","No fallback oracles","","","","","","","","","","Builder for TransactionBuilderConfig.","Error type for TransactionBuilderConfigBuilder","","Uninitialized field","Uninitialized field","Custom validation error","Custom validation error","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Builds a new TransactionBuilderConfig.","Builds a new ClientConfig.","","","","","","","","","","","","","","","","","","","","","","","","","","Returns true if the on-chain context changed …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","RPC url","RPC url","","","Commitment for interacting with the chain. Defaults to …","Commitment for interacting with the chain. Defaults to …","adds a SetComputeUnitBudget instruction if none exists","adds a SetComputeUnitBudget instruction if none exists","","","","","","","","","","","","","","","","","","","","","","","","Like tokio::time::interval(), but with Delay as default …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns a map of oracle pubkey -> FallbackOracleContext","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Determines how fallback oracle accounts are provided to …","Determines how fallback oracle accounts are provided to …","","Transaction fee payer. Needs to be set to send …","Transaction fee payer. Needs to be set to send …","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Prefer using the builder()","","Allows control of AccountFetcher and externally created …","Conveniently creates a RPC based client","","","","Sometimes clients don’t want to borrow the Client …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If set, don’t use cluster for sending transactions and …","If set, don’t use cluster for sending transactions and …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Do some manual unpacking on some ClientErrors","","","adds a SetComputeUnitPrice instruction in front if none …","adds a SetComputeUnitPrice instruction in front if none …","","","","","","","","","","","","","","","Defaults to waiting up to 60s for confirmation","Defaults to waiting up to 60s for confirmation","Defaults to a preflight check at processed commitment","Defaults to a preflight check at processed commitment","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Sends a transaction via the configured cluster (or all …","Send a message if the channel isn’t full","","","","","","","","","","","","","","","","","","","","","","","","Timeout, defaults to 60s","Timeout, defaults to 60s","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Creates token withdraw instructions for the MangoClient’…","","Convenience function used in binaries to set up the fmt …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A complex account fetcher that mostly depends on an …","Track slots and account writes","","","","","","","","","","Ref to the most recent live write of the pubkey","","","","","Cloned snapshot of all the most recent live writes per …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","Iterate over the most recent live data for all stored …","Iterate over the most recent rooted data for all stored …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Return success once all addresses have data >= min_slot","","","","","","","","","","","","","","","","","","","","","","","Return the maximum slot reported for the processing of the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Builder for RpcConfirmTransactionConfig.","Error type for RpcConfirmTransactionConfigBuilder","","Uninitialized field","Custom validation error","","","","","","","","","","","","","","","","Builds a new RpcConfirmTransactionConfig.","","","","","","","","","","","","","","","","","","If none, defaults to the RpcClient’s configured default …","If none, defaults to the RpcClient’s configured default …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Time after which to start checking for blockhash expiry.","Time after which to start checking for blockhash expiry.","","","","","","","","","Interval between signature status queries.","Interval between signature status queries.","","If none, there’s no timeout. The confirmation will still …","If none, there’s no timeout. The confirmation will still …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Wait for signature to be confirmed at commitment or until …","","","","","","","","","","","Builder for ErrorTracking.","Error type for ErrorTrackingBuilder","Uninitialized field","Custom validation error","","","","","","","","","","","","","","","Builds a new ErrorTracking.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","after what time of no-errors may error info be wiped?","after what time of no-errors may error info be wiped?","","Log all errors that cause skipping","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","duration that had_too_many_errors returns true for after …","duration that had_too_many_errors returns true for after …","number of errors of a type after which had_too_many_errors …","number of errors of a type after which had_too_many_errors …","","","","","","","","","","","","","","","","","","","","","","","","","","","Wipes old errors and occasionally logs errors that caused …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Find the instructions and account lookup tables for a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Find the instructions and account lookup tables for a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns up to count accounts with highest abs pnl (by …","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Builder for EmaPriorityFeeProviderConfig.","Error type for EmaPriorityFeeProviderConfigBuilder","","","Uninitialized field","Custom validation error","","","","","","","","","","","","","","","","","","","","","","","Builds a new EmaPriorityFeeProviderConfig.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,25,0,0,0,0,0,0,0,0,25,26,26,0,0,25,0,0,0,0,0,25,0,0,0,54,0,0,0,0,0,0,0,0,14,18,14,18,159,23,12,19,24,25,17,16,26,11,27,28,29,7,8,0,0,0,24,28,29,80,20,7,28,29,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,8,11,11,29,29,28,28,29,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,12,16,12,13,17,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,0,20,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,7,23,8,23,12,19,24,25,17,16,26,11,27,28,29,7,23,12,19,24,25,17,16,26,11,27,28,29,7,12,19,28,28,12,19,16,17,20,13,80,0,8,8,7,36,36,36,36,36,36,11,36,12,24,25,17,16,7,12,12,0,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,20,8,20,8,20,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,25,11,27,28,29,25,25,11,11,27,27,28,28,29,29,0,28,29,11,12,19,13,12,19,8,8,2,50,23,2,50,23,2,50,23,2,2,8,8,8,11,11,14,14,54,54,24,25,18,18,50,23,13,8,80,36,20,12,14,14,14,19,54,24,25,17,16,18,18,18,26,11,27,28,29,7,23,12,19,24,25,17,16,26,11,27,28,29,7,7,7,2,50,23,0,8,20,11,29,8,0,8,36,36,36,36,36,8,8,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,8,0,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,29,80,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,50,23,23,13,13,8,8,80,80,36,36,20,20,12,12,14,14,19,19,54,54,24,24,25,25,17,17,16,16,18,18,26,26,11,11,27,27,28,28,29,29,7,7,7,24,0,8,12,19,8,12,19,8,12,19,27,0,27,7,24,24,8,50,50,23,23,13,13,8,8,80,80,36,36,20,20,12,12,14,14,19,19,54,54,24,24,25,25,17,17,16,16,18,18,26,26,11,11,27,27,28,28,29,29,7,7,50,50,23,23,13,13,8,8,80,80,36,36,20,20,12,12,14,14,19,19,54,54,24,24,25,25,17,17,16,16,18,18,26,26,11,11,27,27,28,28,29,29,7,7,8,8,8,159,11,20,11,11,28,29,11,23,13,7,8,8,13,20,20,13,20,20,11,29,11,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,12,19,8,8,80,28,28,20,8,8,8,8,8,20,29,20,20,8,8,8,0,8,8,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,0,0,16,16,17,0,0,14,54,18,0,7,27,29,28,28,50,13,13,12,19,12,19,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,80,80,8,8,13,160,20,20,8,8,8,8,8,8,8,20,20,20,8,8,20,8,28,28,29,80,8,80,0,12,19,7,23,12,19,24,25,17,16,26,11,27,28,29,7,0,14,54,18,0,20,20,20,8,8,8,11,20,8,8,8,8,20,0,80,8,12,19,80,80,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,28,11,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,0,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,50,23,13,8,80,36,20,12,14,19,54,24,25,17,16,18,26,11,27,28,29,7,161,161,95,0,0,95,95,94,95,94,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,95,94,94,95,94,95,94,95,94,94,95,95,94,94,95,95,94,94,95,95,94,95,94,95,94,95,94,95,94,95,94,95,94,94,95,94,95,94,94,95,94,95,94,95,94,95,94,95,94,95,95,94,95,94,95,94,95,0,0,0,0,101,101,101,0,0,101,102,99,98,99,98,98,98,98,98,109,103,101,102,99,98,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,102,103,98,109,103,101,102,99,98,109,103,101,102,99,101,102,99,101,102,99,98,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,101,103,103,103,103,103,103,103,103,103,103,103,101,102,99,98,109,103,101,102,99,101,102,99,103,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,98,109,109,103,103,101,101,102,102,99,99,99,98,98,98,98,109,109,103,103,101,101,102,102,99,99,98,98,109,109,103,103,101,101,102,102,99,99,98,109,98,98,98,109,103,101,102,99,98,109,103,101,102,99,102,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,98,103,103,109,103,98,109,103,101,102,99,98,109,103,101,102,99,102,99,98,109,102,101,102,99,103,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,98,98,98,109,103,101,102,99,98,109,103,101,102,99,98,109,103,101,102,99,99,114,114,0,0,0,114,113,113,0,112,37,114,112,113,37,114,112,113,37,114,112,113,37,112,37,114,112,113,37,114,112,113,37,114,112,113,37,112,37,112,37,112,37,112,37,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,114,114,113,113,37,114,114,112,113,113,113,37,112,37,114,112,113,37,114,112,113,37,114,112,113,37,114,114,112,112,113,113,37,37,114,114,112,112,113,113,37,37,114,114,112,112,113,113,37,37,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,114,113,112,37,114,112,113,37,114,112,113,37,112,37,114,112,37,112,37,114,113,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,114,112,113,37,0,114,112,113,37,114,112,113,37,0,0,0,0,120,120,121,118,121,119,118,120,121,119,118,120,121,119,118,120,118,119,121,119,118,120,121,119,118,120,121,119,118,120,119,121,118,121,118,121,118,121,119,118,120,121,119,118,120,121,119,118,120,121,119,118,120,121,119,118,120,121,119,118,120,121,120,120,121,119,118,120,120,120,121,118,119,121,119,118,120,121,119,118,120,121,119,118,120,121,121,119,119,118,118,120,120,118,119,121,119,118,119,121,121,119,119,118,118,120,120,121,121,119,119,118,118,120,120,121,119,118,120,121,119,118,120,121,119,118,120,121,119,118,120,121,119,118,120,121,119,118,120,120,119,121,119,118,120,121,119,118,120,118,119,118,119,118,121,118,120,121,119,118,120,121,119,118,120,121,119,118,120,118,119,121,119,118,120,121,119,118,120,119,121,119,118,120,119,121,119,118,120,121,119,118,120,0,0,0,0,0,0,0,0,0,0,123,124,0,0,123,124,123,124,0,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,123,124,125,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,123,123,123,125,63,123,124,125,123,124,125,63,123,124,125,125,63,123,124,125,125,63,123,124,125,63,63,123,123,124,124,125,125,63,63,123,123,124,124,125,125,63,63,123,123,124,124,125,125,63,125,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,63,125,63,125,63,123,124,125,63,123,124,125,123,124,125,63,123,124,125,125,125,63,123,124,125,63,123,124,125,63,123,124,125,63,123,124,125,0,0,63,123,124,125,63,123,124,125,63,123,124,125,0,0,0,0,0,0,0,0,128,126,129,130,131,132,133,126,130,131,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,133,128,126,129,130,131,132,133,128,126,129,130,131,132,133,132,128,128,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,126,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,129,126,129,64,128,126,129,130,131,132,133,129,64,128,126,129,130,131,132,133,64,64,128,128,126,126,129,129,130,130,131,131,132,132,133,133,129,64,64,128,128,126,126,129,129,130,130,131,131,132,132,133,133,64,64,128,128,126,126,129,129,130,130,131,131,132,132,133,133,129,64,126,129,129,131,130,129,131,126,126,129,129,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,130,129,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,126,129,64,132,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,128,126,129,130,131,132,133,133,131,126,64,126,133,128,128,126,129,130,131,132,133,131,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,132,64,128,126,129,130,131,132,133,132,64,128,126,129,130,131,132,133,64,128,126,129,130,131,132,133,0,0,0,0,0,0,0,0,0,0,127,134,135,136,137,138,139,140,141,140,139,136,134,137,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,139,127,134,135,136,137,138,139,140,141,127,134,135,136,137,138,139,140,141,139,137,127,140,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,127,134,135,136,137,138,139,140,141,137,65,127,134,135,136,137,138,139,140,141,137,136,134,136,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,127,136,65,127,134,135,136,137,138,139,140,141,127,136,65,127,134,135,136,137,138,139,140,141,65,65,127,127,134,134,135,135,136,136,137,137,138,138,139,139,140,140,141,141,141,141,136,65,65,127,127,134,134,135,135,136,136,137,137,138,138,139,139,140,140,141,141,65,65,127,127,134,134,135,135,136,136,137,137,138,138,139,139,140,140,141,141,65,127,127,136,127,136,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,135,127,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,140,141,65,137,127,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,127,134,135,136,137,138,139,140,141,139,127,65,135,139,127,138,127,127,134,135,136,137,138,139,140,141,139,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,137,137,137,65,127,134,135,136,137,138,139,140,141,137,65,127,134,135,136,137,138,139,140,141,65,127,134,135,136,137,138,139,140,141,0,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,0,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,0,0,0,0,0,0,0,145,145,143,146,143,144,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,143,144,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,143,146,143,146,78,147,148,147,143,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,143,144,145,145,146,147,148,144,143,145,145,145,146,143,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,147,148,148,144,144,143,143,145,145,146,146,147,147,148,148,144,144,143,143,145,145,146,146,147,147,148,148,144,144,143,143,145,145,146,146,143,144,147,147,148,144,143,145,146,147,148,144,143,145,146,143,144,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,145,148,0,147,148,144,143,145,146,147,148,144,143,145,146,146,143,146,145,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,147,148,144,143,145,146,0,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,0,155,155,155,155,155,155,155,155,155,155,155,155,155,155,155,155,155,155,155,0,155,155,155,155,155,155,155,155,155,155,155,155,155,155,155,155,155,0,155,155,155,155,155,155,155,155,0,158,158,158,158,158,158,158,158,158,158,158,158,158,0,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,0,158,158,158,158,158,158,158,158],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],0,[[2,3],[[5,[4]]]],[[2,3],[[5,[6]]]],0,0,0,0,0,0,[[7,7]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[8,9],[[5,[10]]]],[11],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[12,[[15,[13,14]]]],[16,[[15,[17,18]]]],[12,[[15,[19,14]]]],[[],12],[[],16],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[20,20],21],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[7],[[[23,[2]]]],0,[[[23,[2]]],[[23,[2]]]],[12,12],[19,19],[24,24],[25,25],[17,17],[16,16],[26,26],[11,11],[27,27],[28,28],[29,29],[7,7],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[12,30],12],0,0,0,[[12,31],12],0,[[16,[22,[32]]],16],0,0,[13,19],0,0,0,[[13,3,[34,[33]],[34,[33]],32,35],5],0,0,0,0,0,0,0,0,[[],36],[[],12],[[],24],[[],25],[[],17],[[],16],[[],7],[[],37],[[],38],[39,40],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[20,25,2],[[5,[[42,[3,27]]]]]],[[8,6,[43,[9]],[43,[9]],[43,[44]]],5],[[20,6,[43,[9]],[43,[9]],[43,[44]],[42,[3,27]]],5],[[8,6,6],5],[[20,6,6,[42,[3,27]]],5],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[[25,25],21],[[11,11],21],[[27,27],21],[[28,28],21],[[29,29],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],[[],21],0,0,0,0,[[12,25],12],0,[13,[[34,[33]]]],[[12,[22,[[34,[33]]]]],12],0,[[8,3],[[5,[45]]]],[[8,46],[[5,[[43,[45]]]]]],[[],[[49,[[48,[47]]]]]],[50,[[49,[[48,[47]]]]]],[[[23,[2]]],[[49,[[48,[47]]]]]],[3,[[49,[[48,[47]]]]]],[[50,3],[[49,[[48,[47]]]]]],[[[23,[2]],3],[[49,[[48,[47]]]]]],[3,[[49,[[48,[47]]]]]],[[50,3],[[49,[[48,[47]]]]]],[[[23,[2]],3],[[49,[[48,[47]]]]]],[3,[[49,[[48,[47]]]]]],[3,[[49,[[48,[47]]]]]],[[13,3,33],[[5,[43]]]],[[13,3,[34,[33]],[34,[33]],35],[[5,[3]]]],[[8,9],[[5,[51]]]],[11,3],[11,3],[[14,52],53],[[14,52],53],[[54,52],53],[[54,52],53],[[24,52],53],[[25,52],53],[[18,52],53],[[18,52],53],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[55,14],[56,14],[[]],[[]],[[]],[[]],[[]],[[]],[56,18],[55,18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[57,32],7],[[[43,[57]],32],7],[[],[[49,[[48,[47]]]]]],[50,[[49,[[48,[47]]]]]],[[[23,[2]]],[[49,[[48,[47]]]]]],0,[8,3],0,0,0,[[3,32],3],0,[[8,6],[[5,[58]]]],0,0,0,[[36,6,41],32],[[36,41,41,41,41],32],[[8,6,[43,[9]],[43,[9]],[43,[44]]],[[5,[7]]]],[[8,6,[43,[9]],[43,[9]],[43,[44]]],[[5,[7]]]],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],0,[59,[[5,[60]]]],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],62],[[],61],[[],62],[[],61],[[],61],[[],62],[7,21],[24,21],0,[8,63],[[12,56],12],0,[8,64],[[12,56],12],0,[8,65],[[12,56],12],0,0,[35,33],[27,[[43,[3]]]],[7,41],0,[[],24],[[[34,[8]],39]],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[8,[[5,[6]]]],0,[8,[[5,[[43,[45]]]]]],[[],5],0,[[20,9],3],0,0,0,0,[[11,10],66],[[[34,[2]]],[[23,[2]]]],[[30,31,[34,[33]],[22,[39]],17],13],[[],7],[[13,3,[34,[33]],20,[34,[2]]],[[5,[8]]]],[[13,3,[34,[33]]],[[5,[8]]]],[19,13],[[67,3],[[5,[20]]]],[[20,67],[[5,[21]]]],[13,67],[[20,67],[[5,[21]]]],[[20,67],[[5,[21]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[12,[22,[[43,[56]]]]],12],0,[8,3],0,0,0,0,[[20,44],29],[[8,44,68],[[5,[7]]]],[[8,44],[[5,[69]]]],[[8,44,70,71],[[5,[7]]]],[[8,44],[[5,[69]]]],[[8,44,71],[[5,[7]]]],[[20,44],3],0,0,0,[[8,44],[[5,[10]]]],[[8,44,72,70,70,70,71,73,21,71,68,74],[[5,[69]]]],[[8,6,44,72,70,70,70,71,73,21,71,68,74],[[5,[7]]]],0,[[8,44],[[5,[69]]]],[[8,44],[[5,[7]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[75,76],[77,76],[[16,[22,[71]]],16],[[16,[22,[[34,[78]]]]],16],0,0,0,[79],[79],[79],[35,3],[[7,57,32]],0,0,0,0,0,[[13,3],[[5,[4]]]],[13,67],[[12,37],12],0,[[12,38],12],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[80,13],[[5,[69]]]],[[80,13],[[5,[69]]]],[[8,[43,[57]]],[[5,[69]]]],[[8,[43,[57]]],[[5,[69]]]],[13,[[5,[69]]]],[[],[[15,[81]]]],[[20,82],28],[[20,82],11],[[8,35],[[15,[[43,[83]],76]]]],[[8,6,82,68],[[5,[7]]]],[[8,35,84,83],[[5,[69]]]],[[8,35],[[5,[69]]]],[[8,82],57],[[8,82,3],[[5,[69]]]],[[8,82,3],[[5,[7]]]],[[20,35],82],0,0,[[8,35,84,71,71,71,85,86,71,87],[[5,[69]]]],[[8,6,82,84,71,71,71,85,86,71,87],[[5,[7]]]],[[20,82],11],[[8,35],[[5,[69]]]],0,0,0,0,[[8,[43,[57]]],[[5,[88]]]],[[80,13],[[5,[88]]]],0,[[12,39],12],0,[7,[[43,[57]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[3,89],[[],56],[[],56],[[],56],[3,89],[[20,9],11],[[20,3],[[5,[11]]]],[[20,35],11],[[8,71],[[5,[7]]]],[[8,71,71,71,71,90],[[5,[7]]]],[[8,3,71,21],[[5,[69]]]],0,0,[[8,9,10],[[5,[7]]]],[[8,9,9,10],[[5,[7]]]],[[8,3,71,21],[[5,[69]]]],[[8,6,3,71,21],[[5,[7]]]],0,[[]],[[80,67],[[5,[91]]]],[8,[[5,[80]]]],[[12,17],12],0,[80,[[5,[24]]]],[[80,92],[[5,[91]]]],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,[1],[1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],22],[[],22],[[],22],[[],22],[94,94],[95,95],[[]],[[]],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[41,41],[41,41],[41],[41],[[]],[[]],[[]],[[]],[[[97,[96]]],[[5,[94]]]],[[],41],[[],41],[[],41],[[],41],[[]],[[]],[[],61],[[],62],[[],62],[[],61],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],0,[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[]],[[]],[[]],[[]],[[95,98]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[1],[1],[1],[[98,3],[[15,[99,76]]]],0,[98,41],[98,41],[98,41],[98,[[42,[3,99,100]]]],[[]],[[]],[[]],[[]],[[]],[[]],[98,71],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[101,101],[102,102],[99,99],[[]],[[]],[[]],[[],98],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41],[41],[41],[41],[41],[41],[[101,101],21],[[103,3],[[5,[[0,[104,105]]]]]],[[103,3],5],[[103,3],[[5,[10]]]],[[103,3],[[5,[[0,[104,105]]]]]],[[103,3],[[5,[6]]]],[[103,3],[[5,[6]]]],[103,[[49,[[48,[47]]]]]],[[103,3],[[49,[[48,[47]]]]]],[[103,3],[[5,[106]]]],[[103,3],[[49,[[48,[47]]]]]],[[103,3],[[49,[[48,[47]]]]]],[[101,52],[[15,[107]]]],[[102,52],[[15,[107]]]],[[99,52],[[15,[107]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[103,[[49,[[48,[47]]]]]],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[]],[[]],[[]],[[]],[[]],[[]],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[99,71,71],21],[98,46],[98,46],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],98],[108,109],[98,71],[98,71],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[98,42],[98,42],[[103,3],[[5,[110]]]],[[103,110,39],5],[[109,98]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[98,41],[[[34,[[111,[98]]]],108,39]],0,[[]],[[]],[[]],[103,[[5,[110]]]],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[98,3,99]],[[98,102]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[1],[1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[112,[[15,[37,113]]]],[[],112],[[]],[[]],[[]],[[]],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[112,112],[37,37],[[]],[[]],[[112,[22,[31]]],112],0,[[],112],[[],37],[41],[41],[41],[41],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[41,41],[41,41],[41,41],[41],[41],[41],[41],[[114,52],53],[[114,52],53],[[113,52],53],[[113,52],53],[[37,52],53],[[]],[77,114],[[]],[[]],[55,113],[56,113],[[]],[[]],[[]],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[]],[[]],[[]],[[]],[[],62],[[],61],[[],61],[[],62],[[],62],[[],61],[[],62],[[],61],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[79],[79],[[112,39],112],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[112,39],112],0,[114,[[22,[115]]]],[[112,[22,[39]]],112],0,[[]],[[]],[[],56],[[],56],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[],93],[[],93],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[67,69,92,37],[[15,[116,114]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[1],[1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[118,[117,117]]],[[15,[[119,[117,117]],120]]]],[[],118],[[]],[[]],[[]],[[]],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[119],[121,121],[[[118,[117,117]]],[[118,[117,117]]]],[[]],[[]],0,[[],[[118,[117,117]]]],[41],[41],[41],[41],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[41,41],[41,41],[41,41],[41],[41],[41],[41],0,[[120,52],53],[[120,52],53],[[]],[[]],[[]],[56,120],[55,120],[[]],[[]],[[]],[[119,122],[[22,[121]]]],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[]],[[]],[[]],[[]],[[],62],[[],61],[[],61],[[],62],[[],62],[[],61],[[],61],[[],62],[[[118,[117,117]],39],[[118,[117,117]]]],0,0,[119],[[[118,[117,117]],39],[[118,[117,117]]]],0,[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[79],[[119,56]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[118,[117,117]],39],[[118,[117,117]]]],0,[[[118,[117,117]],71],[[118,[117,117]]]],0,[[118,71],118],[[]],[[]],[[],56],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[],93],[[],93],[[[118,[117,117]],41],[[118,[117,117]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[119],[[]],[[]],[[]],[[]],[119],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[67,3],[[5,[4]]]],[[67,3,3],[[5,[43]]]],[[67,3,3,3],[[5,[43]]]],[[67,3,3],[[5,[43]]]],[67,[[5,[43]]]],[[67,3,3],[[5,[43]]]],[[67,3,3],[[5,[43]]]],[[20,25,2,6],[[5,[58]]]],[[20,103,6],[[5,[58]]]],0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[123,123],[124,124],[125,125],[[]],[[]],[[]],[41],[41],[41],[41],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[41,41],[41,41],[41,41],[41],[41],[41],[41],[[123,123],21],[[],21],[[],21],[125,56],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],41],[[],41],[[],41],[[],41],0,[[],41],[[],41],[[],41],[[],41],0,[[]],[[]],[[]],[[]],[[],61],[[],62],[[],62],[[],61],[[],61],[[],62],[[],61],[[],62],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[63,125],[[5,[80]]]],0,[[63,3,3,71,71,21,123],[[5,[125]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[3,3,126],[[5,[125]]]],[127,[[5,[125]]]],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[],93],[[],93],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[1],[1],[1],[1],[1],[1],[1],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],0,[128,128],[126,126],[129,129],[130,130],[131,131],[132,132],[133,133],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[[],[[15,[128]]]],[[],[[15,[126]]]],[[],[[15,[129]]]],[[],[[15,[130]]]],[[],[[15,[131]]]],[[],[[15,[132]]]],[[],[[15,[133]]]],[41],[41],[41],[41],[41],[41],[41],[41],0,[[128,52],53],[[126,52],53],[[129,52],53],[[130,52],53],[[131,52],53],[[132,52],53],[[133,52],53],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],0,0,0,[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],62],[[],61],[[],61],[[],62],[[],62],[[],61],0,[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[64,3,3,126],[[5,[80]]]],0,0,[[64,3,3,71,71,26,21],[[5,[126]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[128,15],[126,15],[129,15],[130,15],[131,15],[132,15],[133,15],0,0,0,[[64,3,3,71,71,26,21],[[5,[69]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[1],[1],[1],[1],[1],[1],0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],0,[127,127],[134,134],[135,135],[136,136],[137,137],[138,138],[139,139],[140,140],[141,141],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[[],[[15,[127]]]],[[],[[15,[134]]]],[[],[[15,[135]]]],[[],[[15,[136]]]],[[],[[15,[137]]]],[[],[[15,[138]]]],[[],[[15,[139]]]],[[],[[15,[140]]]],[[],[[15,[141]]]],0,[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],0,0,0,0,[[127,52],53],[[134,52],53],[[135,52],53],[[136,52],53],[[137,52],53],[[138,52],53],[[139,52],53],[[140,52],53],[[141,52],53],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],0,0,[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],61],[[],62],[[],62],[[],61],[[],61],[[],62],[[],62],[[],61],[[],62],[[],61],[[],61],[[],62],[[],61],[[],62],0,0,0,[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[65,127],[[5,[80]]]],0,0,0,[[65,3,3,71,71,21],[[5,[127]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[127,15],[134,15],[135,15],[136,15],[137,15],[138,15],[139,15],[140,15],[141,15],0,0,[[65,3,3,71,71,21],[[5,[69]]]],0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[],22],[[],22],[41],[41],[[]],[[]],[41,41],[41],[[142,142],21],[[20,25,44,142,41],[[5,[43]]]],[[142,52],53],[[]],[[],41],[[],41],[[]],[[],61],[[],62],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],93],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[1],[1],[[143,66],143],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[143,[[15,[144,145]]]],[[],143],0,[[]],[[]],[[]],[[]],[[]],[[]],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[143,143],[146,146],[[]],[[]],[[],71],[147,71],[148,71],0,[[],143],[[],146],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[41],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[41,41],[41,41],[41,41],[41,41],[41,41],[41,41],[41],[41],[41],[41],[41],[41],[[143,71],143],0,[[145,52],53],[[145,52],53],[[146,52],53],[[]],[[]],[[]],[[]],[56,145],[[]],[55,145],[[]],[[]],[[]],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[],41],[[]],[[]],[[]],[[]],[[]],[[]],[[],61],[[],62],[[],62],[[],61],[[],62],[[],61],[[],61],[[],62],[[],62],[[],61],[[],62],[[],61],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[],22],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[143,39],143],0,[71,147],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[143,68],143],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[79],[[144,149]],[56],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[],56],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[1],[150,150],[150,150],[[]],[[]],[[]],[[]],[[],22],[[],22],[151,151],[[]],[41],[41],[[]],[[]],[41,41],[41],[[151,52],53],[[]],[152,[[15,[151,153]]]],[152,[[15,[151,153]]]],[[]],[[],41],[[],41],[[]],[[],62],[[],61],[[],22],[[],22],[[]],[[]],[[151,56],5],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],93],[[]],[[]],[[151,152],[[15,[153]]]],[[151,152],[[15,[153]]]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[],22],[[],22],[41],[41],[[]],[[]],[41,41],[41],[[]],0,[[],41],[[],41],[[]],[[],62],[[],61],[[106,3],[[22,[154]]]],[[],22],[[],22],[[]],[[]],0,0,[[]],[[]],0,[[]],[[]],[[]],[[]],0,[[]],[[]],0,[[155,[43,[3]],[156,[95]]]],[[],15],[[],15],[[],93],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[],22],[[],22],[41],[41],[[]],[[]],[41,41],[41],[[]],[[[157,[95]],39],[[5,[71]]]],[[],41],[[],41],[[]],[[],62],[[],61],[[],22],[[],22],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],0,[[158,[43,[3]],[156,[95]]]],[[],15],[[],15],[[],93],[[]],[[]],[[]],[[]],[[]]],"p":[[3,"Private"],[8,"AccountFetcher"],[3,"Pubkey"],[8,"AccountDeserialize"],[6,"Result"],[6,"MangoAccountValue"],[3,"PreparedInstructions"],[3,"MangoClient"],[6,"TokenIndex"],[6,"I80F48"],[3,"TokenContext"],[3,"ClientBuilder"],[3,"Client"],[4,"ClientBuilderError"],[4,"Result"],[3,"TransactionBuilderConfigBuilder"],[3,"TransactionBuilderConfig"],[4,"TransactionBuilderConfigBuilderError"],[3,"ClientConfig"],[3,"MangoGroupContext"],[15,"bool"],[4,"Option"],[3,"CachedAccountFetcher"],[3,"TransactionSize"],[4,"FallbackOracleConfig"],[4,"JupiterSwapMode"],[3,"FallbackOracleContext"],[3,"Serum3MarketContext"],[3,"PerpMarketContext"],[4,"Cluster"],[3,"CommitmentConfig"],[15,"u32"],[3,"Keypair"],[3,"Arc"],[15,"str"],[3,"ComputeEstimates"],[3,"RpcConfirmTransactionConfig"],[3,"RpcSendTransactionConfig"],[3,"Duration"],[3,"Interval"],[15,"usize"],[3,"HashMap"],[3,"Vec"],[6,"PerpMarketIndex"],[3,"AddressLookupTableAccount"],[8,"Iterator"],[8,"Future"],[3,"Box"],[3,"Pin"],[3,"RpcAccountFetcher"],[3,"Bank"],[3,"Formatter"],[6,"Result"],[4,"MangoClientError"],[3,"UninitializedFieldError"],[3,"String"],[3,"Instruction"],[3,"HealthCache"],[3,"Response"],[8,"DeserializeOwned"],[3,"Request"],[3,"Request"],[3,"Jupiter"],[3,"JupiterV4"],[3,"JupiterV6"],[15,"f64"],[3,"RpcClient"],[15,"u8"],[3,"Signature"],[15,"i64"],[15,"u64"],[4,"Side"],[4,"PlaceOrderType"],[4,"SelfTradeBehavior"],[4,"ClientError"],[3,"Error"],[3,"Error"],[8,"PriorityFeeProvider"],[3,"Demand"],[3,"TransactionBuilder"],[3,"SendError"],[6,"Serum3MarketIndex"],[15,"u128"],[4,"Serum3Side"],[4,"Serum3SelfTradeBehavior"],[4,"Serum3OrderType"],[15,"u16"],[6,"SimulateTransactionResponse"],[3,"AccountMeta"],[15,"f32"],[3,"VersionedTransaction"],[3,"Hash"],[3,"TypeId"],[3,"AccountUpdate"],[4,"Message"],[3,"RpcKeyedAccount"],[3,"Response"],[3,"ChainData"],[3,"AccountData"],[3,"RandomState"],[4,"SlotStatus"],[3,"SlotData"],[3,"AccountFetcher"],[8,"ZeroCopy"],[8,"Owner"],[3,"AccountSharedData"],[3,"Error"],[3,"Metrics"],[3,"ChainDataMetrics"],[6,"Slot"],[3,"RwLock"],[3,"RpcConfirmTransactionConfigBuilder"],[4,"RpcConfirmTransactionConfigBuilderError"],[4,"WaitForTransactionConfirmationError"],[8,"Error"],[3,"TransactionStatus"],[8,"Clone"],[3,"ErrorTrackingBuilder"],[3,"ErrorTracking"],[4,"ErrorTrackingBuilderError"],[3,"ErrorState"],[3,"Instant"],[4,"Version"],[4,"RawQuote"],[3,"Quote"],[3,"QueryRoute"],[3,"QuoteResponse"],[3,"QueryResult"],[3,"QueryMarketInfo"],[3,"QueryFee"],[3,"QueryRouteFees"],[3,"SwapRequest"],[3,"SwapResponse"],[3,"PlatformFee"],[3,"RoutePlan"],[3,"SwapInfo"],[3,"SwapRequest"],[3,"SwapResponse"],[3,"SwapInstructionsResponse"],[3,"InstructionResponse"],[3,"AccountMeta"],[4,"Direction"],[3,"EmaPriorityFeeProviderConfigBuilder"],[3,"EmaPriorityFeeProviderConfig"],[4,"EmaPriorityFeeProviderConfigBuilderError"],[3,"BlockPrioFees"],[3,"FixedPriorityFeeProvider"],[3,"CuPercentileEmaPriorityFeeProvider"],[3,"Sender"],[6,"Command"],[3,"PriorityFeeArgs"],[3,"ArgMatches"],[3,"Error"],[6,"MangoAccountLoadedRef"],[3,"Config"],[3,"Sender"],[3,"Receiver"],[3,"Config"],[8,"AnyhowWrap"],[8,"AsyncChannelSendUnlessFull"],[13,"SendTransactionPreflightFailure"]]}\ }'); if (typeof window !== 'undefined' && window.initSearch) {window.initSearch(searchIndex)}; diff --git a/ts/client/classes/As.html b/ts/client/classes/As.html index 7c583d5d4..61d161921 100644 --- a/ts/client/classes/As.html +++ b/ts/client/classes/As.html @@ -1 +1 @@ -As | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Type parameters

  • Tag: keyof never

Hierarchy

  • As

Index

Constructors

Properties

Constructors

  • new As<Tag>(): As<Tag>
  • Type parameters

    • Tag: string | number | symbol

    Returns As<Tag>

Properties

[$as$]: Record<Tag, true>
$as$: typeof $as$

Generated using TypeDoc

\ No newline at end of file +As | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Type parameters

  • Tag: keyof never

Hierarchy

  • As

Index

Constructors

Properties

Constructors

  • new As<Tag>(): As<Tag>
  • Type parameters

    • Tag: string | number | symbol

    Returns As<Tag>

Properties

[$as$]: Record<Tag, true>
$as$: typeof $as$

Generated using TypeDoc

\ No newline at end of file diff --git a/ts/client/classes/Bank.html b/ts/client/classes/Bank.html index fcf2d8e5c..2ae268a90 100644 --- a/ts/client/classes/Bank.html +++ b/ts/client/classes/Bank.html @@ -1,6 +1,6 @@ -Bank | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • Bank

Implements

Index

Constructors

Properties

Accessors

Methods

Constructors

  • new Bank(publicKey: PublicKey, group: PublicKey, name: number[], mint: PublicKey, vault: PublicKey, oracle: PublicKey, oracleConfig: OracleConfigDto, stablePriceModel: StablePriceModel, depositIndex: I80F48Dto, borrowIndex: I80F48Dto, indexedDeposits: I80F48Dto, indexedBorrows: I80F48Dto, indexLastUpdated: BN, bankRateLastUpdated: BN, avgUtilization: I80F48Dto, adjustmentFactor: I80F48Dto, util0: I80F48Dto, rate0: I80F48Dto, util1: I80F48Dto, rate1: I80F48Dto, maxRate: I80F48Dto, collectedFeesNative: I80F48Dto, loanOriginationFeeRate: I80F48Dto, loanFeeRate: I80F48Dto, maintAssetWeight: I80F48Dto, initAssetWeight: I80F48Dto, maintLiabWeight: I80F48Dto, initLiabWeight: I80F48Dto, liquidationFee: I80F48Dto, dust: I80F48Dto, flashLoanTokenAccountInitial: BN, flashLoanApprovedAmount: BN, tokenIndex: TokenIndex, mintDecimals: number, bankNum: number, minVaultToDepositsRatio: number, netBorrowLimitWindowSizeTs: BN, lastNetBorrowsWindowStartTs: BN, netBorrowLimitPerWindowQuote: BN, netBorrowsInWindow: BN, borrowWeightScaleStartQuote: number, depositWeightScaleStartQuote: number, reduceOnly: number, forceClose: boolean, feesWithdrawn: BN, tokenConditionalSwapTakerFeeRate: number, tokenConditionalSwapMakerFeeRate: number, flashLoanSwapFeeRate: number, interestTargetUtilization: number, interestCurveScaling: number, potentialSerumTokens: BN, maintWeightShiftStart: BN, maintWeightShiftEnd: BN, maintWeightShiftDurationInv: I80F48Dto, maintWeightShiftAssetTarget: I80F48Dto, maintWeightShiftLiabTarget: I80F48Dto, fallbackOracle: PublicKey, depositLimit: BN, zeroUtilRate: I80F48Dto, platformLiquidationFee: I80F48Dto, collectedLiquidationFees: I80F48Dto, allowAssetLiquidation: boolean): Bank
  • Parameters

    • publicKey: PublicKey
    • group: PublicKey
    • name: number[]
    • mint: PublicKey
    • vault: PublicKey
    • oracle: PublicKey
    • oracleConfig: OracleConfigDto
    • stablePriceModel: StablePriceModel
    • depositIndex: I80F48Dto
    • borrowIndex: I80F48Dto
    • indexedDeposits: I80F48Dto
    • indexedBorrows: I80F48Dto
    • indexLastUpdated: BN
    • bankRateLastUpdated: BN
    • avgUtilization: I80F48Dto
    • adjustmentFactor: I80F48Dto
    • util0: I80F48Dto
    • rate0: I80F48Dto
    • util1: I80F48Dto
    • rate1: I80F48Dto
    • maxRate: I80F48Dto
    • collectedFeesNative: I80F48Dto
    • loanOriginationFeeRate: I80F48Dto
    • loanFeeRate: I80F48Dto
    • maintAssetWeight: I80F48Dto
    • initAssetWeight: I80F48Dto
    • maintLiabWeight: I80F48Dto
    • initLiabWeight: I80F48Dto
    • liquidationFee: I80F48Dto
    • dust: I80F48Dto
    • flashLoanTokenAccountInitial: BN
    • flashLoanApprovedAmount: BN
    • tokenIndex: TokenIndex
    • mintDecimals: number
    • bankNum: number
    • minVaultToDepositsRatio: number
    • netBorrowLimitWindowSizeTs: BN
    • lastNetBorrowsWindowStartTs: BN
    • netBorrowLimitPerWindowQuote: BN
    • netBorrowsInWindow: BN
    • borrowWeightScaleStartQuote: number
    • depositWeightScaleStartQuote: number
    • reduceOnly: number
    • forceClose: boolean
    • feesWithdrawn: BN
    • tokenConditionalSwapTakerFeeRate: number
    • tokenConditionalSwapMakerFeeRate: number
    • flashLoanSwapFeeRate: number
    • interestTargetUtilization: number
    • interestCurveScaling: number
    • potentialSerumTokens: BN
    • maintWeightShiftStart: BN
    • maintWeightShiftEnd: BN
    • maintWeightShiftDurationInv: I80F48Dto
    • maintWeightShiftAssetTarget: I80F48Dto
    • maintWeightShiftLiabTarget: I80F48Dto
    • fallbackOracle: PublicKey
    • depositLimit: BN
    • zeroUtilRate: I80F48Dto
    • platformLiquidationFee: I80F48Dto
    • collectedLiquidationFees: I80F48Dto
    • allowAssetLiquidation: boolean

    Returns Bank

Properties

_oracleLastKnownDeviation: undefined | I80F48
_oracleLastUpdatedSlot: undefined | number
_oracleProvider: undefined | OracleProvider
_price: undefined | I80F48
_uiPrice: undefined | number
adjustmentFactor: I80F48
allowAssetLiquidation: boolean
avgUtilization: I80F48
bankNum: number
bankRateLastUpdated: BN
borrowIndex: I80F48
borrowWeightScaleStartQuote: number
collectedFeesNative: I80F48
collectedLiquidationFees: I80F48
depositIndex: I80F48
depositLimit: BN
depositWeightScaleStartQuote: number
dust: I80F48
fallbackOracle: PublicKey
feesWithdrawn: BN
flashLoanApprovedAmount: BN
flashLoanSwapFeeRate: number
flashLoanTokenAccountInitial: BN
forceClose: boolean
group: PublicKey
indexLastUpdated: BN
indexedBorrows: I80F48
indexedDeposits: I80F48
initAssetWeight: I80F48
initLiabWeight: I80F48
interestCurveScaling: number
interestTargetUtilization: number
lastNetBorrowsWindowStartTs: BN
liquidationFee: I80F48
loanFeeRate: I80F48
loanOriginationFeeRate: I80F48
maintAssetWeight: I80F48
maintLiabWeight: I80F48
maintWeightShiftAssetTarget: I80F48
maintWeightShiftDurationInv: I80F48
maintWeightShiftEnd: BN
maintWeightShiftLiabTarget: I80F48
maintWeightShiftStart: BN
maxRate: I80F48
minVaultToDepositsRatio: number
mint: PublicKey
mintDecimals: number
name: string
netBorrowLimitPerWindowQuote: BN
netBorrowLimitWindowSizeTs: BN
netBorrowsInWindow: BN
oracle: PublicKey
oracleConfig: OracleConfig
platformLiquidationFee: I80F48
potentialSerumTokens: BN
publicKey: PublicKey
rate0: I80F48
rate1: I80F48
reduceOnly: number
stablePriceModel: StablePriceModel
tokenConditionalSwapMakerFeeRate: number
tokenConditionalSwapTakerFeeRate: number
tokenIndex: TokenIndex
util0: I80F48
util1: I80F48
vault: PublicKey
zeroUtilRate: I80F48

Accessors

  • get oracleLastUpdatedSlot(): number
  • get uiPrice(): number

Methods

  • areBorrowsReduceOnly(): boolean
  • areDepositsReduceOnly(): boolean
  • getBorrowLimitLeftInWindow(): I80F48
  • getBorrowRateUi(): number
  • getBorrowRateWithoutUpkeepRate(): I80F48
  • getDepositRateUi(): number
  • getMaxWithdraw(vaultBalance: BN, userDeposits?: I80F48): I80F48
  • getNetBorrowLimitPerWindow(): I80F48
  • getNetBorrowLimitPerWindowUi(): number
  • getTimeToNextBorrowLimitWindowStartsTs(): number
  • isOracleStaleOrUnconfident(nowSlot: number): boolean
  • toString(): string
  • uiBorrows(): number
  • uiDeposits(): number
  • from(publicKey: PublicKey, obj: { adjustmentFactor: I80F48Dto; avgUtilization: I80F48Dto; bankNum: number; bankRateLastUpdated: BN; borrowIndex: I80F48Dto; borrowWeightScaleStartQuote: number; collectedFeesNative: I80F48Dto; collectedLiquidationFees: I80F48Dto; depositIndex: I80F48Dto; depositLimit: BN; depositWeightScaleStartQuote: number; disableAssetLiquidation: number; dust: I80F48Dto; fallbackOracle: PublicKey; feesWithdrawn: BN; flashLoanApprovedAmount: BN; flashLoanSwapFeeRate: number; flashLoanTokenAccountInitial: BN; forceClose: number; group: PublicKey; indexLastUpdated: BN; indexedBorrows: I80F48Dto; indexedDeposits: I80F48Dto; initAssetWeight: I80F48Dto; initLiabWeight: I80F48Dto; interestCurveScaling: number; interestTargetUtilization: number; lastNetBorrowsWindowStartTs: BN; liquidationFee: I80F48Dto; loanFeeRate: I80F48Dto; loanOriginationFeeRate: I80F48Dto; maintAssetWeight: I80F48Dto; maintLiabWeight: I80F48Dto; maintWeightShiftAssetTarget: I80F48Dto; maintWeightShiftDurationInv: I80F48Dto; maintWeightShiftEnd: BN; maintWeightShiftLiabTarget: I80F48Dto; maintWeightShiftStart: BN; maxRate: I80F48Dto; minVaultToDepositsRatio: number; mint: PublicKey; mintDecimals: number; name: number[]; netBorrowLimitPerWindowQuote: BN; netBorrowLimitWindowSizeTs: BN; netBorrowsInWindow: BN; oracle: PublicKey; oracleConfig: OracleConfigDto; platformLiquidationFee: I80F48Dto; potentialSerumTokens: BN; rate0: I80F48Dto; rate1: I80F48Dto; reduceOnly: number; stablePriceModel: StablePriceModel; tokenConditionalSwapMakerFeeRate: number; tokenConditionalSwapTakerFeeRate: number; tokenIndex: number; util0: I80F48Dto; util1: I80F48Dto; vault: PublicKey; zeroUtilRate: I80F48Dto }): Bank
  • Parameters

    • publicKey: PublicKey
    • obj: { adjustmentFactor: I80F48Dto; avgUtilization: I80F48Dto; bankNum: number; bankRateLastUpdated: BN; borrowIndex: I80F48Dto; borrowWeightScaleStartQuote: number; collectedFeesNative: I80F48Dto; collectedLiquidationFees: I80F48Dto; depositIndex: I80F48Dto; depositLimit: BN; depositWeightScaleStartQuote: number; disableAssetLiquidation: number; dust: I80F48Dto; fallbackOracle: PublicKey; feesWithdrawn: BN; flashLoanApprovedAmount: BN; flashLoanSwapFeeRate: number; flashLoanTokenAccountInitial: BN; forceClose: number; group: PublicKey; indexLastUpdated: BN; indexedBorrows: I80F48Dto; indexedDeposits: I80F48Dto; initAssetWeight: I80F48Dto; initLiabWeight: I80F48Dto; interestCurveScaling: number; interestTargetUtilization: number; lastNetBorrowsWindowStartTs: BN; liquidationFee: I80F48Dto; loanFeeRate: I80F48Dto; loanOriginationFeeRate: I80F48Dto; maintAssetWeight: I80F48Dto; maintLiabWeight: I80F48Dto; maintWeightShiftAssetTarget: I80F48Dto; maintWeightShiftDurationInv: I80F48Dto; maintWeightShiftEnd: BN; maintWeightShiftLiabTarget: I80F48Dto; maintWeightShiftStart: BN; maxRate: I80F48Dto; minVaultToDepositsRatio: number; mint: PublicKey; mintDecimals: number; name: number[]; netBorrowLimitPerWindowQuote: BN; netBorrowLimitWindowSizeTs: BN; netBorrowsInWindow: BN; oracle: PublicKey; oracleConfig: OracleConfigDto; platformLiquidationFee: I80F48Dto; potentialSerumTokens: BN; rate0: I80F48Dto; rate1: I80F48Dto; reduceOnly: number; stablePriceModel: StablePriceModel; tokenConditionalSwapMakerFeeRate: number; tokenConditionalSwapTakerFeeRate: number; tokenIndex: number; util0: I80F48Dto; util1: I80F48Dto; vault: PublicKey; zeroUtilRate: I80F48Dto }
      • adjustmentFactor: I80F48Dto
      • avgUtilization: I80F48Dto
      • bankNum: number
      • bankRateLastUpdated: BN
      • borrowIndex: I80F48Dto
      • borrowWeightScaleStartQuote: number
      • collectedFeesNative: I80F48Dto
      • collectedLiquidationFees: I80F48Dto
      • depositIndex: I80F48Dto
      • depositLimit: BN
      • depositWeightScaleStartQuote: number
      • disableAssetLiquidation: number
      • dust: I80F48Dto
      • fallbackOracle: PublicKey
      • feesWithdrawn: BN
      • flashLoanApprovedAmount: BN
      • flashLoanSwapFeeRate: number
      • flashLoanTokenAccountInitial: BN
      • forceClose: number
      • group: PublicKey
      • indexLastUpdated: BN
      • indexedBorrows: I80F48Dto
      • indexedDeposits: I80F48Dto
      • initAssetWeight: I80F48Dto
      • initLiabWeight: I80F48Dto
      • interestCurveScaling: number
      • interestTargetUtilization: number
      • lastNetBorrowsWindowStartTs: BN
      • liquidationFee: I80F48Dto
      • loanFeeRate: I80F48Dto
      • loanOriginationFeeRate: I80F48Dto
      • maintAssetWeight: I80F48Dto
      • maintLiabWeight: I80F48Dto
      • maintWeightShiftAssetTarget: I80F48Dto
      • maintWeightShiftDurationInv: I80F48Dto
      • maintWeightShiftEnd: BN
      • maintWeightShiftLiabTarget: I80F48Dto
      • maintWeightShiftStart: BN
      • maxRate: I80F48Dto
      • minVaultToDepositsRatio: number
      • mint: PublicKey
      • mintDecimals: number
      • name: number[]
      • netBorrowLimitPerWindowQuote: BN
      • netBorrowLimitWindowSizeTs: BN
      • netBorrowsInWindow: BN
      • oracle: PublicKey
      • oracleConfig: OracleConfigDto
      • platformLiquidationFee: I80F48Dto
      • potentialSerumTokens: BN
      • rate0: I80F48Dto
      • rate1: I80F48Dto
      • reduceOnly: number
      • stablePriceModel: StablePriceModel
      • tokenConditionalSwapMakerFeeRate: number
      • tokenConditionalSwapTakerFeeRate: number
      • tokenIndex: number
      • util0: I80F48Dto
      • util1: I80F48Dto
      • vault: PublicKey
      • zeroUtilRate: I80F48Dto

    Returns Bank

Generated using TypeDoc

\ No newline at end of file +Bank | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • Bank

Implements

Index

Constructors

Properties

Accessors

Methods

Constructors

  • new Bank(publicKey: PublicKey, group: PublicKey, name: number[], mint: PublicKey, vault: PublicKey, oracle: PublicKey, oracleConfig: OracleConfigDto, stablePriceModel: StablePriceModel, depositIndex: I80F48Dto, borrowIndex: I80F48Dto, indexedDeposits: I80F48Dto, indexedBorrows: I80F48Dto, indexLastUpdated: BN, bankRateLastUpdated: BN, avgUtilization: I80F48Dto, adjustmentFactor: I80F48Dto, util0: I80F48Dto, rate0: I80F48Dto, util1: I80F48Dto, rate1: I80F48Dto, maxRate: I80F48Dto, collectedFeesNative: I80F48Dto, loanOriginationFeeRate: I80F48Dto, loanFeeRate: I80F48Dto, maintAssetWeight: I80F48Dto, initAssetWeight: I80F48Dto, maintLiabWeight: I80F48Dto, initLiabWeight: I80F48Dto, liquidationFee: I80F48Dto, dust: I80F48Dto, flashLoanTokenAccountInitial: BN, flashLoanApprovedAmount: BN, tokenIndex: TokenIndex, mintDecimals: number, bankNum: number, minVaultToDepositsRatio: number, netBorrowLimitWindowSizeTs: BN, lastNetBorrowsWindowStartTs: BN, netBorrowLimitPerWindowQuote: BN, netBorrowsInWindow: BN, borrowWeightScaleStartQuote: number, depositWeightScaleStartQuote: number, reduceOnly: number, forceClose: boolean, feesWithdrawn: BN, tokenConditionalSwapTakerFeeRate: number, tokenConditionalSwapMakerFeeRate: number, flashLoanSwapFeeRate: number, interestTargetUtilization: number, interestCurveScaling: number, potentialSerumTokens: BN, maintWeightShiftStart: BN, maintWeightShiftEnd: BN, maintWeightShiftDurationInv: I80F48Dto, maintWeightShiftAssetTarget: I80F48Dto, maintWeightShiftLiabTarget: I80F48Dto, fallbackOracle: PublicKey, depositLimit: BN, zeroUtilRate: I80F48Dto, platformLiquidationFee: I80F48Dto, collectedLiquidationFees: I80F48Dto, allowAssetLiquidation: boolean): Bank
  • Parameters

    • publicKey: PublicKey
    • group: PublicKey
    • name: number[]
    • mint: PublicKey
    • vault: PublicKey
    • oracle: PublicKey
    • oracleConfig: OracleConfigDto
    • stablePriceModel: StablePriceModel
    • depositIndex: I80F48Dto
    • borrowIndex: I80F48Dto
    • indexedDeposits: I80F48Dto
    • indexedBorrows: I80F48Dto
    • indexLastUpdated: BN
    • bankRateLastUpdated: BN
    • avgUtilization: I80F48Dto
    • adjustmentFactor: I80F48Dto
    • util0: I80F48Dto
    • rate0: I80F48Dto
    • util1: I80F48Dto
    • rate1: I80F48Dto
    • maxRate: I80F48Dto
    • collectedFeesNative: I80F48Dto
    • loanOriginationFeeRate: I80F48Dto
    • loanFeeRate: I80F48Dto
    • maintAssetWeight: I80F48Dto
    • initAssetWeight: I80F48Dto
    • maintLiabWeight: I80F48Dto
    • initLiabWeight: I80F48Dto
    • liquidationFee: I80F48Dto
    • dust: I80F48Dto
    • flashLoanTokenAccountInitial: BN
    • flashLoanApprovedAmount: BN
    • tokenIndex: TokenIndex
    • mintDecimals: number
    • bankNum: number
    • minVaultToDepositsRatio: number
    • netBorrowLimitWindowSizeTs: BN
    • lastNetBorrowsWindowStartTs: BN
    • netBorrowLimitPerWindowQuote: BN
    • netBorrowsInWindow: BN
    • borrowWeightScaleStartQuote: number
    • depositWeightScaleStartQuote: number
    • reduceOnly: number
    • forceClose: boolean
    • feesWithdrawn: BN
    • tokenConditionalSwapTakerFeeRate: number
    • tokenConditionalSwapMakerFeeRate: number
    • flashLoanSwapFeeRate: number
    • interestTargetUtilization: number
    • interestCurveScaling: number
    • potentialSerumTokens: BN
    • maintWeightShiftStart: BN
    • maintWeightShiftEnd: BN
    • maintWeightShiftDurationInv: I80F48Dto
    • maintWeightShiftAssetTarget: I80F48Dto
    • maintWeightShiftLiabTarget: I80F48Dto
    • fallbackOracle: PublicKey
    • depositLimit: BN
    • zeroUtilRate: I80F48Dto
    • platformLiquidationFee: I80F48Dto
    • collectedLiquidationFees: I80F48Dto
    • allowAssetLiquidation: boolean

    Returns Bank

Properties

_oracleLastKnownDeviation: undefined | I80F48
_oracleLastUpdatedSlot: undefined | number
_oracleProvider: undefined | OracleProvider
_price: undefined | I80F48
_uiPrice: undefined | number
adjustmentFactor: I80F48
allowAssetLiquidation: boolean
avgUtilization: I80F48
bankNum: number
bankRateLastUpdated: BN
borrowIndex: I80F48
borrowWeightScaleStartQuote: number
collectedFeesNative: I80F48
collectedLiquidationFees: I80F48
depositIndex: I80F48
depositLimit: BN
depositWeightScaleStartQuote: number
dust: I80F48
fallbackOracle: PublicKey
feesWithdrawn: BN
flashLoanApprovedAmount: BN
flashLoanSwapFeeRate: number
flashLoanTokenAccountInitial: BN
forceClose: boolean
group: PublicKey
indexLastUpdated: BN
indexedBorrows: I80F48
indexedDeposits: I80F48
initAssetWeight: I80F48
initLiabWeight: I80F48
interestCurveScaling: number
interestTargetUtilization: number
lastNetBorrowsWindowStartTs: BN
liquidationFee: I80F48
loanFeeRate: I80F48
loanOriginationFeeRate: I80F48
maintAssetWeight: I80F48
maintLiabWeight: I80F48
maintWeightShiftAssetTarget: I80F48
maintWeightShiftDurationInv: I80F48
maintWeightShiftEnd: BN
maintWeightShiftLiabTarget: I80F48
maintWeightShiftStart: BN
maxRate: I80F48
minVaultToDepositsRatio: number
mint: PublicKey
mintDecimals: number
name: string
netBorrowLimitPerWindowQuote: BN
netBorrowLimitWindowSizeTs: BN
netBorrowsInWindow: BN
oracle: PublicKey
oracleConfig: OracleConfig
platformLiquidationFee: I80F48
potentialSerumTokens: BN
publicKey: PublicKey
rate0: I80F48
rate1: I80F48
reduceOnly: number
stablePriceModel: StablePriceModel
tokenConditionalSwapMakerFeeRate: number
tokenConditionalSwapTakerFeeRate: number
tokenIndex: TokenIndex
util0: I80F48
util1: I80F48
vault: PublicKey
zeroUtilRate: I80F48

Accessors

  • get oracleLastUpdatedSlot(): number
  • get uiPrice(): number

Methods

  • areBorrowsReduceOnly(): boolean
  • areDepositsReduceOnly(): boolean
  • getBorrowLimitLeftInWindow(): I80F48
  • getBorrowRateUi(): number
  • getBorrowRateWithoutUpkeepRate(): I80F48
  • getDepositRateUi(): number
  • getMaxWithdraw(vaultBalance: BN, userDeposits?: I80F48): I80F48
  • getNetBorrowLimitPerWindow(): I80F48
  • getNetBorrowLimitPerWindowUi(): number
  • getTimeToNextBorrowLimitWindowStartsTs(): number
  • isOracleStaleOrUnconfident(nowSlot: number): boolean
  • toString(): string
  • uiBorrows(): number
  • uiDeposits(): number
  • from(publicKey: PublicKey, obj: { adjustmentFactor: I80F48Dto; avgUtilization: I80F48Dto; bankNum: number; bankRateLastUpdated: BN; borrowIndex: I80F48Dto; borrowWeightScaleStartQuote: number; collectedFeesNative: I80F48Dto; collectedLiquidationFees: I80F48Dto; depositIndex: I80F48Dto; depositLimit: BN; depositWeightScaleStartQuote: number; disableAssetLiquidation: number; dust: I80F48Dto; fallbackOracle: PublicKey; feesWithdrawn: BN; flashLoanApprovedAmount: BN; flashLoanSwapFeeRate: number; flashLoanTokenAccountInitial: BN; forceClose: number; group: PublicKey; indexLastUpdated: BN; indexedBorrows: I80F48Dto; indexedDeposits: I80F48Dto; initAssetWeight: I80F48Dto; initLiabWeight: I80F48Dto; interestCurveScaling: number; interestTargetUtilization: number; lastNetBorrowsWindowStartTs: BN; liquidationFee: I80F48Dto; loanFeeRate: I80F48Dto; loanOriginationFeeRate: I80F48Dto; maintAssetWeight: I80F48Dto; maintLiabWeight: I80F48Dto; maintWeightShiftAssetTarget: I80F48Dto; maintWeightShiftDurationInv: I80F48Dto; maintWeightShiftEnd: BN; maintWeightShiftLiabTarget: I80F48Dto; maintWeightShiftStart: BN; maxRate: I80F48Dto; minVaultToDepositsRatio: number; mint: PublicKey; mintDecimals: number; name: number[]; netBorrowLimitPerWindowQuote: BN; netBorrowLimitWindowSizeTs: BN; netBorrowsInWindow: BN; oracle: PublicKey; oracleConfig: OracleConfigDto; platformLiquidationFee: I80F48Dto; potentialSerumTokens: BN; rate0: I80F48Dto; rate1: I80F48Dto; reduceOnly: number; stablePriceModel: StablePriceModel; tokenConditionalSwapMakerFeeRate: number; tokenConditionalSwapTakerFeeRate: number; tokenIndex: number; util0: I80F48Dto; util1: I80F48Dto; vault: PublicKey; zeroUtilRate: I80F48Dto }): Bank
  • Parameters

    • publicKey: PublicKey
    • obj: { adjustmentFactor: I80F48Dto; avgUtilization: I80F48Dto; bankNum: number; bankRateLastUpdated: BN; borrowIndex: I80F48Dto; borrowWeightScaleStartQuote: number; collectedFeesNative: I80F48Dto; collectedLiquidationFees: I80F48Dto; depositIndex: I80F48Dto; depositLimit: BN; depositWeightScaleStartQuote: number; disableAssetLiquidation: number; dust: I80F48Dto; fallbackOracle: PublicKey; feesWithdrawn: BN; flashLoanApprovedAmount: BN; flashLoanSwapFeeRate: number; flashLoanTokenAccountInitial: BN; forceClose: number; group: PublicKey; indexLastUpdated: BN; indexedBorrows: I80F48Dto; indexedDeposits: I80F48Dto; initAssetWeight: I80F48Dto; initLiabWeight: I80F48Dto; interestCurveScaling: number; interestTargetUtilization: number; lastNetBorrowsWindowStartTs: BN; liquidationFee: I80F48Dto; loanFeeRate: I80F48Dto; loanOriginationFeeRate: I80F48Dto; maintAssetWeight: I80F48Dto; maintLiabWeight: I80F48Dto; maintWeightShiftAssetTarget: I80F48Dto; maintWeightShiftDurationInv: I80F48Dto; maintWeightShiftEnd: BN; maintWeightShiftLiabTarget: I80F48Dto; maintWeightShiftStart: BN; maxRate: I80F48Dto; minVaultToDepositsRatio: number; mint: PublicKey; mintDecimals: number; name: number[]; netBorrowLimitPerWindowQuote: BN; netBorrowLimitWindowSizeTs: BN; netBorrowsInWindow: BN; oracle: PublicKey; oracleConfig: OracleConfigDto; platformLiquidationFee: I80F48Dto; potentialSerumTokens: BN; rate0: I80F48Dto; rate1: I80F48Dto; reduceOnly: number; stablePriceModel: StablePriceModel; tokenConditionalSwapMakerFeeRate: number; tokenConditionalSwapTakerFeeRate: number; tokenIndex: number; util0: I80F48Dto; util1: I80F48Dto; vault: PublicKey; zeroUtilRate: I80F48Dto }
      • adjustmentFactor: I80F48Dto
      • avgUtilization: I80F48Dto
      • bankNum: number
      • bankRateLastUpdated: BN
      • borrowIndex: I80F48Dto
      • borrowWeightScaleStartQuote: number
      • collectedFeesNative: I80F48Dto
      • collectedLiquidationFees: I80F48Dto
      • depositIndex: I80F48Dto
      • depositLimit: BN
      • depositWeightScaleStartQuote: number
      • disableAssetLiquidation: number
      • dust: I80F48Dto
      • fallbackOracle: PublicKey
      • feesWithdrawn: BN
      • flashLoanApprovedAmount: BN
      • flashLoanSwapFeeRate: number
      • flashLoanTokenAccountInitial: BN
      • forceClose: number
      • group: PublicKey
      • indexLastUpdated: BN
      • indexedBorrows: I80F48Dto
      • indexedDeposits: I80F48Dto
      • initAssetWeight: I80F48Dto
      • initLiabWeight: I80F48Dto
      • interestCurveScaling: number
      • interestTargetUtilization: number
      • lastNetBorrowsWindowStartTs: BN
      • liquidationFee: I80F48Dto
      • loanFeeRate: I80F48Dto
      • loanOriginationFeeRate: I80F48Dto
      • maintAssetWeight: I80F48Dto
      • maintLiabWeight: I80F48Dto
      • maintWeightShiftAssetTarget: I80F48Dto
      • maintWeightShiftDurationInv: I80F48Dto
      • maintWeightShiftEnd: BN
      • maintWeightShiftLiabTarget: I80F48Dto
      • maintWeightShiftStart: BN
      • maxRate: I80F48Dto
      • minVaultToDepositsRatio: number
      • mint: PublicKey
      • mintDecimals: number
      • name: number[]
      • netBorrowLimitPerWindowQuote: BN
      • netBorrowLimitWindowSizeTs: BN
      • netBorrowsInWindow: BN
      • oracle: PublicKey
      • oracleConfig: OracleConfigDto
      • platformLiquidationFee: I80F48Dto
      • potentialSerumTokens: BN
      • rate0: I80F48Dto
      • rate1: I80F48Dto
      • reduceOnly: number
      • stablePriceModel: StablePriceModel
      • tokenConditionalSwapMakerFeeRate: number
      • tokenConditionalSwapTakerFeeRate: number
      • tokenIndex: number
      • util0: I80F48Dto
      • util1: I80F48Dto
      • vault: PublicKey
      • zeroUtilRate: I80F48Dto

    Returns Bank

Generated using TypeDoc

\ No newline at end of file diff --git a/ts/client/classes/BookSide.html b/ts/client/classes/BookSide.html index a3b23a1e0..97190c16d 100644 --- a/ts/client/classes/BookSide.html +++ b/ts/client/classes/BookSide.html @@ -1,7 +1,7 @@ -BookSide | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • BookSide

Index

Constructors

Properties

client: MangoClient
now: BN
orderTreeNodes: OrderTreeNodes
perpMarket: PerpMarket
rootFixed: OrderTreeRoot
rootOraclePegged: OrderTreeRoot
INNER_NODE_TAG: number = 1
LEAF_NODE_TAG: number = 2

Methods

  • fixedItems(): Generator<PerpOrder, any, unknown>
  • getImpactPriceUi(baseLots: BN): undefined | number
  • getL2(depth: number): [number, number, BN, BN][]
  • getL2Ui(depth: number): [number, number][]
  • oraclePeggedItems(): Generator<PerpOrder, any, unknown>
  • getPriceFromKey(key: BN): BN

Generated using TypeDoc

\ No newline at end of file diff --git a/ts/client/classes/FlashLoanWithdraw.html b/ts/client/classes/FlashLoanWithdraw.html index 268edeb34..6247d6d2b 100644 --- a/ts/client/classes/FlashLoanWithdraw.html +++ b/ts/client/classes/FlashLoanWithdraw.html @@ -1 +1 @@ -FlashLoanWithdraw | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • FlashLoanWithdraw

Index

Constructors

Properties

Constructors

Properties

amount: BN
index: number

Generated using TypeDoc

\ No newline at end of file +FlashLoanWithdraw | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • FlashLoanWithdraw

Index

Constructors

Properties

Constructors

Properties

amount: BN
index: number

Generated using TypeDoc

\ No newline at end of file diff --git a/ts/client/classes/Group.html b/ts/client/classes/Group.html index 4530bd22a..540415ecc 100644 --- a/ts/client/classes/Group.html +++ b/ts/client/classes/Group.html @@ -1,5 +1,5 @@ -Group | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • Group

Index

Constructors

  • new Group(publicKey: PublicKey, creator: PublicKey, groupNum: number, admin: PublicKey, fastListingAdmin: PublicKey, mngoTokenIndex: TokenIndex, insuranceMint: PublicKey, insuranceVault: PublicKey, testing: number, version: number, buybackFees: boolean, buybackFeesMngoBonusFactor: number, addressLookupTables: PublicKey[], securityAdmin: PublicKey, depositLimitQuote: any, ixGate: BN, buybackFeesSwapMangoAccount: PublicKey, buybackFeesExpiryInterval: BN, fastListingIntervalStart: BN, fastListingsInInterval: number, allowedFastListingsPerInterval: number, addressLookupTablesList: AddressLookupTableAccount[], banksMapByName: Map<string, Bank[]>, banksMapByMint: Map<string, Bank[]>, banksMapByTokenIndex: Map<TokenIndex, Bank[]>, serum3MarketsMapByExternal: Map<string, Serum3Market>, serum3MarketsMapByMarketIndex: Map<MarketIndex, Serum3Market>, serum3ExternalMarketsMap: Map<string, Market>, perpMarketsMapByOracle: Map<string, PerpMarket>, perpMarketsMapByMarketIndex: Map<PerpMarketIndex, PerpMarket>, perpMarketsMapByName: Map<string, PerpMarket>, mintInfosMapByTokenIndex: Map<TokenIndex, MintInfo>, mintInfosMapByMint: Map<string, MintInfo>, vaultAmountsMap: Map<string, BN>, pis: PriceImpact[]): Group
  • Parameters

    • publicKey: PublicKey
    • creator: PublicKey
    • groupNum: number
    • admin: PublicKey
    • fastListingAdmin: PublicKey
    • mngoTokenIndex: TokenIndex
    • insuranceMint: PublicKey
    • insuranceVault: PublicKey
    • testing: number
    • version: number
    • buybackFees: boolean
    • buybackFeesMngoBonusFactor: number
    • addressLookupTables: PublicKey[]
    • securityAdmin: PublicKey
    • depositLimitQuote: any
    • ixGate: BN
    • buybackFeesSwapMangoAccount: PublicKey
    • buybackFeesExpiryInterval: BN
    • fastListingIntervalStart: BN
    • fastListingsInInterval: number
    • allowedFastListingsPerInterval: number
    • addressLookupTablesList: AddressLookupTableAccount[]
    • banksMapByName: Map<string, Bank[]>
    • banksMapByMint: Map<string, Bank[]>
    • banksMapByTokenIndex: Map<TokenIndex, Bank[]>
    • serum3MarketsMapByExternal: Map<string, Serum3Market>
    • serum3MarketsMapByMarketIndex: Map<MarketIndex, Serum3Market>
    • serum3ExternalMarketsMap: Map<string, Market>
    • perpMarketsMapByOracle: Map<string, PerpMarket>
    • perpMarketsMapByMarketIndex: Map<PerpMarketIndex, PerpMarket>
    • perpMarketsMapByName: Map<string, PerpMarket>
    • mintInfosMapByTokenIndex: Map<TokenIndex, MintInfo>
    • mintInfosMapByMint: Map<string, MintInfo>
    • vaultAmountsMap: Map<string, BN>
    • pis: PriceImpact[]

    Returns Group

Properties

addressLookupTables: PublicKey[]
addressLookupTablesList: AddressLookupTableAccount[]
admin: PublicKey
allowedFastListingsPerInterval: number
banksMapByMint: Map<string, Bank[]>
banksMapByName: Map<string, Bank[]>
banksMapByTokenIndex: Map<TokenIndex, Bank[]>
buybackFees: boolean
buybackFeesExpiryInterval: BN
buybackFeesMngoBonusFactor: number
buybackFeesSwapMangoAccount: PublicKey
creator: PublicKey
depositLimitQuote: any
fastListingAdmin: PublicKey
fastListingIntervalStart: BN
fastListingsInInterval: number
groupNum: number
insuranceMint: PublicKey
insuranceVault: PublicKey
ixGate: BN
mintInfosMapByMint: Map<string, MintInfo>
mintInfosMapByTokenIndex: Map<TokenIndex, MintInfo>
mngoTokenIndex: TokenIndex
perpMarketsMapByMarketIndex: Map<PerpMarketIndex, PerpMarket>
perpMarketsMapByName: Map<string, PerpMarket>
perpMarketsMapByOracle: Map<string, PerpMarket>
publicKey: PublicKey
securityAdmin: PublicKey
serum3ExternalMarketsMap: Map<string, Market>
serum3MarketsMapByExternal: Map<string, Serum3Market>
serum3MarketsMapByMarketIndex: Map<MarketIndex, Serum3Market>
testing: number
vaultAmountsMap: Map<string, BN>
version: number

Methods

  • consoleLogBanks(): void
  • decodePriceFromOracleAi(coder: BorshAccountsCoder<string>, oracle: PublicKey, ai: AccountInfo<Buffer>, baseDecimals: number, client: MangoClient): Promise<{ deviation: I80F48; lastUpdatedSlot: number; price: I80F48; provider: OracleProvider; uiPrice: number }>
  • getFirstBankByMint(mintPk: PublicKey): Bank
  • getFirstBankForMngo(): Bank
  • getFirstBankForPerpSettlement(): Bank
  • getInsuranceMintDecimals(): number
  • getMintDecimals(mintPk: PublicKey): number
  • getMintDecimalsByTokenIndex(tokenIndex: TokenIndex): number
  • getPerpMarketByName(perpMarketName: string): PerpMarket
  • getPerpMarketByOracle(oracle: PublicKey): PerpMarket
  • getPriceImpactByTokenIndex(tokenIndex: TokenIndex, usdcAmountUi: number): number
  • getSerum3ExternalMarket(externalMarketPk: PublicKey): Market
  • getSerum3MarketByExternalMarket(externalMarketPk: PublicKey): Serum3Market
  • getSerum3MarketByMarketIndex(marketIndex: MarketIndex): Serum3Market
  • getTokenVaultBalanceByMint(mintPk: PublicKey): BN
  • getTokenVaultBalanceByMintUi(mintPk: PublicKey): number
  • loadSerum3AsksForMarket(client: MangoClient, externalMarketPk: PublicKey): Promise<Orderbook>
  • loadSerum3BidsForMarket(client: MangoClient, externalMarketPk: PublicKey): Promise<Orderbook>
  • reloadBankOraclePrices(client: MangoClient): Promise<void>
  • reloadBanks(client: MangoClient, ids?: Id): Promise<void>
  • reloadMintInfos(client: MangoClient, ids?: Id): Promise<void>
  • reloadPerpMarketOraclePrices(client: MangoClient): Promise<void>
  • reloadPerpMarkets(client: MangoClient, ids?: Id): Promise<void>
  • reloadPriceImpactData(): Promise<void>
  • reloadSerum3ExternalMarkets(client: MangoClient, ids?: Id): Promise<void>
  • reloadSerum3Markets(client: MangoClient, ids?: Id): Promise<void>
  • toNativeDecimals(uiAmount: number, mintPk: PublicKey): BN
  • toNativePrice(uiPrice: number, baseDecimals: number): I80F48
  • toString(): string
  • toUiPrice(price: number | I80F48, baseDecimals: number): number
  • from(publicKey: PublicKey, obj: { addressLookupTables: PublicKey[]; admin: PublicKey; allowedFastListingsPerInterval: number; buybackFees: number; buybackFeesExpiryInterval: BN; buybackFeesMngoBonusFactor: number; buybackFeesSwapMangoAccount: PublicKey; creator: PublicKey; depositLimitQuote: BN; fastListingAdmin: PublicKey; fastListingIntervalStart: BN; fastListingsInInterval: number; groupNum: number; insuranceMint: PublicKey; insuranceVault: PublicKey; ixGate: BN; mngoTokenIndex: number; securityAdmin: PublicKey; testing: number; version: number }): Group
  • Parameters

    • publicKey: PublicKey
    • obj: { addressLookupTables: PublicKey[]; admin: PublicKey; allowedFastListingsPerInterval: number; buybackFees: number; buybackFeesExpiryInterval: BN; buybackFeesMngoBonusFactor: number; buybackFeesSwapMangoAccount: PublicKey; creator: PublicKey; depositLimitQuote: BN; fastListingAdmin: PublicKey; fastListingIntervalStart: BN; fastListingsInInterval: number; groupNum: number; insuranceMint: PublicKey; insuranceVault: PublicKey; ixGate: BN; mngoTokenIndex: number; securityAdmin: PublicKey; testing: number; version: number }
      • addressLookupTables: PublicKey[]
      • admin: PublicKey
      • allowedFastListingsPerInterval: number
      • buybackFees: number
      • buybackFeesExpiryInterval: BN
      • buybackFeesMngoBonusFactor: number
      • buybackFeesSwapMangoAccount: PublicKey
      • creator: PublicKey
      • depositLimitQuote: BN
      • fastListingAdmin: PublicKey
      • fastListingIntervalStart: BN
      • fastListingsInInterval: number
      • groupNum: number
      • insuranceMint: PublicKey
      • insuranceVault: PublicKey
      • ixGate: BN
      • mngoTokenIndex: number
      • securityAdmin: PublicKey
      • testing: number
      • version: number

    Returns Group

Generated using TypeDoc

\ No newline at end of file diff --git a/ts/client/classes/HealthType.html b/ts/client/classes/HealthType.html index 6369dc0b3..22c8f3c4d 100644 --- a/ts/client/classes/HealthType.html +++ b/ts/client/classes/HealthType.html @@ -1 +1 @@ -HealthType | @blockworks-foundation/mango-v4
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • HealthType

Index

Constructors

Properties

init: { init: {} } = ...

Type declaration

  • init: {}
    liquidationEnd: { liquidationEnd: {} } = ...

    Type declaration

    • liquidationEnd: {}
      maint: { maint: {} } = ...

      Type declaration

      • maint: {}

        Generated using TypeDoc

        \ No newline at end of file +HealthType | @blockworks-foundation/mango-v4
        Options
        All
        • Public
        • Public/Protected
        • All
        Menu

        Hierarchy

        • HealthType

        Index

        Constructors

        Properties

        init: { init: {} } = ...

        Type declaration

        • init: {}
          liquidationEnd: { liquidationEnd: {} } = ...

          Type declaration

          • liquidationEnd: {}
            maint: { maint: {} } = ...

            Type declaration

            • maint: {}

              Generated using TypeDoc

              \ No newline at end of file diff --git a/ts/client/classes/I80F48.html b/ts/client/classes/I80F48.html index bee6edbe0..175c66bbe 100644 --- a/ts/client/classes/I80F48.html +++ b/ts/client/classes/I80F48.html @@ -1,11 +1,11 @@ -I80F48 | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • I80F48

              Index

              Constructors

              Properties

              data: BN
              FRACTIONS: number = 48
              MAX_BN: BN = ...
              MAX_SIZE: number = 128
              +I80F48 | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • I80F48

              Index

              Constructors

              Properties

              data: BN
              FRACTIONS: number = 48
              MAX_BN: BN = ...
              MAX_SIZE: number = 128

              This is represented by a 128 bit signed integer underneath The first 80 bits are treated as an integer and last 48 bits are treated as fractional part after binary point It's possible to think of an I80F48 as an i128 divided by 2 ^ 40

              Read up on how fixed point math works: https://inst.eecs.berkeley.edu/~cs61c/sp06/handout/fixedpt.html Read up on how 2s complement works: https://en.wikipedia.org/wiki/Two%27s_complement

              -
              MIN_BN: BN = ...
              MULTIPLIER_BIG: any = ...
              MULTIPLIER_BN: BN = ...
              MULTIPLIER_NUMBER: number = ...

              Methods

              • getBinaryLayout(): string
              • getData(): BN
              • isNeg(): boolean
              • isPos(): boolean
              • isZero(): boolean
              MIN_BN: BN = ...
              MULTIPLIER_BIG: any = ...
              MULTIPLIER_BN: BN = ...
              MULTIPLIER_NUMBER: number = ...

              Methods

              • getBinaryLayout(): string
              • getData(): BN
              • isNeg(): boolean
              • isPos(): boolean
              • isZero(): boolean
              • toArray(): Uint8Array
              • toArrayLike(ArrayType: BufferConstructor, endian?: Endianness, length?: number): Buffer
              • toBig(): Big
              • toFixed(decimals?: number): string
              • toArray(): Uint8Array
              • toArrayLike(ArrayType: BufferConstructor, endian?: Endianness, length?: number): Buffer
              • toBig(): Big
              • toFixed(decimals?: number): string
              • toLocaleString(locales?: string | string[], options?: NumberFormatOptions): string
              • toNumber(): number
              • toString(): string
              • toTwos(): BN
              • fromArray(src: Uint8Array): I80F48
              • fromNumberOrUndef(x?: number): undefined | I80F48
              • fromOptionalString(x?: string): undefined | I80F48

              Legend

              • Constructor
              • Property
              • Method
              • Property
              • Method
              • Private property
              • Private method
              • Static property
              • Static method

              Settings

              Theme

              Generated using TypeDoc

              \ No newline at end of file +

              Parameters

              • Optional decimals: number

              Returns string

              • toLocaleString(locales?: string | string[], options?: NumberFormatOptions): string
              • toNumber(): number
              • toString(): string
              • toTwos(): BN
              • fromArray(src: Uint8Array): I80F48
              • fromNumberOrUndef(x?: number): undefined | I80F48
              • fromOptionalString(x?: string): undefined | I80F48

              Generated using TypeDoc

              \ No newline at end of file diff --git a/ts/client/classes/I80F48Dto.html b/ts/client/classes/I80F48Dto.html index f1da81eec..6e0ebc4ec 100644 --- a/ts/client/classes/I80F48Dto.html +++ b/ts/client/classes/I80F48Dto.html @@ -1 +1 @@ -I80F48Dto | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • I80F48Dto

              Index

              Constructors

              Properties

              Constructors

              Properties

              val: BN

              Generated using TypeDoc

              \ No newline at end of file +I80F48Dto | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • I80F48Dto

              Index

              Constructors

              Properties

              Constructors

              Properties

              val: BN

              Generated using TypeDoc

              \ No newline at end of file diff --git a/ts/client/classes/InnerNode.html b/ts/client/classes/InnerNode.html index 3a5d81e29..ba7fa7a12 100644 --- a/ts/client/classes/InnerNode.html +++ b/ts/client/classes/InnerNode.html @@ -1 +1 @@ -InnerNode | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • InnerNode

              Index

              Constructors

              Properties

              Methods

              Constructors

              Properties

              children: [number]

              Methods

              Generated using TypeDoc

              \ No newline at end of file +InnerNode | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • InnerNode

              Index

              Constructors

              Properties

              Methods

              Constructors

              Properties

              children: [number]

              Methods

              Generated using TypeDoc

              \ No newline at end of file diff --git a/ts/client/classes/InterestRateParams.html b/ts/client/classes/InterestRateParams.html index b85ceb49d..77e1d5348 100644 --- a/ts/client/classes/InterestRateParams.html +++ b/ts/client/classes/InterestRateParams.html @@ -1 +1 @@ -InterestRateParams | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • InterestRateParams

              Index

              Constructors

              Properties

              adjustmentFactor: number
              maxRate: number
              rate0: number
              rate1: number
              util0: number
              util1: number

              Generated using TypeDoc

              \ No newline at end of file +InterestRateParams | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • InterestRateParams

              Index

              Constructors

              Properties

              adjustmentFactor: number
              maxRate: number
              rate0: number
              rate1: number
              util0: number
              util1: number

              Generated using TypeDoc

              \ No newline at end of file diff --git a/ts/client/classes/LeafNode.html b/ts/client/classes/LeafNode.html index 9d0e49b0c..498c8a85d 100644 --- a/ts/client/classes/LeafNode.html +++ b/ts/client/classes/LeafNode.html @@ -1 +1 @@ -LeafNode | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • LeafNode

              Index

              Constructors

              • new LeafNode(ownerSlot: number, orderType: PerpOrderType, timeInForce: number, key: BN, owner: PublicKey, quantity: BN, timestamp: BN, pegLimit: BN): LeafNode

              Properties

              key: BN
              orderType: PerpOrderType
              owner: PublicKey
              ownerSlot: number
              pegLimit: BN
              quantity: BN
              timeInForce: number
              timestamp: BN

              Methods

              • from(obj: { key: BN; orderType: PerpOrderType; owner: PublicKey; ownerSlot: number; pegLimit: BN; quantity: BN; timeInForce: number; timestamp: BN }): LeafNode

              Generated using TypeDoc

              \ No newline at end of file +LeafNode | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • LeafNode

              Index

              Constructors

              • new LeafNode(ownerSlot: number, orderType: PerpOrderType, timeInForce: number, key: BN, owner: PublicKey, quantity: BN, timestamp: BN, pegLimit: BN): LeafNode

              Properties

              key: BN
              orderType: PerpOrderType
              owner: PublicKey
              ownerSlot: number
              pegLimit: BN
              quantity: BN
              timeInForce: number
              timestamp: BN

              Methods

              • from(obj: { key: BN; orderType: PerpOrderType; owner: PublicKey; ownerSlot: number; pegLimit: BN; quantity: BN; timeInForce: number; timestamp: BN }): LeafNode

              Generated using TypeDoc

              \ No newline at end of file diff --git a/ts/client/classes/MangoAccount.html b/ts/client/classes/MangoAccount.html index d39a0e75a..f08f8a9b6 100644 --- a/ts/client/classes/MangoAccount.html +++ b/ts/client/classes/MangoAccount.html @@ -1,69 +1,69 @@ -MangoAccount | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • MangoAccount

              Index

              Constructors

              Properties

              Methods

              Constructors

              • new MangoAccount(publicKey: PublicKey, group: PublicKey, owner: PublicKey, name: number[], delegate: PublicKey, accountNum: number, beingLiquidated: boolean, inHealthRegion: boolean, netDeposits: BN, perpSpotTransfers: BN, healthRegionBeginInitHealth: BN, frozenUntil: BN, buybackFeesAccruedCurrent: BN, buybackFeesAccruedPrevious: BN, buybackFeesExpiryTimestamp: BN, headerVersion: number, tokens: TokenPositionDto[], serum3: Serum3PositionDto[], perps: PerpPositionDto[], perpOpenOrders: PerpOoDto[], tokenConditionalSwaps: TokenConditionalSwapDto[], serum3OosMapByMarketIndex: Map<number, OpenOrders>): MangoAccount

              Properties

              accountNum: number
              beingLiquidated: boolean
              buybackFeesAccruedCurrent: BN
              buybackFeesAccruedPrevious: BN
              buybackFeesExpiryTimestamp: BN
              delegate: PublicKey
              frozenUntil: BN
              group: PublicKey
              headerVersion: number
              healthRegionBeginInitHealth: BN
              inHealthRegion: boolean
              name: string
              netDeposits: BN
              owner: PublicKey
              perpOpenOrders: PerpOo[]
              perpSpotTransfers: BN
              perps: PerpPosition[]
              publicKey: PublicKey
              serum3: Serum3Orders[]
              serum3OosMapByMarketIndex: Map<number, OpenOrders>
              tokenConditionalSwaps: TokenConditionalSwap[]
              tokens: TokenPosition[]

              Methods

              • toString(group?: Group, onlyTokens?: boolean): string
              • from(publicKey: PublicKey, obj: { accountNum: number; beingLiquidated: number; buybackFeesAccruedCurrent: BN; buybackFeesAccruedPrevious: BN; buybackFeesExpiryTimestamp: BN; delegate: PublicKey; frozenUntil: BN; group: PublicKey; headerVersion: number; healthRegionBeginInitHealth: BN; inHealthRegion: number; name: number[]; netDeposits: BN; owner: PublicKey; perpOpenOrders: unknown; perpSpotTransfers: BN; perps: unknown; serum3: unknown; tokenConditionalSwaps: unknown; tokens: unknown }): MangoAccount
              • Parameters

                • publicKey: PublicKey
                • obj: { accountNum: number; beingLiquidated: number; buybackFeesAccruedCurrent: BN; buybackFeesAccruedPrevious: BN; buybackFeesExpiryTimestamp: BN; delegate: PublicKey; frozenUntil: BN; group: PublicKey; headerVersion: number; healthRegionBeginInitHealth: BN; inHealthRegion: number; name: number[]; netDeposits: BN; owner: PublicKey; perpOpenOrders: unknown; perpSpotTransfers: BN; perps: unknown; serum3: unknown; tokenConditionalSwaps: unknown; tokens: unknown }
                  • accountNum: number
                  • beingLiquidated: number
                  • buybackFeesAccruedCurrent: BN
                  • buybackFeesAccruedPrevious: BN
                  • buybackFeesExpiryTimestamp: BN
                  • delegate: PublicKey
                  • frozenUntil: BN
                  • group: PublicKey
                  • headerVersion: number
                  • healthRegionBeginInitHealth: BN
                  • inHealthRegion: number
                  • name: number[]
                  • netDeposits: BN
                  • owner: PublicKey
                  • perpOpenOrders: unknown
                  • perpSpotTransfers: BN
                  • perps: unknown
                  • serum3: unknown
                  • tokenConditionalSwaps: unknown
                  • tokens: unknown

                Returns MangoAccount

              Generated using TypeDoc

              \ No newline at end of file diff --git a/ts/client/classes/MangoClient.html b/ts/client/classes/MangoClient.html index 2acd55ddf..420e76ca8 100644 --- a/ts/client/classes/MangoClient.html +++ b/ts/client/classes/MangoClient.html @@ -1,4 +1,4 @@ -MangoClient | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • MangoClient

              Index

              Constructors

              Properties

              Accessors

              Methods

              Constructors

              • new MangoClient(program: Program<MangoV4>, programId: PublicKey, cluster: Cluster, opts?: MangoClientOptions): MangoClient

              Properties

              cluster: Cluster
              estimateFee: boolean
              idsSource: IdsSource
              multipleConnections: Connection[] = []
              openbookFeesToDao: boolean
              opts: MangoClientOptions = {}
              postSendTxCallback?: (__namedParameters: { txid: string }) => void

              Type declaration

                • (__namedParameters: { txid: string }): void
                • Parameters

                  • __namedParameters: { txid: string }
                    • txid: string

                  Returns void

              postTxConfirmationCallback?: (__namedParameters: { txid: string }) => void

              Type declaration

                • (__namedParameters: { txid: string }): void
                • Parameters

                  • __namedParameters: { txid: string }
                    • txid: string

                  Returns void

              prependedGlobalAdditionalInstructions: TransactionInstruction[] = []
              prioritizationFee: number
              program: Program<MangoV4>
              programId: PublicKey
              txConfirmationCommitment: Commitment

              Accessors

              • get connection(): Connection
              • get walletPk(): PublicKey

              Methods

              • accountBuybackFeesWithMngoIx(group: Group, mangoAccount: MangoAccount, maxBuybackUsd?: number): Promise<TransactionInstruction>
              • accountExpandV2(group: Group, account: MangoAccount, tokenCount: number, serum3Count: number, perpCount: number, perpOoCount: number, tokenConditionalSwapCount: number): Promise<MangoSignatureStatus>
              • accountExpandV2Ix(group: Group, account: MangoAccount, tokenCount: number, serum3Count: number, perpCount: number, perpOoCount: number, tokenConditionalSwapCount: number): Promise<TransactionInstruction>
              • Parameters

                • group: Group
                • account: MangoAccount
                • tokenCount: number
                • serum3Count: number
                • perpCount: number
                • perpOoCount: number
                • tokenConditionalSwapCount: number

                Returns Promise<TransactionInstruction>

              Returns PublicKey[]

              • Note: this ix doesn't settle liabs, reduce open positions, or withdraw tokens to wallet, it simply closes the account. To close successfully ensure all positions are closed, or use forceClose flag

                -

                Parameters

                Returns Promise<MangoSignatureStatus>

              • createMangoAccount(group: Group, accountNumber?: number, name?: string, tokenCount?: number, serum3Count?: number, perpCount?: number, perpOoCount?: number): Promise<MangoSignatureStatus>
              • estimatePrioritizationFee(ixs: TransactionInstruction[]): Promise<number>
              • createMangoAccount(group: Group, accountNumber?: number, name?: string, tokenCount?: number, serum3Count?: number, perpCount?: number, perpOoCount?: number): Promise<MangoSignatureStatus>
              • estimatePrioritizationFee(ixs: TransactionInstruction[]): Promise<number>
              • Returns an estimate of a prioritization fee for a set of instructions.

                The estimate is based on the median fees of writable accounts that will be involved in the transaction.

                Parameters

                • ixs: TransactionInstruction[]

                  the instructions that make up the transaction

                Returns Promise<number>

                prioritizationFeeEstimate -- in microLamports

                -
              • getBanksForGroup(group: Group): Promise<Bank[]>
              • getGroup(groupPk: PublicKey): Promise<Group>
              • getGroupForCreator(creatorPk: PublicKey, groupNum: number): Promise<Group>
              • getGroupsForCreator(creatorPk: PublicKey): Promise<Group[]>
              • getIds(groupPk: PublicKey): Promise<undefined | Id>
              • getMangoAccount(mangoAccountPk: PublicKey, loadSerum3Oo?: boolean): Promise<MangoAccount>
              • getMangoAccountForOwner(group: Group, ownerPk: PublicKey, accountNumber: number, loadSerum3Oo?: boolean): Promise<undefined | MangoAccount>
              • getMangoAccountFromAi(mangoAccountPk: PublicKey, ai: AccountInfo<Buffer>): MangoAccount
              • getMangoAccountFromPk(mangoAccountPk: PublicKey): Promise<MangoAccount>
              • getMangoAccountWithSlot(mangoAccountPk: PublicKey, loadSerum3Oo?: boolean): Promise<undefined | { slot: number; value: MangoAccount }>
              • getMangoAccountsForDelegate(group: Group, delegate: PublicKey, loadSerum3Oo?: boolean): Promise<MangoAccount[]>
              • getMangoAccountsForOwner(group: Group, ownerPk: PublicKey, loadSerum3Oo?: boolean): Promise<MangoAccount[]>
              • groupCreate(groupNum: number, testing: boolean, version: number, insuranceMintPk: PublicKey): Promise<MangoSignatureStatus>
              • groupEdit(group: Group, admin?: PublicKey, fastListingAdmin?: PublicKey, securityAdmin?: PublicKey, testing?: number, version?: number, depositLimitQuote?: BN, feesPayWithMngo?: boolean, feesMngoBonusRate?: number, feesSwapMangoAccount?: PublicKey, feesMngoTokenIndex?: TokenIndex, feesExpiryInterval?: BN, allowedFastListingsPerInterval?: number): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • Optional admin: PublicKey
                • Optional fastListingAdmin: PublicKey
                • Optional securityAdmin: PublicKey
                • Optional testing: number
                • Optional version: number
                • Optional depositLimitQuote: BN
                • Optional feesPayWithMngo: boolean
                • Optional feesMngoBonusRate: number
                • Optional feesSwapMangoAccount: PublicKey
                • Optional feesMngoTokenIndex: TokenIndex
                • Optional feesExpiryInterval: BN
                • Optional allowedFastListingsPerInterval: number

                Returns Promise<MangoSignatureStatus>

              • marginTrade(__namedParameters: { amountIn: number; flashLoanType: FlashLoanType; group: Group; inputMintPk: PublicKey; mangoAccount: MangoAccount; outputMintPk: PublicKey; userDefinedAlts: AddressLookupTableAccount[]; userDefinedInstructions: TransactionInstruction[] }): Promise<MangoSignatureStatus>
              • Parameters

                • __namedParameters: { amountIn: number; flashLoanType: FlashLoanType; group: Group; inputMintPk: PublicKey; mangoAccount: MangoAccount; outputMintPk: PublicKey; userDefinedAlts: AddressLookupTableAccount[]; userDefinedInstructions: TransactionInstruction[] }
                  • amountIn: number
                  • flashLoanType: FlashLoanType
                  • group: Group
                  • inputMintPk: PublicKey
                  • mangoAccount: MangoAccount
                  • outputMintPk: PublicKey
                  • userDefinedAlts: AddressLookupTableAccount[]
                  • userDefinedInstructions: TransactionInstruction[]

                Returns Promise<MangoSignatureStatus>

              • perpCancelOrderByClientOrderIdIx(group: Group, mangoAccount: MangoAccount, perpMarketIndex: PerpMarketIndex, clientOrderId: BN): Promise<TransactionInstruction>
              • perpConsumeEventsIx(group: Group, perpMarketIndex: PerpMarketIndex, accounts: PublicKey[], limit: number): Promise<TransactionInstruction>
              • perpCreateMarket(group: Group, oraclePk: PublicKey, perpMarketIndex: number, name: string, oracleConfig: OracleConfigParams, baseDecimals: number, quoteLotSize: number, baseLotSize: number, maintBaseAssetWeight: number, initBaseAssetWeight: number, maintBaseLiabWeight: number, initBaseLiabWeight: number, maintOverallAssetWeight: number, initOverallAssetWeight: number, baseLiquidationFee: number, makerFee: number, takerFee: number, feePenalty: number, minFunding: number, maxFunding: number, impactQuantity: number, groupInsuranceFund: boolean, settleFeeFlat: number, settleFeeAmountThreshold: number, settleFeeFractionLowHealth: number, settleTokenIndex: number, settlePnlLimitFactor: number, settlePnlLimitWindowSize: number, positivePnlLiquidationFee: number, platformLiquidationFee: number): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • oraclePk: PublicKey
                • perpMarketIndex: number
                • name: string
                • oracleConfig: OracleConfigParams
                • baseDecimals: number
                • quoteLotSize: number
                • baseLotSize: number
                • maintBaseAssetWeight: number
                • initBaseAssetWeight: number
                • maintBaseLiabWeight: number
                • initBaseLiabWeight: number
                • maintOverallAssetWeight: number
                • initOverallAssetWeight: number
                • baseLiquidationFee: number
                • makerFee: number
                • takerFee: number
                • feePenalty: number
                • minFunding: number
                • maxFunding: number
                • impactQuantity: number
                • groupInsuranceFund: boolean
                • settleFeeFlat: number
                • settleFeeAmountThreshold: number
                • settleFeeFractionLowHealth: number
                • settleTokenIndex: number
                • settlePnlLimitFactor: number
                • settlePnlLimitWindowSize: number
                • positivePnlLiquidationFee: number
                • platformLiquidationFee: number

                Returns Promise<MangoSignatureStatus>

              • perpPlaceOrderIx(group: Group, mangoAccount: MangoAccount, perpMarketIndex: PerpMarketIndex, side: PerpOrderSide, price: number, quantity: number, maxQuoteQuantity?: number, clientOrderId?: number, orderType?: PerpOrderType, reduceOnly?: boolean, expiryTimestamp?: number, limit?: number): Promise<TransactionInstruction>
              • perpPlaceOrderPeggedIx(group: Group, mangoAccount: MangoAccount, perpMarketIndex: PerpMarketIndex, side: PerpOrderSide, priceOffset: number, quantity: number, pegLimit?: number, maxQuoteQuantity?: number, clientOrderId?: number, orderType?: PerpOrderType, reduceOnly?: boolean, expiryTimestamp?: number, limit?: number): Promise<TransactionInstruction>
              • perpPlaceOrderPeggedV2Ix(group: Group, mangoAccount: MangoAccount, perpMarketIndex: PerpMarketIndex, side: PerpOrderSide, priceOffset: number, quantity: number, pegLimit?: number, maxQuoteQuantity?: number, clientOrderId?: number, orderType?: PerpOrderType, selfTradeBehavior?: PerpSelfTradeBehavior, reduceOnly?: boolean, expiryTimestamp?: number, limit?: number): Promise<TransactionInstruction>
              • perpUpdateFundingIx(group: Group, perpMarket: PerpMarket): Promise<TransactionInstruction>
              • sendAndConfirmTransaction(ixs: TransactionInstruction[], opts?: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignatureStatus>
              • sendAndConfirmTransaction(ixs: TransactionInstruction[], opts?: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignature>
              • Parameters

                • ixs: TransactionInstruction[]
                • Optional opts: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                Returns Promise<MangoSignatureStatus>

              • Parameters

                • ixs: TransactionInstruction[]
                • Optional opts: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                Returns Promise<MangoSignature>

              • sendAndConfirmTransactionForGroup(group: Group, ixs: TransactionInstruction[], opts?: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignatureStatus>
              • sendAndConfirmTransactionForGroup(group: Group, ixs: TransactionInstruction[], opts?: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignature>
              • Parameters

                • group: Group
                • ixs: TransactionInstruction[]
                • Optional opts: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                Returns Promise<MangoSignatureStatus>

              • Parameters

                • group: Group
                • ixs: TransactionInstruction[]
                • Optional opts: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                Returns Promise<MangoSignature>

              • serum3CancelAllOrdersIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey, limit?: number): Promise<TransactionInstruction>
              • serum3CancelOrderByClientIdIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey, clientOrderId: BN): Promise<TransactionInstruction>
              • serum3CancelOrderIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey, side: Serum3Side, orderId: BN): Promise<TransactionInstruction>
              • serum3CloseOpenOrdersIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey): Promise<TransactionInstruction>
              • serum3CreateOpenOrdersIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey): Promise<TransactionInstruction>
              • serum3EditMarket(group: Group, serum3MarketIndex: MarketIndex, reduceOnly: null | boolean, forceClose: null | boolean, name: null | string, oraclePriceBand: null | number): Promise<MangoSignatureStatus>
              • serum3EditMarketIx(group: Group, serum3MarketIndex: MarketIndex, admin: PublicKey, reduceOnly: null | boolean, forceClose: null | boolean, name: null | string, oraclePriceBand: null | number): Promise<TransactionInstruction>
              • Parameters

                • group: Group
                • serum3MarketIndex: MarketIndex
                • admin: PublicKey
                • reduceOnly: null | boolean
                • forceClose: null | boolean
                • name: null | string
                • oraclePriceBand: null | number

                Returns Promise<TransactionInstruction>

              • serum3GetMarkets(group: Group, baseTokenIndex?: number, quoteTokenIndex?: number): Promise<Serum3Market[]>
              • serum3RegisterMarket(group: Group, serum3MarketExternalPk: PublicKey, baseBank: Bank, quoteBank: Bank, marketIndex: number, name: string, oraclePriceBand: number): Promise<MangoSignatureStatus>
              • serum3SettleFundsIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey): Promise<TransactionInstruction>
              • serum3SettleFundsV2Ix(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey): Promise<TransactionInstruction>
              • tcsStopLossOnBorrow(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxBuyUi: null | number, pricePremium: null | number, allowMargin: null | boolean, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • tcsStopLossOnBorrowIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxBuyUi: null | number, pricePremium: null | number, allowMargin: null | boolean, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • thresholdPrice: number
                • thresholdPriceInSellPerBuyToken: boolean
                • maxBuyUi: null | number
                • pricePremium: null | number
                • allowMargin: null | boolean
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tcsStopLossOnDeposit(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxSell: null | number, pricePremium: null | number, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • tcsStopLossOnDepositIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxSell: null | number, pricePremium: null | number, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • thresholdPrice: number
                • thresholdPriceInSellPerBuyToken: boolean
                • maxSell: null | number
                • pricePremium: null | number
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tcsTakeProfitOnBorrow(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxBuyUi: null | number, pricePremium: null | number, allowMargin: null | boolean, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • tcsTakeProfitOnBorrowIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxBuyUi: null | number, pricePremium: null | number, allowMargin: null | boolean, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • thresholdPrice: number
                • thresholdPriceInSellPerBuyToken: boolean
                • maxBuyUi: null | number
                • pricePremium: null | number
                • allowMargin: null | boolean
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tcsTakeProfitOnDeposit(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxSell: null | number, pricePremium: null | number, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • tcsTakeProfitOnDepositIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxSell: null | number, pricePremium: null | number, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • thresholdPrice: number
                • thresholdPriceInSellPerBuyToken: boolean
                • maxSell: null | number
                • pricePremium: null | number
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tokenConditionalSwapCancelIx(group: Group, account: MangoAccount, tokenConditionalSwapId: BN): Promise<TransactionInstruction>
              • tokenConditionalSwapCreate(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, lowerLimitNativeNative: number, upperLimitNativeNative: number, maxBuy: number, maxSell: number, tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow", pricePremium: null | number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, expiryTimestamp: null | number, displayPriceInSellTokenPerBuyToken: boolean): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • lowerLimitNativeNative: number
                • upperLimitNativeNative: number
                • maxBuy: number
                • maxSell: number
                • tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow"
                • pricePremium: null | number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • expiryTimestamp: null | number
                • displayPriceInSellTokenPerBuyToken: boolean

                Returns Promise<MangoSignatureStatus>

              • tokenConditionalSwapCreateIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, lowerLimitNativeNative: number, upperLimitNativeNative: number, maxBuy: number, maxSell: number, tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow", pricePremium: null | number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, expiryTimestamp: null | number, displayPriceInSellTokenPerBuyToken: boolean): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • lowerLimitNativeNative: number
                • upperLimitNativeNative: number
                • maxBuy: number
                • maxSell: number
                • tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow"
                • pricePremium: null | number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • expiryTimestamp: null | number
                • displayPriceInSellTokenPerBuyToken: boolean

                Returns Promise<TransactionInstruction[]>

              • tokenConditionalSwapCreateLinearAuction(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, priceStart: number, priceEnd: number, maxBuy: number, maxSell: number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, displayPriceInSellTokenPerBuyToken: boolean, startTimestamp: number, durationSeconds: number, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • priceStart: number
                • priceEnd: number
                • maxBuy: number
                • maxSell: number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • displayPriceInSellTokenPerBuyToken: boolean
                • startTimestamp: number
                • durationSeconds: number
                • expiryTimestamp: null | number

                Returns Promise<MangoSignatureStatus>

              • tokenConditionalSwapCreateLinearAuctionIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, priceStart: number, priceEnd: number, maxBuy: number, maxSell: number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, displayPriceInSellTokenPerBuyToken: boolean, startTimestamp: number, durationSeconds: number, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • priceStart: number
                • priceEnd: number
                • maxBuy: number
                • maxSell: number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • displayPriceInSellTokenPerBuyToken: boolean
                • startTimestamp: number
                • durationSeconds: number
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tokenConditionalSwapCreatePremiumAuction(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, lowerLimit: number, upperLimit: number, maxBuy: number, maxSell: number, tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow", maxPricePremiumPercent: null | number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, expiryTimestamp: null | number, displayPriceInSellTokenPerBuyToken: boolean, durationSeconds: number): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • lowerLimit: number
                • upperLimit: number
                • maxBuy: number
                • maxSell: number
                • tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow"
                • maxPricePremiumPercent: null | number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • expiryTimestamp: null | number
                • displayPriceInSellTokenPerBuyToken: boolean
                • durationSeconds: number

                Returns Promise<MangoSignatureStatus>

              • tokenConditionalSwapCreatePremiumAuctionIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, lowerLimit: number, upperLimit: number, maxBuy: number, maxSell: number, tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow", maxPricePremiumPercent: null | number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, expiryTimestamp: null | number, displayPriceInSellTokenPerBuyToken: boolean, durationSeconds: number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • lowerLimit: number
                • upperLimit: number
                • maxBuy: number
                • maxSell: number
                • tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow"
                • maxPricePremiumPercent: null | number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • expiryTimestamp: null | number
                • displayPriceInSellTokenPerBuyToken: boolean
                • durationSeconds: number

                Returns Promise<TransactionInstruction[]>

              • tokenConditionalSwapCreateRawIx(group: Group, account: MangoAccount, buyMintPk: PublicKey, sellMintPk: PublicKey, maxBuy: BN, maxSell: BN, expiryTimestamp: null | number, priceLowerLimit: number, priceUpperLimit: number, pricePremiumRate: number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, priceDisplayStyle: TokenConditionalSwapDisplayPriceStyle, intention: TokenConditionalSwapIntention): Promise<TransactionInstruction[]>
              • tokenConditionalSwapTriggerIx(group: Group, liqee: MangoAccount, liqor: MangoAccount, tokenConditionalSwapId: BN, maxBuyTokenToLiqee: number, maxSellTokenToLiqor: number): Promise<TransactionInstruction>
              • tokenDepositNative(group: Group, mangoAccount: MangoAccount, mintPk: PublicKey, nativeAmount: BN, reduceOnly?: boolean, intoExisting?: boolean): Promise<MangoSignature>
              • tokenRegister(group: Group, mintPk: PublicKey, oraclePk: PublicKey, fallbackOraclePk: PublicKey, tokenIndex: number, name: string, params: TokenRegisterParams): Promise<MangoSignatureStatus>
              • tokenRegisterTrustless(group: Group, mintPk: PublicKey, oraclePk: PublicKey, tokenIndex: number, name: string): Promise<MangoSignatureStatus>
              • tokenUpdateIndexAndRateIx(group: Group, mintPk: PublicKey): Promise<TransactionInstruction>
              • getBanksForGroup(group: Group): Promise<Bank[]>
              • getGroup(groupPk: PublicKey): Promise<Group>
              • getGroupForCreator(creatorPk: PublicKey, groupNum: number): Promise<Group>
              • getGroupsForCreator(creatorPk: PublicKey): Promise<Group[]>
              • getIds(groupPk: PublicKey): Promise<undefined | Id>
              • getMangoAccount(mangoAccountPk: PublicKey, loadSerum3Oo?: boolean): Promise<MangoAccount>
              • getMangoAccountForOwner(group: Group, ownerPk: PublicKey, accountNumber: number, loadSerum3Oo?: boolean): Promise<undefined | MangoAccount>
              • getMangoAccountFromAi(mangoAccountPk: PublicKey, ai: AccountInfo<Buffer>): MangoAccount
              • getMangoAccountFromPk(mangoAccountPk: PublicKey): Promise<MangoAccount>
              • getMangoAccountWithSlot(mangoAccountPk: PublicKey, loadSerum3Oo?: boolean): Promise<undefined | { slot: number; value: MangoAccount }>
              • getMangoAccountsForDelegate(group: Group, delegate: PublicKey, loadSerum3Oo?: boolean): Promise<MangoAccount[]>
              • getMangoAccountsForOwner(group: Group, ownerPk: PublicKey, loadSerum3Oo?: boolean): Promise<MangoAccount[]>
              • groupCreate(groupNum: number, testing: boolean, version: number, insuranceMintPk: PublicKey): Promise<MangoSignatureStatus>
              • groupEdit(group: Group, admin?: PublicKey, fastListingAdmin?: PublicKey, securityAdmin?: PublicKey, testing?: number, version?: number, depositLimitQuote?: BN, feesPayWithMngo?: boolean, feesMngoBonusRate?: number, feesSwapMangoAccount?: PublicKey, feesMngoTokenIndex?: TokenIndex, feesExpiryInterval?: BN, allowedFastListingsPerInterval?: number): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • Optional admin: PublicKey
                • Optional fastListingAdmin: PublicKey
                • Optional securityAdmin: PublicKey
                • Optional testing: number
                • Optional version: number
                • Optional depositLimitQuote: BN
                • Optional feesPayWithMngo: boolean
                • Optional feesMngoBonusRate: number
                • Optional feesSwapMangoAccount: PublicKey
                • Optional feesMngoTokenIndex: TokenIndex
                • Optional feesExpiryInterval: BN
                • Optional allowedFastListingsPerInterval: number

                Returns Promise<MangoSignatureStatus>

              • marginTrade(__namedParameters: { amountIn: number; flashLoanType: FlashLoanType; group: Group; inputMintPk: PublicKey; mangoAccount: MangoAccount; outputMintPk: PublicKey; userDefinedAlts: AddressLookupTableAccount[]; userDefinedInstructions: TransactionInstruction[] }): Promise<MangoSignatureStatus>
              • Parameters

                • __namedParameters: { amountIn: number; flashLoanType: FlashLoanType; group: Group; inputMintPk: PublicKey; mangoAccount: MangoAccount; outputMintPk: PublicKey; userDefinedAlts: AddressLookupTableAccount[]; userDefinedInstructions: TransactionInstruction[] }
                  • amountIn: number
                  • flashLoanType: FlashLoanType
                  • group: Group
                  • inputMintPk: PublicKey
                  • mangoAccount: MangoAccount
                  • outputMintPk: PublicKey
                  • userDefinedAlts: AddressLookupTableAccount[]
                  • userDefinedInstructions: TransactionInstruction[]

                Returns Promise<MangoSignatureStatus>

              • perpCancelOrderByClientOrderIdIx(group: Group, mangoAccount: MangoAccount, perpMarketIndex: PerpMarketIndex, clientOrderId: BN): Promise<TransactionInstruction>
              • perpConsumeEventsIx(group: Group, perpMarketIndex: PerpMarketIndex, accounts: PublicKey[], limit: number): Promise<TransactionInstruction>
              • perpCreateMarket(group: Group, oraclePk: PublicKey, perpMarketIndex: number, name: string, oracleConfig: OracleConfigParams, baseDecimals: number, quoteLotSize: number, baseLotSize: number, maintBaseAssetWeight: number, initBaseAssetWeight: number, maintBaseLiabWeight: number, initBaseLiabWeight: number, maintOverallAssetWeight: number, initOverallAssetWeight: number, baseLiquidationFee: number, makerFee: number, takerFee: number, feePenalty: number, minFunding: number, maxFunding: number, impactQuantity: number, groupInsuranceFund: boolean, settleFeeFlat: number, settleFeeAmountThreshold: number, settleFeeFractionLowHealth: number, settleTokenIndex: number, settlePnlLimitFactor: number, settlePnlLimitWindowSize: number, positivePnlLiquidationFee: number, platformLiquidationFee: number): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • oraclePk: PublicKey
                • perpMarketIndex: number
                • name: string
                • oracleConfig: OracleConfigParams
                • baseDecimals: number
                • quoteLotSize: number
                • baseLotSize: number
                • maintBaseAssetWeight: number
                • initBaseAssetWeight: number
                • maintBaseLiabWeight: number
                • initBaseLiabWeight: number
                • maintOverallAssetWeight: number
                • initOverallAssetWeight: number
                • baseLiquidationFee: number
                • makerFee: number
                • takerFee: number
                • feePenalty: number
                • minFunding: number
                • maxFunding: number
                • impactQuantity: number
                • groupInsuranceFund: boolean
                • settleFeeFlat: number
                • settleFeeAmountThreshold: number
                • settleFeeFractionLowHealth: number
                • settleTokenIndex: number
                • settlePnlLimitFactor: number
                • settlePnlLimitWindowSize: number
                • positivePnlLiquidationFee: number
                • platformLiquidationFee: number

                Returns Promise<MangoSignatureStatus>

              • perpPlaceOrderIx(group: Group, mangoAccount: MangoAccount, perpMarketIndex: PerpMarketIndex, side: PerpOrderSide, price: number, quantity: number, maxQuoteQuantity?: number, clientOrderId?: number, orderType?: PerpOrderType, reduceOnly?: boolean, expiryTimestamp?: number, limit?: number): Promise<TransactionInstruction>
              • perpPlaceOrderPeggedIx(group: Group, mangoAccount: MangoAccount, perpMarketIndex: PerpMarketIndex, side: PerpOrderSide, priceOffset: number, quantity: number, pegLimit?: number, maxQuoteQuantity?: number, clientOrderId?: number, orderType?: PerpOrderType, reduceOnly?: boolean, expiryTimestamp?: number, limit?: number): Promise<TransactionInstruction>
              • perpPlaceOrderPeggedV2Ix(group: Group, mangoAccount: MangoAccount, perpMarketIndex: PerpMarketIndex, side: PerpOrderSide, priceOffset: number, quantity: number, pegLimit?: number, maxQuoteQuantity?: number, clientOrderId?: number, orderType?: PerpOrderType, selfTradeBehavior?: PerpSelfTradeBehavior, reduceOnly?: boolean, expiryTimestamp?: number, limit?: number): Promise<TransactionInstruction>
              • perpUpdateFundingIx(group: Group, perpMarket: PerpMarket): Promise<TransactionInstruction>
              • sendAndConfirmTransaction(ixs: TransactionInstruction[], opts?: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignatureStatus>
              • sendAndConfirmTransaction(ixs: TransactionInstruction[], opts?: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignature>
              • Parameters

                • ixs: TransactionInstruction[]
                • Optional opts: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                Returns Promise<MangoSignatureStatus>

              • Parameters

                • ixs: TransactionInstruction[]
                • Optional opts: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                Returns Promise<MangoSignature>

              • sendAndConfirmTransactionForGroup(group: Group, ixs: TransactionInstruction[], opts?: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignatureStatus>
              • sendAndConfirmTransactionForGroup(group: Group, ixs: TransactionInstruction[], opts?: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignature>
              • Parameters

                • group: Group
                • ixs: TransactionInstruction[]
                • Optional opts: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                Returns Promise<MangoSignatureStatus>

              • Parameters

                • group: Group
                • ixs: TransactionInstruction[]
                • Optional opts: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                Returns Promise<MangoSignature>

              • serum3CancelAllOrdersIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey, limit?: number): Promise<TransactionInstruction>
              • serum3CancelOrderByClientIdIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey, clientOrderId: BN): Promise<TransactionInstruction>
              • serum3CancelOrderIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey, side: Serum3Side, orderId: BN): Promise<TransactionInstruction>
              • serum3CloseOpenOrdersIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey): Promise<TransactionInstruction>
              • serum3CreateOpenOrdersIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey): Promise<TransactionInstruction>
              • serum3EditMarket(group: Group, serum3MarketIndex: MarketIndex, reduceOnly: null | boolean, forceClose: null | boolean, name: null | string, oraclePriceBand: null | number): Promise<MangoSignatureStatus>
              • serum3EditMarketIx(group: Group, serum3MarketIndex: MarketIndex, admin: PublicKey, reduceOnly: null | boolean, forceClose: null | boolean, name: null | string, oraclePriceBand: null | number): Promise<TransactionInstruction>
              • Parameters

                • group: Group
                • serum3MarketIndex: MarketIndex
                • admin: PublicKey
                • reduceOnly: null | boolean
                • forceClose: null | boolean
                • name: null | string
                • oraclePriceBand: null | number

                Returns Promise<TransactionInstruction>

              • serum3GetMarkets(group: Group, baseTokenIndex?: number, quoteTokenIndex?: number): Promise<Serum3Market[]>
              • serum3RegisterMarket(group: Group, serum3MarketExternalPk: PublicKey, baseBank: Bank, quoteBank: Bank, marketIndex: number, name: string, oraclePriceBand: number): Promise<MangoSignatureStatus>
              • serum3SettleFundsIx(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey): Promise<TransactionInstruction>
              • serum3SettleFundsV2Ix(group: Group, mangoAccount: MangoAccount, externalMarketPk: PublicKey): Promise<TransactionInstruction>
              • tcsStopLossOnBorrow(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxBuyUi: null | number, pricePremium: null | number, allowMargin: null | boolean, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • tcsStopLossOnBorrowIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxBuyUi: null | number, pricePremium: null | number, allowMargin: null | boolean, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • thresholdPrice: number
                • thresholdPriceInSellPerBuyToken: boolean
                • maxBuyUi: null | number
                • pricePremium: null | number
                • allowMargin: null | boolean
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tcsStopLossOnDeposit(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxSell: null | number, pricePremium: null | number, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • tcsStopLossOnDepositIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxSell: null | number, pricePremium: null | number, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • thresholdPrice: number
                • thresholdPriceInSellPerBuyToken: boolean
                • maxSell: null | number
                • pricePremium: null | number
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tcsTakeProfitOnBorrow(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxBuyUi: null | number, pricePremium: null | number, allowMargin: null | boolean, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • tcsTakeProfitOnBorrowIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxBuyUi: null | number, pricePremium: null | number, allowMargin: null | boolean, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • thresholdPrice: number
                • thresholdPriceInSellPerBuyToken: boolean
                • maxBuyUi: null | number
                • pricePremium: null | number
                • allowMargin: null | boolean
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tcsTakeProfitOnDeposit(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxSell: null | number, pricePremium: null | number, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • tcsTakeProfitOnDepositIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, thresholdPrice: number, thresholdPriceInSellPerBuyToken: boolean, maxSell: null | number, pricePremium: null | number, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • thresholdPrice: number
                • thresholdPriceInSellPerBuyToken: boolean
                • maxSell: null | number
                • pricePremium: null | number
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tokenConditionalSwapCancelIx(group: Group, account: MangoAccount, tokenConditionalSwapId: BN): Promise<TransactionInstruction>
              • tokenConditionalSwapCreate(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, lowerLimitNativeNative: number, upperLimitNativeNative: number, maxBuy: number, maxSell: number, tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow", pricePremium: null | number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, expiryTimestamp: null | number, displayPriceInSellTokenPerBuyToken: boolean): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • lowerLimitNativeNative: number
                • upperLimitNativeNative: number
                • maxBuy: number
                • maxSell: number
                • tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow"
                • pricePremium: null | number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • expiryTimestamp: null | number
                • displayPriceInSellTokenPerBuyToken: boolean

                Returns Promise<MangoSignatureStatus>

              • tokenConditionalSwapCreateIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, lowerLimitNativeNative: number, upperLimitNativeNative: number, maxBuy: number, maxSell: number, tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow", pricePremium: null | number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, expiryTimestamp: null | number, displayPriceInSellTokenPerBuyToken: boolean): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • lowerLimitNativeNative: number
                • upperLimitNativeNative: number
                • maxBuy: number
                • maxSell: number
                • tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow"
                • pricePremium: null | number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • expiryTimestamp: null | number
                • displayPriceInSellTokenPerBuyToken: boolean

                Returns Promise<TransactionInstruction[]>

              • tokenConditionalSwapCreateLinearAuction(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, priceStart: number, priceEnd: number, maxBuy: number, maxSell: number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, displayPriceInSellTokenPerBuyToken: boolean, startTimestamp: number, durationSeconds: number, expiryTimestamp: null | number): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • priceStart: number
                • priceEnd: number
                • maxBuy: number
                • maxSell: number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • displayPriceInSellTokenPerBuyToken: boolean
                • startTimestamp: number
                • durationSeconds: number
                • expiryTimestamp: null | number

                Returns Promise<MangoSignatureStatus>

              • tokenConditionalSwapCreateLinearAuctionIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, priceStart: number, priceEnd: number, maxBuy: number, maxSell: number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, displayPriceInSellTokenPerBuyToken: boolean, startTimestamp: number, durationSeconds: number, expiryTimestamp: null | number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • priceStart: number
                • priceEnd: number
                • maxBuy: number
                • maxSell: number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • displayPriceInSellTokenPerBuyToken: boolean
                • startTimestamp: number
                • durationSeconds: number
                • expiryTimestamp: null | number

                Returns Promise<TransactionInstruction[]>

              • tokenConditionalSwapCreatePremiumAuction(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, lowerLimit: number, upperLimit: number, maxBuy: number, maxSell: number, tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow", maxPricePremiumPercent: null | number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, expiryTimestamp: null | number, displayPriceInSellTokenPerBuyToken: boolean, durationSeconds: number): Promise<MangoSignatureStatus>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • lowerLimit: number
                • upperLimit: number
                • maxBuy: number
                • maxSell: number
                • tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow"
                • maxPricePremiumPercent: null | number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • expiryTimestamp: null | number
                • displayPriceInSellTokenPerBuyToken: boolean
                • durationSeconds: number

                Returns Promise<MangoSignatureStatus>

              • tokenConditionalSwapCreatePremiumAuctionIx(group: Group, account: MangoAccount, sellBank: Bank, buyBank: Bank, lowerLimit: number, upperLimit: number, maxBuy: number, maxSell: number, tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow", maxPricePremiumPercent: null | number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, expiryTimestamp: null | number, displayPriceInSellTokenPerBuyToken: boolean, durationSeconds: number): Promise<TransactionInstruction[]>
              • Parameters

                • group: Group
                • account: MangoAccount
                • sellBank: Bank
                • buyBank: Bank
                • lowerLimit: number
                • upperLimit: number
                • maxBuy: number
                • maxSell: number
                • tcsIntention: null | "TakeProfitOnDeposit" | "StopLossOnDeposit" | "TakeProfitOnBorrow" | "StopLossOnBorrow"
                • maxPricePremiumPercent: null | number
                • allowCreatingDeposits: boolean
                • allowCreatingBorrows: boolean
                • expiryTimestamp: null | number
                • displayPriceInSellTokenPerBuyToken: boolean
                • durationSeconds: number

                Returns Promise<TransactionInstruction[]>

              • tokenConditionalSwapCreateRawIx(group: Group, account: MangoAccount, buyMintPk: PublicKey, sellMintPk: PublicKey, maxBuy: BN, maxSell: BN, expiryTimestamp: null | number, priceLowerLimit: number, priceUpperLimit: number, pricePremiumRate: number, allowCreatingDeposits: boolean, allowCreatingBorrows: boolean, priceDisplayStyle: TokenConditionalSwapDisplayPriceStyle, intention: TokenConditionalSwapIntention): Promise<TransactionInstruction[]>
              • tokenConditionalSwapTriggerIx(group: Group, liqee: MangoAccount, liqor: MangoAccount, tokenConditionalSwapId: BN, maxBuyTokenToLiqee: number, maxSellTokenToLiqor: number): Promise<TransactionInstruction>
              • tokenDepositNative(group: Group, mangoAccount: MangoAccount, mintPk: PublicKey, nativeAmount: BN, reduceOnly?: boolean, intoExisting?: boolean): Promise<MangoSignature>
              • tokenRegister(group: Group, mintPk: PublicKey, oraclePk: PublicKey, fallbackOraclePk: PublicKey, tokenIndex: number, name: string, params: TokenRegisterParams): Promise<MangoSignatureStatus>
              • tokenRegisterTrustless(group: Group, mintPk: PublicKey, oraclePk: PublicKey, tokenIndex: number, name: string): Promise<MangoSignatureStatus>
              • tokenUpdateIndexAndRateIx(group: Group, mintPk: PublicKey): Promise<TransactionInstruction>
              • tokenWithdrawNativeIx(group: Group, mangoAccount: MangoAccount, mintPk: PublicKey, nativeAmount: BN, allowBorrow: boolean): Promise<TransactionInstruction[]>
              • connect(provider: default, cluster: Cluster, programId: PublicKey, opts?: MangoClientOptions): MangoClient
              • tokenWithdrawNativeIx(group: Group, mangoAccount: MangoAccount, mintPk: PublicKey, nativeAmount: BN, allowBorrow: boolean): Promise<TransactionInstruction[]>
              • connect(provider: default, cluster: Cluster, programId: PublicKey, opts?: MangoClientOptions): MangoClient
              • Connect with defaults,

                • random ephemeral keypair,
                • @@ -31,4 +31,4 @@ use forceClose flag

                • connects to mainnet-beta
                • uses well known program Id
                -

                Parameters

                • clusterUrl: string

                Returns MangoClient

              • connectForGroupName(provider: default, groupName: string): MangoClient

              Generated using TypeDoc

              \ No newline at end of file +

              Parameters

              Returns MangoClient

              Generated using TypeDoc

              \ No newline at end of file diff --git a/ts/client/classes/MangoError.html b/ts/client/classes/MangoError.html index f76c88c56..8f8708ff0 100644 --- a/ts/client/classes/MangoError.html +++ b/ts/client/classes/MangoError.html @@ -1,4 +1,4 @@ -MangoError | @blockworks-foundation/mango-v4
              Options
              All
              • Public
              • Public/Protected
              • All
              Menu

              Hierarchy

              • Error
                • MangoError

              Index

              Constructors

              • new MangoError(__namedParameters: Object): MangoError

              Properties

              cause?: unknown
              message: string
              name: string
              stack?: string
              txid: string
              prepareStackTrace?: (err: Error, stackTraces: CallSite[]) => any

              Type declaration

                • (err: Error, stackTraces: CallSite[]): any
                • +MangoError | @blockworks-foundation/mango-v4
                  Options
                  All
                  • Public
                  • Public/Protected
                  • All
                  Menu

                  Hierarchy

                  • Error
                    • MangoError

                  Index

                  Constructors

                  • new MangoError(__namedParameters: Object): MangoError

                  Properties

                  cause?: unknown
                  message: string
                  name: string
                  stack?: string
                  txid: string
                  prepareStackTrace?: (err: Error, stackTraces: CallSite[]) => any

                  Type declaration

                  stackTraceLimit: number

                  Methods

                  • captureStackTrace(targetObject: object, constructorOpt?: Function): void
                  • diff --git a/ts/client/classes/MintInfo.html b/ts/client/classes/MintInfo.html index 4d9719b35..d9c37b190 100644 --- a/ts/client/classes/MintInfo.html +++ b/ts/client/classes/MintInfo.html @@ -1 +1 @@ -MintInfo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • MintInfo

                    Index

                    Constructors

                    • new MintInfo(publicKey: PublicKey, group: PublicKey, tokenIndex: TokenIndex, mint: PublicKey, banks: PublicKey[], vaults: PublicKey[], oracle: PublicKey, registrationTime: BN, groupInsuranceFund: boolean): MintInfo

                    Properties

                    banks: PublicKey[]
                    group: PublicKey
                    groupInsuranceFund: boolean
                    mint: PublicKey
                    oracle: PublicKey
                    publicKey: PublicKey
                    registrationTime: BN
                    tokenIndex: TokenIndex
                    vaults: PublicKey[]

                    Methods

                    • firstBank(): PublicKey
                    • firstVault(): PublicKey
                    • toString(): string
                    • from(publicKey: PublicKey, obj: { banks: PublicKey[]; group: PublicKey; groupInsuranceFund: number; mint: PublicKey; oracle: PublicKey; registrationTime: BN; tokenIndex: number; vaults: PublicKey[] }): MintInfo
                    • Parameters

                      • publicKey: PublicKey
                      • obj: { banks: PublicKey[]; group: PublicKey; groupInsuranceFund: number; mint: PublicKey; oracle: PublicKey; registrationTime: BN; tokenIndex: number; vaults: PublicKey[] }
                        • banks: PublicKey[]
                        • group: PublicKey
                        • groupInsuranceFund: number
                        • mint: PublicKey
                        • oracle: PublicKey
                        • registrationTime: BN
                        • tokenIndex: number
                        • vaults: PublicKey[]

                      Returns MintInfo

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +MintInfo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • MintInfo

                    Index

                    Constructors

                    • new MintInfo(publicKey: PublicKey, group: PublicKey, tokenIndex: TokenIndex, mint: PublicKey, banks: PublicKey[], vaults: PublicKey[], oracle: PublicKey, registrationTime: BN, groupInsuranceFund: boolean): MintInfo

                    Properties

                    banks: PublicKey[]
                    group: PublicKey
                    groupInsuranceFund: boolean
                    mint: PublicKey
                    oracle: PublicKey
                    publicKey: PublicKey
                    registrationTime: BN
                    tokenIndex: TokenIndex
                    vaults: PublicKey[]

                    Methods

                    • firstBank(): PublicKey
                    • firstVault(): PublicKey
                    • toString(): string
                    • from(publicKey: PublicKey, obj: { banks: PublicKey[]; group: PublicKey; groupInsuranceFund: number; mint: PublicKey; oracle: PublicKey; registrationTime: BN; tokenIndex: number; vaults: PublicKey[] }): MintInfo
                    • Parameters

                      • publicKey: PublicKey
                      • obj: { banks: PublicKey[]; group: PublicKey; groupInsuranceFund: number; mint: PublicKey; oracle: PublicKey; registrationTime: BN; tokenIndex: number; vaults: PublicKey[] }
                        • banks: PublicKey[]
                        • group: PublicKey
                        • groupInsuranceFund: number
                        • mint: PublicKey
                        • oracle: PublicKey
                        • registrationTime: BN
                        • tokenIndex: number
                        • vaults: PublicKey[]

                      Returns MintInfo

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/OracleConfigParams.html b/ts/client/classes/OracleConfigParams.html index c6e8d9103..cc3699cbe 100644 --- a/ts/client/classes/OracleConfigParams.html +++ b/ts/client/classes/OracleConfigParams.html @@ -1 +1 @@ -OracleConfigParams | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +OracleConfigParams | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/PerpEventQueue.html b/ts/client/classes/PerpEventQueue.html index f7f9300b5..ca3d2fccc 100644 --- a/ts/client/classes/PerpEventQueue.html +++ b/ts/client/classes/PerpEventQueue.html @@ -1 +1 @@ -PerpEventQueue | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpEventQueue

                    Index

                    Constructors

                    Properties

                    count: number
                    head: number
                    rawEvents: (FillEvent | OutEvent | LiquidateEvent)[]
                    seqNum: BN
                    FILL_EVENT_TYPE: number = 0
                    LIQUIDATE_EVENT_TYPE: number = 2
                    OUT_EVENT_TYPE: number = 1

                    Methods

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +PerpEventQueue | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpEventQueue

                    Index

                    Constructors

                    Properties

                    count: number
                    head: number
                    rawEvents: (FillEvent | OutEvent | LiquidateEvent)[]
                    seqNum: BN
                    FILL_EVENT_TYPE: number = 0
                    LIQUIDATE_EVENT_TYPE: number = 2
                    OUT_EVENT_TYPE: number = 1

                    Methods

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/PerpMarket.html b/ts/client/classes/PerpMarket.html index 3205e3fa2..55f792197 100644 --- a/ts/client/classes/PerpMarket.html +++ b/ts/client/classes/PerpMarket.html @@ -1,12 +1,12 @@ -PerpMarket | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpMarket

                    Index

                    Constructors

                    • new PerpMarket(publicKey: PublicKey, group: PublicKey, settleTokenIndex: TokenIndex, perpMarketIndex: PerpMarketIndex, groupInsuranceFund: boolean, baseDecimals: number, name: number[], bids: PublicKey, asks: PublicKey, eventQueue: PublicKey, oracle: PublicKey, oracleConfig: OracleConfigDto, stablePriceModel: StablePriceModel, quoteLotSize: BN, baseLotSize: BN, maintBaseAssetWeight: I80F48Dto, initBaseAssetWeight: I80F48Dto, maintBaseLiabWeight: I80F48Dto, initBaseLiabWeight: I80F48Dto, openInterest: BN, seqNum: BN, registrationTime: BN, minFunding: I80F48Dto, maxFunding: I80F48Dto, impactQuantity: BN, longFunding: I80F48Dto, shortFunding: I80F48Dto, fundingLastUpdated: BN, baseLiquidationFee: I80F48Dto, makerFee: I80F48Dto, takerFee: I80F48Dto, feesAccrued: I80F48Dto, feesSettled: I80F48Dto, feePenalty: number, settleFeeFlat: number, settleFeeAmountThreshold: number, settleFeeFractionLowHealth: number, settlePnlLimitFactor: number, settlePnlLimitWindowSizeTs: BN, reduceOnly: boolean, forceClose: boolean, maintOverallAssetWeight: I80F48Dto, initOverallAssetWeight: I80F48Dto, positivePnlLiquidationFee: I80F48Dto, feesWithdrawn: BN, platformLiquidationFee: I80F48Dto, accruedLiquidationFees: I80F48Dto): PerpMarket

                    Properties

                    _asks: BookSide
                    _bids: BookSide
                    _oracleLastKnownDeviation: undefined | I80F48
                    _oracleLastUpdatedSlot: number
                    _oracleProvider: OracleProvider
                    _price: I80F48
                    _uiPrice: number
                    accruedLiquidationFees: I80F48
                    asks: PublicKey
                    baseDecimals: number
                    baseLiquidationFee: I80F48
                    baseLotSize: BN
                    baseLotsToUiConverter: number
                    bids: PublicKey
                    eventQueue: PublicKey
                    feePenalty: number
                    feesAccrued: I80F48
                    feesSettled: I80F48
                    feesWithdrawn: BN
                    forceClose: boolean
                    fundingLastUpdated: BN
                    group: PublicKey
                    groupInsuranceFund: boolean
                    impactQuantity: BN
                    initBaseAssetWeight: I80F48
                    initBaseLiabWeight: I80F48
                    initOverallAssetWeight: I80F48
                    longFunding: I80F48
                    maintBaseAssetWeight: I80F48
                    maintBaseLiabWeight: I80F48
                    maintOverallAssetWeight: I80F48
                    makerFee: I80F48
                    maxFunding: I80F48
                    minFunding: I80F48
                    name: string
                    openInterest: BN
                    oracle: PublicKey
                    oracleConfig: OracleConfig
                    perpMarketIndex: PerpMarketIndex
                    platformLiquidationFee: I80F48
                    positivePnlLiquidationFee: I80F48
                    priceLotsToUiConverter: number
                    publicKey: PublicKey
                    quoteLotSize: BN
                    quoteLotsToUiConverter: number
                    reduceOnly: boolean
                    registrationTime: BN
                    seqNum: BN
                    settleFeeAmountThreshold: number
                    settleFeeFlat: number
                    settleFeeFractionLowHealth: number
                    settlePnlLimitFactor: number
                    settlePnlLimitWindowSizeTs: BN
                    settleTokenIndex: TokenIndex
                    shortFunding: I80F48
                    stablePriceModel: StablePriceModel
                    takerFee: I80F48

                    Accessors

                    • get minOrderSize(): number
                    • get oracleLastUpdatedSlot(): number
                    • get tickSize(): number
                    • get uiPrice(): number

                    Methods

                    • baseLotsToUi(quantity: BN): number
                    • insidePriceLimit(side: PerpOrderSide, orderPrice: number): boolean
                    • isOracleStaleOrUnconfident(nowSlot: number): boolean
                    • priceLotsToNative(price: BN): I80F48
                    • priceLotsToUi(price: BN): number
                    • priceNativeToUi(price: number): number
                    • quoteLotsToUi(quantity: BN): number
                    • toString(): string
                    • uiBaseToLots(quantity: number): BN
                    • uiPriceToLots(price: number): BN
                    • uiQuoteToLots(uiQuote: number): BN
                    • from(publicKey: PublicKey, obj: { accruedLiquidationFees: I80F48Dto; asks: PublicKey; baseDecimals: number; baseLiquidationFee: I80F48Dto; baseLotSize: BN; bids: PublicKey; eventQueue: PublicKey; feePenalty: number; feesAccrued: I80F48Dto; feesSettled: I80F48Dto; feesWithdrawn: BN; forceClose: number; fundingLastUpdated: BN; group: PublicKey; groupInsuranceFund: number; impactQuantity: BN; initBaseAssetWeight: I80F48Dto; initBaseLiabWeight: I80F48Dto; initOverallAssetWeight: I80F48Dto; longFunding: I80F48Dto; maintBaseAssetWeight: I80F48Dto; maintBaseLiabWeight: I80F48Dto; maintOverallAssetWeight: I80F48Dto; makerFee: I80F48Dto; maxFunding: I80F48Dto; minFunding: I80F48Dto; name: number[]; openInterest: BN; oracle: PublicKey; oracleConfig: OracleConfigDto; perpMarketIndex: number; platformLiquidationFee: I80F48Dto; positivePnlLiquidationFee: I80F48Dto; quoteLotSize: BN; reduceOnly: number; registrationTime: BN; seqNum: BN; settleFeeAmountThreshold: number; settleFeeFlat: number; settleFeeFractionLowHealth: number; settlePnlLimitFactor: number; settlePnlLimitWindowSizeTs: BN; settleTokenIndex: number; shortFunding: I80F48Dto; stablePriceModel: StablePriceModel; takerFee: I80F48Dto }): PerpMarket
                    • Parameters

                      • publicKey: PublicKey
                      • obj: { accruedLiquidationFees: I80F48Dto; asks: PublicKey; baseDecimals: number; baseLiquidationFee: I80F48Dto; baseLotSize: BN; bids: PublicKey; eventQueue: PublicKey; feePenalty: number; feesAccrued: I80F48Dto; feesSettled: I80F48Dto; feesWithdrawn: BN; forceClose: number; fundingLastUpdated: BN; group: PublicKey; groupInsuranceFund: number; impactQuantity: BN; initBaseAssetWeight: I80F48Dto; initBaseLiabWeight: I80F48Dto; initOverallAssetWeight: I80F48Dto; longFunding: I80F48Dto; maintBaseAssetWeight: I80F48Dto; maintBaseLiabWeight: I80F48Dto; maintOverallAssetWeight: I80F48Dto; makerFee: I80F48Dto; maxFunding: I80F48Dto; minFunding: I80F48Dto; name: number[]; openInterest: BN; oracle: PublicKey; oracleConfig: OracleConfigDto; perpMarketIndex: number; platformLiquidationFee: I80F48Dto; positivePnlLiquidationFee: I80F48Dto; quoteLotSize: BN; reduceOnly: number; registrationTime: BN; seqNum: BN; settleFeeAmountThreshold: number; settleFeeFlat: number; settleFeeFractionLowHealth: number; settlePnlLimitFactor: number; settlePnlLimitWindowSizeTs: BN; settleTokenIndex: number; shortFunding: I80F48Dto; stablePriceModel: StablePriceModel; takerFee: I80F48Dto }
                        • accruedLiquidationFees: I80F48Dto
                        • asks: PublicKey
                        • baseDecimals: number
                        • baseLiquidationFee: I80F48Dto
                        • baseLotSize: BN
                        • bids: PublicKey
                        • eventQueue: PublicKey
                        • feePenalty: number
                        • feesAccrued: I80F48Dto
                        • feesSettled: I80F48Dto
                        • feesWithdrawn: BN
                        • forceClose: number
                        • fundingLastUpdated: BN
                        • group: PublicKey
                        • groupInsuranceFund: number
                        • impactQuantity: BN
                        • initBaseAssetWeight: I80F48Dto
                        • initBaseLiabWeight: I80F48Dto
                        • initOverallAssetWeight: I80F48Dto
                        • longFunding: I80F48Dto
                        • maintBaseAssetWeight: I80F48Dto
                        • maintBaseLiabWeight: I80F48Dto
                        • maintOverallAssetWeight: I80F48Dto
                        • makerFee: I80F48Dto
                        • maxFunding: I80F48Dto
                        • minFunding: I80F48Dto
                        • name: number[]
                        • openInterest: BN
                        • oracle: PublicKey
                        • oracleConfig: OracleConfigDto
                        • perpMarketIndex: number
                        • platformLiquidationFee: I80F48Dto
                        • positivePnlLiquidationFee: I80F48Dto
                        • quoteLotSize: BN
                        • reduceOnly: number
                        • registrationTime: BN
                        • seqNum: BN
                        • settleFeeAmountThreshold: number
                        • settleFeeFlat: number
                        • settleFeeFractionLowHealth: number
                        • settlePnlLimitFactor: number
                        • settlePnlLimitWindowSizeTs: BN
                        • settleTokenIndex: number
                        • shortFunding: I80F48Dto
                        • stablePriceModel: StablePriceModel
                        • takerFee: I80F48Dto

                      Returns PerpMarket

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/PerpOo.html b/ts/client/classes/PerpOo.html index aa627247a..b02d729d0 100644 --- a/ts/client/classes/PerpOo.html +++ b/ts/client/classes/PerpOo.html @@ -1 +1 @@ -PerpOo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpOo

                    Index

                    Constructors

                    • new PerpOo(sideAndTree: any, orderMarket: number, clientId: BN, id: BN): PerpOo

                    Properties

                    clientId: BN
                    id: BN
                    orderMarket: number
                    sideAndTree: any
                    OrderMarketUnset: number = 65535

                    Methods

                    • isActive(): boolean

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +PerpOo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpOo

                    Index

                    Constructors

                    • new PerpOo(sideAndTree: any, orderMarket: number, clientId: BN, id: BN): PerpOo

                    Properties

                    clientId: BN
                    id: BN
                    orderMarket: number
                    sideAndTree: any
                    OrderMarketUnset: number = 65535

                    Methods

                    • isActive(): boolean

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/PerpOoDto.html b/ts/client/classes/PerpOoDto.html index c67afe396..a2c9a1e86 100644 --- a/ts/client/classes/PerpOoDto.html +++ b/ts/client/classes/PerpOoDto.html @@ -1 +1 @@ -PerpOoDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpOoDto

                    Index

                    Constructors

                    • new PerpOoDto(sideAndTree: any, market: number, clientId: BN, id: BN): PerpOoDto

                    Properties

                    clientId: BN
                    id: BN
                    market: number
                    sideAndTree: any

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +PerpOoDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpOoDto

                    Index

                    Constructors

                    • new PerpOoDto(sideAndTree: any, market: number, clientId: BN, id: BN): PerpOoDto

                    Properties

                    clientId: BN
                    id: BN
                    market: number
                    sideAndTree: any

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/PerpOrder.html b/ts/client/classes/PerpOrder.html index 436960048..792437b02 100644 --- a/ts/client/classes/PerpOrder.html +++ b/ts/client/classes/PerpOrder.html @@ -1 +1 @@ -PerpOrder | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpOrder

                    Index

                    Constructors

                    • new PerpOrder(seqNum: BN, orderId: BN, owner: PublicKey, openOrdersSlot: number, feeTier: 0, uiPrice: number, priceLots: BN, uiSize: number, sizeLots: BN, side: PerpOrderSide, timestamp: BN, expiryTimestamp: BN, perpMarketIndex: number, isExpired?: boolean, isOraclePegged?: boolean, orderType: PerpOrderType, oraclePeggedProperties?: OraclePeggedProperties): PerpOrder
                    • Parameters

                      • seqNum: BN
                      • orderId: BN
                      • owner: PublicKey
                      • openOrdersSlot: number
                      • feeTier: 0
                      • uiPrice: number
                      • priceLots: BN
                      • uiSize: number
                      • sizeLots: BN
                      • side: PerpOrderSide
                      • timestamp: BN
                      • expiryTimestamp: BN
                      • perpMarketIndex: number
                      • isExpired: boolean = false
                      • isOraclePegged: boolean = false
                      • orderType: PerpOrderType
                      • Optional oraclePeggedProperties: OraclePeggedProperties

                      Returns PerpOrder

                    Properties

                    expiryTimestamp: BN
                    feeTier: 0
                    isExpired: boolean = false
                    isOraclePegged: boolean = false
                    openOrdersSlot: number
                    oraclePeggedProperties?: OraclePeggedProperties
                    orderId: BN
                    orderType: PerpOrderType
                    owner: PublicKey
                    perpMarketIndex: number
                    priceLots: BN
                    seqNum: BN
                    sizeLots: BN
                    timestamp: BN
                    uiPrice: number
                    uiSize: number

                    Accessors

                    • get price(): number
                    • get size(): number

                    Methods

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +PerpOrder | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpOrder

                    Index

                    Constructors

                    • new PerpOrder(seqNum: BN, orderId: BN, owner: PublicKey, openOrdersSlot: number, feeTier: 0, uiPrice: number, priceLots: BN, uiSize: number, sizeLots: BN, side: PerpOrderSide, timestamp: BN, expiryTimestamp: BN, perpMarketIndex: number, isExpired?: boolean, isOraclePegged?: boolean, orderType: PerpOrderType, oraclePeggedProperties?: OraclePeggedProperties): PerpOrder
                    • Parameters

                      • seqNum: BN
                      • orderId: BN
                      • owner: PublicKey
                      • openOrdersSlot: number
                      • feeTier: 0
                      • uiPrice: number
                      • priceLots: BN
                      • uiSize: number
                      • sizeLots: BN
                      • side: PerpOrderSide
                      • timestamp: BN
                      • expiryTimestamp: BN
                      • perpMarketIndex: number
                      • isExpired: boolean = false
                      • isOraclePegged: boolean = false
                      • orderType: PerpOrderType
                      • Optional oraclePeggedProperties: OraclePeggedProperties

                      Returns PerpOrder

                    Properties

                    expiryTimestamp: BN
                    feeTier: 0
                    isExpired: boolean = false
                    isOraclePegged: boolean = false
                    openOrdersSlot: number
                    oraclePeggedProperties?: OraclePeggedProperties
                    orderId: BN
                    orderType: PerpOrderType
                    owner: PublicKey
                    perpMarketIndex: number
                    priceLots: BN
                    seqNum: BN
                    sizeLots: BN
                    timestamp: BN
                    uiPrice: number
                    uiSize: number

                    Accessors

                    • get price(): number
                    • get size(): number

                    Methods

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/PerpPosition.html b/ts/client/classes/PerpPosition.html index c0bf1a168..a97e286cd 100644 --- a/ts/client/classes/PerpPosition.html +++ b/ts/client/classes/PerpPosition.html @@ -1,9 +1,9 @@ -PerpPosition | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpPosition

                    Index

                    Constructors

                    • new PerpPosition(marketIndex: PerpMarketIndex, settlePnlLimitWindow: number, settlePnlLimitSettledInCurrentWindowNative: BN, basePositionLots: BN, quotePositionNative: I80F48, quoteRunningNative: BN, longSettledFunding: I80F48, shortSettledFunding: I80F48, bidsBaseLots: BN, asksBaseLots: BN, takerBaseLots: BN, takerQuoteLots: BN, cumulativeLongFunding: number, cumulativeShortFunding: number, makerVolume: BN, takerVolume: BN, perpSpotTransfers: BN, avgEntryPricePerBaseLot: number, deprecatedRealizedTradePnlNative: I80F48, oneshotSettlePnlAllowance: I80F48, recurringSettlePnlAllowance: BN, realizedPnlForPositionNative: I80F48): PerpPosition
                    • Parameters

                      • marketIndex: PerpMarketIndex
                      • settlePnlLimitWindow: number
                      • settlePnlLimitSettledInCurrentWindowNative: BN
                      • basePositionLots: BN
                      • quotePositionNative: I80F48
                      • quoteRunningNative: BN
                      • longSettledFunding: I80F48
                      • shortSettledFunding: I80F48
                      • bidsBaseLots: BN
                      • asksBaseLots: BN
                      • takerBaseLots: BN
                      • takerQuoteLots: BN
                      • cumulativeLongFunding: number
                      • cumulativeShortFunding: number
                      • makerVolume: BN
                      • takerVolume: BN
                      • perpSpotTransfers: BN
                      • avgEntryPricePerBaseLot: number
                      • deprecatedRealizedTradePnlNative: I80F48
                      • oneshotSettlePnlAllowance: I80F48
                      • recurringSettlePnlAllowance: BN
                      • realizedPnlForPositionNative: I80F48

                      Returns PerpPosition

                    Properties

                    asksBaseLots: BN
                    avgEntryPricePerBaseLot: number
                    basePositionLots: BN
                    bidsBaseLots: BN
                    cumulativeLongFunding: number
                    cumulativeShortFunding: number
                    deprecatedRealizedTradePnlNative: I80F48
                    longSettledFunding: I80F48
                    makerVolume: BN
                    marketIndex: PerpMarketIndex
                    oneshotSettlePnlAllowance: I80F48
                    perpSpotTransfers: BN
                    quotePositionNative: I80F48
                    quoteRunningNative: BN
                    realizedPnlForPositionNative: I80F48
                    recurringSettlePnlAllowance: BN
                    settlePnlLimitSettledInCurrentWindowNative: BN
                    settlePnlLimitWindow: number
                    shortSettledFunding: I80F48
                    takerBaseLots: BN
                    takerQuoteLots: BN
                    takerVolume: BN
                    PerpMarketIndexUnset: number = 65535

                    Methods

                    • availableSettleLimit(perpMarket: PerpMarket): [BN, BN]
                    • cumulativePnlOverPositionLifetimeUi(perpMarket: PerpMarket): number
                    • getAverageEntryPriceUi(perpMarket: PerpMarket): number
                    • getBasePositionUi(perpMarket: PerpMarket, useEventQueue?: boolean): number
                    • getBreakEvenPriceUi(perpMarket: PerpMarket): number
                    • getNotionalValueUi(perpMarket: PerpMarket, useEventQueue?: boolean): number
                    • getQuotePositionUi(perpMarket: PerpMarket, useEventQueue?: boolean): number
                    • getRealizedPnlUi(): number
                    • getUnRealizedPnlUi(perpMarket: PerpMarket): number
                    • getUnsettledFundingUi(perpMarket: PerpMarket): number
                    • hasOpenOrders(): boolean
                    • isActive(): boolean

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/PerpPositionDto.html b/ts/client/classes/PerpPositionDto.html index a49874dd2..d46c184d5 100644 --- a/ts/client/classes/PerpPositionDto.html +++ b/ts/client/classes/PerpPositionDto.html @@ -1 +1 @@ -PerpPositionDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpPositionDto

                    Index

                    Constructors

                    • new PerpPositionDto(marketIndex: number, settlePnlLimitWindow: number, settlePnlLimitSettledInCurrentWindowNative: BN, basePositionLots: BN, quotePositionNative: { val: BN }, quoteRunningNative: BN, longSettledFunding: I80F48Dto, shortSettledFunding: I80F48Dto, bidsBaseLots: BN, asksBaseLots: BN, takerBaseLots: BN, takerQuoteLots: BN, cumulativeLongFunding: number, cumulativeShortFunding: number, makerVolume: BN, takerVolume: BN, perpSpotTransfers: BN, avgEntryPricePerBaseLot: number, deprecatedRealizedTradePnlNative: I80F48Dto, oneshotSettlePnlAllowance: I80F48Dto, recurringSettlePnlAllowance: BN, realizedPnlForPositionNative: I80F48Dto): PerpPositionDto
                    • Parameters

                      • marketIndex: number
                      • settlePnlLimitWindow: number
                      • settlePnlLimitSettledInCurrentWindowNative: BN
                      • basePositionLots: BN
                      • quotePositionNative: { val: BN }
                        • val: BN
                      • quoteRunningNative: BN
                      • longSettledFunding: I80F48Dto
                      • shortSettledFunding: I80F48Dto
                      • bidsBaseLots: BN
                      • asksBaseLots: BN
                      • takerBaseLots: BN
                      • takerQuoteLots: BN
                      • cumulativeLongFunding: number
                      • cumulativeShortFunding: number
                      • makerVolume: BN
                      • takerVolume: BN
                      • perpSpotTransfers: BN
                      • avgEntryPricePerBaseLot: number
                      • deprecatedRealizedTradePnlNative: I80F48Dto
                      • oneshotSettlePnlAllowance: I80F48Dto
                      • recurringSettlePnlAllowance: BN
                      • realizedPnlForPositionNative: I80F48Dto

                      Returns PerpPositionDto

                    Properties

                    asksBaseLots: BN
                    avgEntryPricePerBaseLot: number
                    basePositionLots: BN
                    bidsBaseLots: BN
                    cumulativeLongFunding: number
                    cumulativeShortFunding: number
                    deprecatedRealizedTradePnlNative: I80F48Dto
                    longSettledFunding: I80F48Dto
                    makerVolume: BN
                    marketIndex: number
                    oneshotSettlePnlAllowance: I80F48Dto
                    perpSpotTransfers: BN
                    quotePositionNative: { val: BN }

                    Type declaration

                    • val: BN
                    quoteRunningNative: BN
                    realizedPnlForPositionNative: I80F48Dto
                    recurringSettlePnlAllowance: BN
                    settlePnlLimitSettledInCurrentWindowNative: BN
                    settlePnlLimitWindow: number
                    shortSettledFunding: I80F48Dto
                    takerBaseLots: BN
                    takerQuoteLots: BN
                    takerVolume: BN

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +PerpPositionDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpPositionDto

                    Index

                    Constructors

                    • new PerpPositionDto(marketIndex: number, settlePnlLimitWindow: number, settlePnlLimitSettledInCurrentWindowNative: BN, basePositionLots: BN, quotePositionNative: { val: BN }, quoteRunningNative: BN, longSettledFunding: I80F48Dto, shortSettledFunding: I80F48Dto, bidsBaseLots: BN, asksBaseLots: BN, takerBaseLots: BN, takerQuoteLots: BN, cumulativeLongFunding: number, cumulativeShortFunding: number, makerVolume: BN, takerVolume: BN, perpSpotTransfers: BN, avgEntryPricePerBaseLot: number, deprecatedRealizedTradePnlNative: I80F48Dto, oneshotSettlePnlAllowance: I80F48Dto, recurringSettlePnlAllowance: BN, realizedPnlForPositionNative: I80F48Dto): PerpPositionDto
                    • Parameters

                      • marketIndex: number
                      • settlePnlLimitWindow: number
                      • settlePnlLimitSettledInCurrentWindowNative: BN
                      • basePositionLots: BN
                      • quotePositionNative: { val: BN }
                        • val: BN
                      • quoteRunningNative: BN
                      • longSettledFunding: I80F48Dto
                      • shortSettledFunding: I80F48Dto
                      • bidsBaseLots: BN
                      • asksBaseLots: BN
                      • takerBaseLots: BN
                      • takerQuoteLots: BN
                      • cumulativeLongFunding: number
                      • cumulativeShortFunding: number
                      • makerVolume: BN
                      • takerVolume: BN
                      • perpSpotTransfers: BN
                      • avgEntryPricePerBaseLot: number
                      • deprecatedRealizedTradePnlNative: I80F48Dto
                      • oneshotSettlePnlAllowance: I80F48Dto
                      • recurringSettlePnlAllowance: BN
                      • realizedPnlForPositionNative: I80F48Dto

                      Returns PerpPositionDto

                    Properties

                    asksBaseLots: BN
                    avgEntryPricePerBaseLot: number
                    basePositionLots: BN
                    bidsBaseLots: BN
                    cumulativeLongFunding: number
                    cumulativeShortFunding: number
                    deprecatedRealizedTradePnlNative: I80F48Dto
                    longSettledFunding: I80F48Dto
                    makerVolume: BN
                    marketIndex: number
                    oneshotSettlePnlAllowance: I80F48Dto
                    perpSpotTransfers: BN
                    quotePositionNative: { val: BN }

                    Type declaration

                    • val: BN
                    quoteRunningNative: BN
                    realizedPnlForPositionNative: I80F48Dto
                    recurringSettlePnlAllowance: BN
                    settlePnlLimitSettledInCurrentWindowNative: BN
                    settlePnlLimitWindow: number
                    shortSettledFunding: I80F48Dto
                    takerBaseLots: BN
                    takerQuoteLots: BN
                    takerVolume: BN

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/Serum3Market.html b/ts/client/classes/Serum3Market.html index 35b9aceac..1c03341df 100644 --- a/ts/client/classes/Serum3Market.html +++ b/ts/client/classes/Serum3Market.html @@ -1,5 +1,5 @@ -Serum3Market | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Serum3Market

                    Index

                    Constructors

                    • new Serum3Market(publicKey: PublicKey, group: PublicKey, baseTokenIndex: TokenIndex, quoteTokenIndex: TokenIndex, name: number[], serumProgram: PublicKey, serumMarketExternal: PublicKey, marketIndex: MarketIndex, registrationTime: BN, reduceOnly: boolean, forceClose: boolean, oraclePriceBand: number): Serum3Market
                    • Parameters

                      • publicKey: PublicKey
                      • group: PublicKey
                      • baseTokenIndex: TokenIndex
                      • quoteTokenIndex: TokenIndex
                      • name: number[]
                      • serumProgram: PublicKey
                      • serumMarketExternal: PublicKey
                      • marketIndex: MarketIndex
                      • registrationTime: BN
                      • reduceOnly: boolean
                      • forceClose: boolean
                      • oraclePriceBand: number

                      Returns Serum3Market

                    Properties

                    baseTokenIndex: TokenIndex
                    forceClose: boolean
                    group: PublicKey
                    marketIndex: MarketIndex
                    name: string
                    oraclePriceBand: number
                    publicKey: PublicKey
                    quoteTokenIndex: TokenIndex
                    reduceOnly: boolean
                    registrationTime: BN
                    serumMarketExternal: PublicKey
                    serumProgram: PublicKey

                    Methods

                    • computePriceForMarketOrderOfSize(client: MangoClient, group: Group, size: number, side: "buy" | "sell"): Promise<number>
                    • findOoPda(programId: PublicKey, mangoAccount: PublicKey): Promise<PublicKey>
                    • getFeeRates(taker?: boolean): number
                    • maxAskLeverage(group: Group): number
                    • from(publicKey: PublicKey, obj: { baseTokenIndex: number; forceClose: number; group: PublicKey; marketIndex: number; name: number[]; oraclePriceBand: number; quoteTokenIndex: number; reduceOnly: number; registrationTime: BN; serumMarketExternal: PublicKey; serumProgram: PublicKey }): Serum3Market
                    • Parameters

                      • publicKey: PublicKey
                      • obj: { baseTokenIndex: number; forceClose: number; group: PublicKey; marketIndex: number; name: number[]; oraclePriceBand: number; quoteTokenIndex: number; reduceOnly: number; registrationTime: BN; serumMarketExternal: PublicKey; serumProgram: PublicKey }
                        • baseTokenIndex: number
                        • forceClose: number
                        • group: PublicKey
                        • marketIndex: number
                        • name: number[]
                        • oraclePriceBand: number
                        • quoteTokenIndex: number
                        • reduceOnly: number
                        • registrationTime: BN
                        • serumMarketExternal: PublicKey
                        • serumProgram: PublicKey

                      Returns Serum3Market

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/Serum3Orders.html b/ts/client/classes/Serum3Orders.html index 795976f63..774aace32 100644 --- a/ts/client/classes/Serum3Orders.html +++ b/ts/client/classes/Serum3Orders.html @@ -1 +1 @@ -Serum3Orders | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Serum3Orders

                    Index

                    Constructors

                    • new Serum3Orders(openOrders: PublicKey, marketIndex: MarketIndex, baseTokenIndex: TokenIndex, quoteTokenIndex: TokenIndex, highestPlacedBidInv: number, lowestPlacedAsk: number): Serum3Orders

                    Properties

                    baseTokenIndex: TokenIndex
                    highestPlacedBidInv: number
                    lowestPlacedAsk: number
                    marketIndex: MarketIndex
                    openOrders: PublicKey
                    quoteTokenIndex: TokenIndex
                    Serum3MarketIndexUnset: number = 65535

                    Methods

                    • isActive(): boolean

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +Serum3Orders | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Serum3Orders

                    Index

                    Constructors

                    • new Serum3Orders(openOrders: PublicKey, marketIndex: MarketIndex, baseTokenIndex: TokenIndex, quoteTokenIndex: TokenIndex, highestPlacedBidInv: number, lowestPlacedAsk: number): Serum3Orders

                    Properties

                    baseTokenIndex: TokenIndex
                    highestPlacedBidInv: number
                    lowestPlacedAsk: number
                    marketIndex: MarketIndex
                    openOrders: PublicKey
                    quoteTokenIndex: TokenIndex
                    Serum3MarketIndexUnset: number = 65535

                    Methods

                    • isActive(): boolean

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/Serum3PositionDto.html b/ts/client/classes/Serum3PositionDto.html index 2e225d1c7..2e34bc3b4 100644 --- a/ts/client/classes/Serum3PositionDto.html +++ b/ts/client/classes/Serum3PositionDto.html @@ -1 +1 @@ -Serum3PositionDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Serum3PositionDto

                    Index

                    Constructors

                    • new Serum3PositionDto(openOrders: PublicKey, marketIndex: number, baseBorrowsWithoutFee: BN, quoteBorrowsWithoutFee: BN, baseTokenIndex: number, quoteTokenIndex: number, highestPlacedBidInv: number, lowestPlacedAsk: number, reserved: number[]): Serum3PositionDto

                    Properties

                    baseBorrowsWithoutFee: BN
                    baseTokenIndex: number
                    highestPlacedBidInv: number
                    lowestPlacedAsk: number
                    marketIndex: number
                    openOrders: PublicKey
                    quoteBorrowsWithoutFee: BN
                    quoteTokenIndex: number
                    reserved: number[]

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +Serum3PositionDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Serum3PositionDto

                    Index

                    Constructors

                    • new Serum3PositionDto(openOrders: PublicKey, marketIndex: number, baseBorrowsWithoutFee: BN, quoteBorrowsWithoutFee: BN, baseTokenIndex: number, quoteTokenIndex: number, highestPlacedBidInv: number, lowestPlacedAsk: number, reserved: number[]): Serum3PositionDto

                    Properties

                    baseBorrowsWithoutFee: BN
                    baseTokenIndex: number
                    highestPlacedBidInv: number
                    lowestPlacedAsk: number
                    marketIndex: number
                    openOrders: PublicKey
                    quoteBorrowsWithoutFee: BN
                    quoteTokenIndex: number
                    reserved: number[]

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/StubOracle.html b/ts/client/classes/StubOracle.html index 355a4cf22..8afb8c803 100644 --- a/ts/client/classes/StubOracle.html +++ b/ts/client/classes/StubOracle.html @@ -1 +1 @@ -StubOracle | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • StubOracle

                    Index

                    Constructors

                    • new StubOracle(publicKey: PublicKey, group: PublicKey, mint: PublicKey, price: I80F48Dto, lastUpdateTs: BN, lastUpdateSlot: BN, deviation: I80F48Dto): StubOracle

                    Properties

                    deviation: I80F48
                    group: PublicKey
                    lastUpdateSlot: BN
                    lastUpdateTs: BN
                    mint: PublicKey
                    price: I80F48
                    publicKey: PublicKey

                    Methods

                    • from(publicKey: PublicKey, obj: { deviation: I80F48Dto; group: PublicKey; lastUpdateSlot: BN; lastUpdateTs: BN; mint: PublicKey; price: I80F48Dto }): StubOracle

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +StubOracle | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • StubOracle

                    Index

                    Constructors

                    • new StubOracle(publicKey: PublicKey, group: PublicKey, mint: PublicKey, price: I80F48Dto, lastUpdateTs: BN, lastUpdateSlot: BN, deviation: I80F48Dto): StubOracle

                    Properties

                    deviation: I80F48
                    group: PublicKey
                    lastUpdateSlot: BN
                    lastUpdateTs: BN
                    mint: PublicKey
                    price: I80F48
                    publicKey: PublicKey

                    Methods

                    • from(publicKey: PublicKey, obj: { deviation: I80F48Dto; group: PublicKey; lastUpdateSlot: BN; lastUpdateTs: BN; mint: PublicKey; price: I80F48Dto }): StubOracle

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/TokenConditionalSwap.html b/ts/client/classes/TokenConditionalSwap.html index bdd42b9fe..8cb57c4b9 100644 --- a/ts/client/classes/TokenConditionalSwap.html +++ b/ts/client/classes/TokenConditionalSwap.html @@ -1 +1 @@ -TokenConditionalSwap | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • TokenConditionalSwap

                    Index

                    Constructors

                    Properties

                    allowCreatingBorrows: boolean
                    allowCreatingDeposits: boolean
                    bought: BN
                    buyTokenIndex: TokenIndex
                    expiryTimestamp: BN
                    id: BN
                    isConfigured: boolean
                    makerFeeRate: number
                    maxBuy: BN
                    maxSell: BN
                    priceLowerLimit: number
                    pricePremiumRate: number
                    priceUpperLimit: number
                    sellTokenIndex: TokenIndex
                    sold: BN
                    takerFeeRate: number

                    Methods

                    • getAllowCreatingBorrows(): boolean
                    • getAllowCreatingDeposits(): boolean
                    • getBoughtUi(group: Group): number
                    • getCurrentPairPriceUi(group: Group): number
                    • getCurrentlySuggestedPremium(group: Group): number
                    • getExpiryTimestampInEpochSeconds(): number
                    • getMaxBuyUi(group: Group): number
                    • getMaxSellUi(group: Group): number
                    • getPriceLowerLimitUi(group: Group): number
                    • getPricePremium(): number
                    • getPriceUpperLimitUi(group: Group): number
                    • getSoldUi(group: Group): number
                    • getThresholdPriceUi(group: Group): number
                    • priceLimitToUi(group: Group, sellTokenPerBuyTokenNative: number): number
                    • toString(group: Group): string
                    • computePremium(group: Group, buyBank: Bank, sellBank: Bank, maxBuy: BN, maxSell: BN, maxBuyUi: number, maxSellUi: number): number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +TokenConditionalSwap | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • TokenConditionalSwap

                    Index

                    Constructors

                    Properties

                    allowCreatingBorrows: boolean
                    allowCreatingDeposits: boolean
                    bought: BN
                    buyTokenIndex: TokenIndex
                    expiryTimestamp: BN
                    id: BN
                    isConfigured: boolean
                    makerFeeRate: number
                    maxBuy: BN
                    maxSell: BN
                    priceLowerLimit: number
                    pricePremiumRate: number
                    priceUpperLimit: number
                    sellTokenIndex: TokenIndex
                    sold: BN
                    takerFeeRate: number

                    Methods

                    • getAllowCreatingBorrows(): boolean
                    • getAllowCreatingDeposits(): boolean
                    • getBoughtUi(group: Group): number
                    • getCurrentPairPriceUi(group: Group): number
                    • getCurrentlySuggestedPremium(group: Group): number
                    • getExpiryTimestampInEpochSeconds(): number
                    • getMaxBuyUi(group: Group): number
                    • getMaxSellUi(group: Group): number
                    • getPriceLowerLimitUi(group: Group): number
                    • getPricePremium(): number
                    • getPriceUpperLimitUi(group: Group): number
                    • getSoldUi(group: Group): number
                    • getThresholdPriceUi(group: Group): number
                    • priceLimitToUi(group: Group, sellTokenPerBuyTokenNative: number): number
                    • toString(group: Group): string
                    • computePremium(group: Group, buyBank: Bank, sellBank: Bank, maxBuy: BN, maxSell: BN, maxBuyUi: number, maxSellUi: number): number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/TokenConditionalSwapDto.html b/ts/client/classes/TokenConditionalSwapDto.html index 710004174..3e5f39711 100644 --- a/ts/client/classes/TokenConditionalSwapDto.html +++ b/ts/client/classes/TokenConditionalSwapDto.html @@ -1 +1 @@ -TokenConditionalSwapDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • TokenConditionalSwapDto

                    Index

                    Constructors

                    • new TokenConditionalSwapDto(id: BN, maxBuy: BN, maxSell: BN, bought: BN, sold: BN, expiryTimestamp: BN, priceLowerLimit: number, priceUpperLimit: number, pricePremiumRate: number, takerFeeRate: number, makerFeeRate: number, buyTokenIndex: number, sellTokenIndex: number, isConfigured: number, allowCreatingDeposits: number, allowCreatingBorrows: number, displayPriceStyle: number, intention: number): TokenConditionalSwapDto
                    • Parameters

                      • id: BN
                      • maxBuy: BN
                      • maxSell: BN
                      • bought: BN
                      • sold: BN
                      • expiryTimestamp: BN
                      • priceLowerLimit: number
                      • priceUpperLimit: number
                      • pricePremiumRate: number
                      • takerFeeRate: number
                      • makerFeeRate: number
                      • buyTokenIndex: number
                      • sellTokenIndex: number
                      • isConfigured: number
                      • allowCreatingDeposits: number
                      • allowCreatingBorrows: number
                      • displayPriceStyle: number
                      • intention: number

                      Returns TokenConditionalSwapDto

                    Properties

                    allowCreatingBorrows: number
                    allowCreatingDeposits: number
                    bought: BN
                    buyTokenIndex: number
                    displayPriceStyle: number
                    expiryTimestamp: BN
                    id: BN
                    intention: number
                    isConfigured: number
                    makerFeeRate: number
                    maxBuy: BN
                    maxSell: BN
                    priceLowerLimit: number
                    pricePremiumRate: number
                    priceUpperLimit: number
                    sellTokenIndex: number
                    sold: BN
                    takerFeeRate: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +TokenConditionalSwapDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • TokenConditionalSwapDto

                    Index

                    Constructors

                    • new TokenConditionalSwapDto(id: BN, maxBuy: BN, maxSell: BN, bought: BN, sold: BN, expiryTimestamp: BN, priceLowerLimit: number, priceUpperLimit: number, pricePremiumRate: number, takerFeeRate: number, makerFeeRate: number, buyTokenIndex: number, sellTokenIndex: number, isConfigured: number, allowCreatingDeposits: number, allowCreatingBorrows: number, displayPriceStyle: number, intention: number): TokenConditionalSwapDto
                    • Parameters

                      • id: BN
                      • maxBuy: BN
                      • maxSell: BN
                      • bought: BN
                      • sold: BN
                      • expiryTimestamp: BN
                      • priceLowerLimit: number
                      • priceUpperLimit: number
                      • pricePremiumRate: number
                      • takerFeeRate: number
                      • makerFeeRate: number
                      • buyTokenIndex: number
                      • sellTokenIndex: number
                      • isConfigured: number
                      • allowCreatingDeposits: number
                      • allowCreatingBorrows: number
                      • displayPriceStyle: number
                      • intention: number

                      Returns TokenConditionalSwapDto

                    Properties

                    allowCreatingBorrows: number
                    allowCreatingDeposits: number
                    bought: BN
                    buyTokenIndex: number
                    displayPriceStyle: number
                    expiryTimestamp: BN
                    id: BN
                    intention: number
                    isConfigured: number
                    makerFeeRate: number
                    maxBuy: BN
                    maxSell: BN
                    priceLowerLimit: number
                    pricePremiumRate: number
                    priceUpperLimit: number
                    sellTokenIndex: number
                    sold: BN
                    takerFeeRate: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/TokenPosition.html b/ts/client/classes/TokenPosition.html index d13de05ee..598816345 100644 --- a/ts/client/classes/TokenPosition.html +++ b/ts/client/classes/TokenPosition.html @@ -1,7 +1,7 @@ -TokenPosition | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • TokenPosition

                    Index

                    Constructors

                    • new TokenPosition(indexedPosition: I80F48, tokenIndex: TokenIndex, inUseCount: number, previousIndex: I80F48, cumulativeDepositInterest: number, cumulativeBorrowInterest: number): TokenPosition

                    Properties

                    cumulativeBorrowInterest: number
                    cumulativeDepositInterest: number
                    inUseCount: number
                    indexedPosition: I80F48
                    previousIndex: I80F48
                    tokenIndex: TokenIndex
                    TokenIndexUnset: number = 65535

                    Methods

                    • balanceUi(bank: Bank): number
                    • borrowsUi(bank: Bank): number
                    • depositsUi(bank: Bank): number
                    • isActive(): boolean
                    • toString(group?: Group, index?: number): string

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +TokenPosition | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • TokenPosition

                    Index

                    Constructors

                    • new TokenPosition(indexedPosition: I80F48, tokenIndex: TokenIndex, inUseCount: number, previousIndex: I80F48, cumulativeDepositInterest: number, cumulativeBorrowInterest: number): TokenPosition

                    Properties

                    cumulativeBorrowInterest: number
                    cumulativeDepositInterest: number
                    inUseCount: number
                    indexedPosition: I80F48
                    previousIndex: I80F48
                    tokenIndex: TokenIndex
                    TokenIndexUnset: number = 65535

                    Methods

                    • balanceUi(bank: Bank): number
                    • borrowsUi(bank: Bank): number
                    • depositsUi(bank: Bank): number
                    • isActive(): boolean
                    • toString(group?: Group, index?: number): string

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/classes/TokenPositionDto.html b/ts/client/classes/TokenPositionDto.html index dfada58c4..e80821bc7 100644 --- a/ts/client/classes/TokenPositionDto.html +++ b/ts/client/classes/TokenPositionDto.html @@ -1 +1 @@ -TokenPositionDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • TokenPositionDto

                    Index

                    Constructors

                    • new TokenPositionDto(indexedPosition: I80F48Dto, tokenIndex: number, inUseCount: number, reserved: number[], previousIndex: I80F48Dto, cumulativeDepositInterest: number, cumulativeBorrowInterest: number): TokenPositionDto

                    Properties

                    cumulativeBorrowInterest: number
                    cumulativeDepositInterest: number
                    inUseCount: number
                    indexedPosition: I80F48Dto
                    previousIndex: I80F48Dto
                    reserved: number[]
                    tokenIndex: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +TokenPositionDto | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • TokenPositionDto

                    Index

                    Constructors

                    • new TokenPositionDto(indexedPosition: I80F48Dto, tokenIndex: number, inUseCount: number, reserved: number[], previousIndex: I80F48Dto, cumulativeDepositInterest: number, cumulativeBorrowInterest: number): TokenPositionDto

                    Properties

                    cumulativeBorrowInterest: number
                    cumulativeDepositInterest: number
                    inUseCount: number
                    indexedPosition: I80F48Dto
                    previousIndex: I80F48Dto
                    reserved: number[]
                    tokenIndex: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/enums/OracleProvider.html b/ts/client/enums/OracleProvider.html index ac278ece1..375679de3 100644 --- a/ts/client/enums/OracleProvider.html +++ b/ts/client/enums/OracleProvider.html @@ -1 +1 @@ -OracleProvider | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +OracleProvider | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/enums/SwapMode.html b/ts/client/enums/SwapMode.html index 8760ab776..aad962d42 100644 --- a/ts/client/enums/SwapMode.html +++ b/ts/client/enums/SwapMode.html @@ -1 +1 @@ -SwapMode | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +SwapMode | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/enums/TransactionErrors.html b/ts/client/enums/TransactionErrors.html index 2d4f80ab6..0484e9c0b 100644 --- a/ts/client/enums/TransactionErrors.html +++ b/ts/client/enums/TransactionErrors.html @@ -1 +1 @@ -TransactionErrors | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +TransactionErrors | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/index.html b/ts/client/index.html index d06d904f3..1cc0a21c2 100644 --- a/ts/client/index.html +++ b/ts/client/index.html @@ -1,7 +1,7 @@ -@blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    @blockworks-foundation/mango-v4

                    Index

                    Namespaces

                    Enumerations

                    Classes

                    Interfaces

                    Type aliases

                    Variables

                    Functions

                    Type aliases

                    AccountInfoMap: Map<string, AccountInfo<Buffer> | null>
                    AmmLabel: "Aldrin" | "Crema" | "Cropper" | "Cykura" | "DeltaFi" | "GooseFX" | "Invariant" | "Lifinity" | "Lifinity V2" | "Marinade" | "Mercurial" | "Meteora" | "Raydium" | "Raydium CLMM" | "Saber" | "Serum" | "Orca" | "Step" | "Penguin" | "Saros" | "Stepn" | "Orca (Whirlpools)" | "Sencha" | "Saber (Decimals)" | "Dradex" | "Balansol" | "Openbook" | "Unknown"
                    BookSideType: { bids: Record<string, never> } | { asks: Record<string, never> }
                    FlashLoanType: { unknown: Record<string, never> } | { swap: Record<string, never> }
                    MangoV4: { accounts: [{ name: "bank"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 16] } }, { name: "mint"; type: "publicKey" }, { name: "vault"; type: "publicKey" }, { name: "oracle"; type: "publicKey" }, { name: "oracleConfig"; type: { defined: "OracleConfig" } }, { name: "stablePriceModel"; type: { defined: "StablePriceModel" } }, { docs: ["the index used to scale the value of an IndexedPosition", "TODO: should always be >= 0, add checks?"]; name: "depositIndex"; type: { defined: "I80F48" } }, { name: "borrowIndex"; type: { defined: "I80F48" } }, { docs: ["deposits/borrows for this bank", "", "Note that these may become negative. It's perfectly fine for users to borrow one one bank", "(increasing indexed_borrows there) and paying back on another (possibly decreasing indexed_borrows", "below zero).", "", "The vault amount is not deducable from these values.", "", "These become meaningful when summed over all banks (like in update_index_and_rate)."]; name: "indexedDeposits"; type: { defined: "I80F48" } }, { name: "indexedBorrows"; type: { defined: "I80F48" } }, { name: "indexLastUpdated"; type: "u64" }, { name: "bankRateLastUpdated"; type: "u64" }, { name: "avgUtilization"; type: { defined: "I80F48" } }, { name: "adjustmentFactor"; type: { defined: "I80F48" } }, { docs: ["The unscaled borrow interest curve is defined as continuous piecewise linear with the points:", "", "- 0% util: zero_util_rate", "- util0% util: rate0", "- util1% util: rate1", "- 100% util: max_rate", "", "The final rate is this unscaled curve multiplied by interest_curve_scaling."]; name: "util0"; type: { defined: "I80F48" } }, { name: "rate0"; type: { defined: "I80F48" } }, { name: "util1"; type: { defined: "I80F48" } }, { name: "rate1"; type: { defined: "I80F48" } }, { docs: ["the 100% utilization rate", "", "This isn't the max_rate, since this still gets scaled by interest_curve_scaling,", "which is >=1."]; name: "maxRate"; type: { defined: "I80F48" } }, { docs: ["Fees collected over the lifetime of the bank", "", "See fees_withdrawn for how much of the fees was withdrawn.", "See collected_liquidation_fees for the (included) subtotal for liquidation related fees."]; name: "collectedFeesNative"; type: { defined: "I80F48" } }, { name: "loanOriginationFeeRate"; type: { defined: "I80F48" } }, { name: "loanFeeRate"; type: { defined: "I80F48" } }, { name: "maintAssetWeight"; type: { defined: "I80F48" } }, { name: "initAssetWeight"; type: { defined: "I80F48" } }, { name: "maintLiabWeight"; type: { defined: "I80F48" } }, { name: "initLiabWeight"; type: { defined: "I80F48" } }, { docs: ["Liquidation fee that goes to the liqor.", "", "Liquidation always involves two tokens, and the sum of the two configured fees is used.", "", "A fraction of the price, like 0.05 for a 5% fee during liquidation.", "", "See also platform_liquidation_fee."]; name: "liquidationFee"; type: { defined: "I80F48" } }, { name: "dust"; type: { defined: "I80F48" } }, { name: "flashLoanTokenAccountInitial"; type: "u64" }, { name: "flashLoanApprovedAmount"; type: "u64" }, { name: "tokenIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "mintDecimals"; type: "u8" }, { name: "bankNum"; type: "u32" }, { docs: ["The maximum utilization allowed when borrowing is 1-this value", "WARNING: Outdated name, kept for IDL compatibility"]; name: "minVaultToDepositsRatio"; type: "f64" }, { docs: ["Size in seconds of a net borrows window"]; name: "netBorrowLimitWindowSizeTs"; type: "u64" }, { docs: ["Timestamp at which the last net borrows window started"]; name: "lastNetBorrowsWindowStartTs"; type: "u64" }, { docs: ["Net borrow limit per window in quote native; set to -1 to disable."]; name: "netBorrowLimitPerWindowQuote"; type: "i64" }, { docs: ["Sum of all deposits and borrows in the last window, in native units."]; name: "netBorrowsInWindow"; type: "i64" }, { docs: ["Soft borrow limit in native quote", "", "Once the borrows on the bank exceed this quote value, init_liab_weight is scaled up.", "Set to f64::MAX to disable.", "", "See scaled_init_liab_weight()."]; name: "borrowWeightScaleStartQuote"; type: "f64" }, { docs: ["Limit for collateral of deposits in native quote", "", "Once the deposits in the bank exceed this quote value, init_asset_weight is scaled", "down to keep the total collateral value constant.", "Set to f64::MAX to disable.", "", "See scaled_init_asset_weight()."]; name: "depositWeightScaleStartQuote"; type: "f64" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { docs: ["If set to 1, deposits cannot be liquidated when an account is liquidatable.", "That means bankrupt accounts may still have assets of this type deposited."]; name: "disableAssetLiquidation"; type: "u8" }, { name: "padding"; type: { array: ["u8", 5] } }, { name: "feesWithdrawn"; type: "u64" }, { docs: ["Fees for the token conditional swap feature"]; name: "tokenConditionalSwapTakerFeeRate"; type: "f32" }, { name: "tokenConditionalSwapMakerFeeRate"; type: "f32" }, { name: "flashLoanSwapFeeRate"; type: "f32" }, { docs: ["Target utilization: If actual utilization is higher, scale up interest.", "If it's lower, scale down interest (if possible)"]; name: "interestTargetUtilization"; type: "f32" }, { docs: ["Current interest curve scaling, always >= 1.0", "", "Except when first migrating to having this field, then 0.0"]; name: "interestCurveScaling"; type: "f64" }, { docs: ["Largest amount of tokens that might be added the the bank based on", "serum open order execution."]; name: "potentialSerumTokens"; type: "u64" }, { docs: ["Start timestamp in seconds at which maint weights should start to change away", "from maint_asset_weight, maint_liab_weight towards _asset_target and _liab_target.", "If _start and _end and _duration_inv are 0, no shift is configured."]; name: "maintWeightShiftStart"; type: "u64" }, { docs: ["End timestamp in seconds until which the maint weights should reach the configured targets."]; name: "maintWeightShiftEnd"; type: "u64" }, { docs: ["Cache of the inverse of maint_weight_shift_end - maint_weight_shift_start,", "or zero if no shift is configured"]; name: "maintWeightShiftDurationInv"; type: { defined: "I80F48" } }, { docs: ["Maint asset weight to reach at _shift_end."]; name: "maintWeightShiftAssetTarget"; type: { defined: "I80F48" } }, { name: "maintWeightShiftLiabTarget"; type: { defined: "I80F48" } }, { docs: ["Oracle that may be used if the main oracle is stale or not confident enough.", "If this is Pubkey::default(), no fallback is available."]; name: "fallbackOracle"; type: "publicKey" }, { docs: ["zero means none, in token native"]; name: "depositLimit"; type: "u64" }, { docs: ["The unscaled borrow interest curve point for zero utilization.", "", "See util0, rate0, util1, rate1, max_rate"]; name: "zeroUtilRate"; type: { defined: "I80F48" } }, { docs: ["Additional to liquidation_fee, but goes to the group owner instead of the liqor"]; name: "platformLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Platform fees that were collected during liquidation (in native tokens)", "", "See also collected_fees_native and fees_withdrawn."]; name: "collectedLiquidationFees"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 1920] } }]; kind: "struct" } }, { name: "group"; type: { fields: [{ name: "creator"; type: "publicKey" }, { name: "groupNum"; type: "u32" }, { name: "admin"; type: "publicKey" }, { name: "fastListingAdmin"; type: "publicKey" }, { name: "mngoTokenIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { name: "insuranceVault"; type: "publicKey" }, { name: "insuranceMint"; type: "publicKey" }, { name: "bump"; type: "u8" }, { name: "testing"; type: "u8" }, { name: "version"; type: "u8" }, { name: "buybackFees"; type: "u8" }, { name: "buybackFeesMngoBonusFactor"; type: "f32" }, { name: "addressLookupTables"; type: { array: ["publicKey", 20] } }, { name: "securityAdmin"; type: "publicKey" }, { name: "depositLimitQuote"; type: "u64" }, { name: "ixGate"; type: "u128" }, { name: "buybackFeesSwapMangoAccount"; type: "publicKey" }, { docs: ["Number of seconds after which fees that could be used with the fees buyback feature expire.", "", "The actual expiry is staggered such that the fees users accumulate are always", "available for at least this interval - but may be available for up to twice this time.", "", "When set to 0, there's no expiry of buyback fees."]; name: "buybackFeesExpiryInterval"; type: "u64" }, { docs: ["Fast-listings are limited per week, this is the start of the current fast-listing interval", "in seconds since epoch"]; name: "fastListingIntervalStart"; type: "u64" }, { docs: ["Number of fast listings that happened this interval"]; name: "fastListingsInInterval"; type: "u16" }, { docs: ["Number of fast listings that are allowed per interval"]; name: "allowedFastListingsPerInterval"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 1812] } }]; kind: "struct" } }, { name: "mangoAccount"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "owner"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 32] } }, { name: "delegate"; type: "publicKey" }, { name: "accountNum"; type: "u32" }, { docs: ["Tracks that this account should be liquidated until init_health >= 0.", "", "Normally accounts can not be liquidated while maint_health >= 0. But when an account", "reaches maint_health < 0, liquidators will call a liquidation instruction and thereby", "set this flag. Now the account may be liquidated until init_health >= 0.", "", "Many actions should be disabled while the account is being liquidated, even if", "its maint health has recovered to positive. Creating new open orders would, for example,", "confuse liquidators."]; name: "beingLiquidated"; type: "u8" }, { docs: ["The account is currently inside a health region marked by HealthRegionBegin...HealthRegionEnd.", "", "Must never be set after a transaction ends."]; name: "inHealthRegion"; type: "u8" }, { name: "bump"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { name: "netDeposits"; type: "i64" }, { name: "perpSpotTransfers"; type: "i64" }, { docs: ["Init health as calculated during HealthReginBegin, rounded up."]; name: "healthRegionBeginInitHealth"; type: "i64" }, { name: "frozenUntil"; type: "u64" }, { docs: ["Fees usable with the \"fees buyback\" feature.", "This tracks the ones that accrued in the current expiry interval."]; name: "buybackFeesAccruedCurrent"; type: "u64" }, { docs: ["Fees buyback amount from the previous expiry interval."]; name: "buybackFeesAccruedPrevious"; type: "u64" }, { docs: ["End timestamp of the current expiry interval of the buyback fees amount."]; name: "buybackFeesExpiryTimestamp"; type: "u64" }, { docs: ["Next id to use when adding a token condition swap"]; name: "nextTokenConditionalSwapId"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 200] } }, { name: "headerVersion"; type: "u8" }, { name: "padding3"; type: { array: ["u8", 7] } }, { name: "padding4"; type: "u32" }, { name: "tokens"; type: { vec: { defined: "TokenPosition" } } }, { name: "padding5"; type: "u32" }, { name: "serum3"; type: { vec: { defined: "Serum3Orders" } } }, { name: "padding6"; type: "u32" }, { name: "perps"; type: { vec: { defined: "PerpPosition" } } }, { name: "padding7"; type: "u32" }, { name: "perpOpenOrders"; type: { vec: { defined: "PerpOpenOrder" } } }, { name: "padding8"; type: "u32" }, { name: "tokenConditionalSwaps"; type: { vec: { defined: "TokenConditionalSwap" } } }, { name: "reservedDynamic"; type: { array: ["u8", 64] } }]; kind: "struct" } }, { name: "mintInfo"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "tokenIndex"; type: "u16" }, { name: "groupInsuranceFund"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 5] } }, { name: "mint"; type: "publicKey" }, { name: "banks"; type: { array: ["publicKey", 6] } }, { name: "vaults"; type: { array: ["publicKey", 6] } }, { name: "oracle"; type: "publicKey" }, { name: "registrationTime"; type: "u64" }, { name: "fallbackOracle"; type: "publicKey" }, { name: "reserved"; type: { array: ["u8", 2528] } }]; kind: "struct" } }, { name: "openbookV2Market"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 2] } }, { name: "name"; type: { array: ["u8", 16] } }, { name: "openbookV2Program"; type: "publicKey" }, { name: "openbookV2MarketExternal"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "padding2"; type: { array: ["u8", 5] } }, { name: "registrationTime"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 512] } }]; kind: "struct" } }, { name: "openbookV2MarketIndexReservation"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 38] } }]; kind: "struct" } }, { name: "stubOracle"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "mint"; type: "publicKey" }, { name: "price"; type: { defined: "I80F48" } }, { name: "lastUpdateTs"; type: "i64" }, { name: "lastUpdateSlot"; type: "u64" }, { name: "deviation"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 104] } }]; kind: "struct" } }, { name: "bookSide"; type: { fields: [{ name: "roots"; type: { array: [{ defined: "OrderTreeRoot" }, 2] } }, { name: "reservedRoots"; type: { array: [{ defined: "OrderTreeRoot" }, 4] } }, { name: "reserved"; type: { array: ["u8", 256] } }, { name: "nodes"; type: { defined: "OrderTreeNodes" } }]; kind: "struct" } }, { name: "eventQueue"; type: { fields: [{ name: "header"; type: { defined: "EventQueueHeader" } }, { name: "buf"; type: { array: [{ defined: "AnyEvent" }, 488] } }, { name: "reserved"; type: { array: ["u8", 64] } }]; kind: "struct" } }, { name: "perpMarket"; type: { fields: [{ name: "group"; type: "publicKey" }, { docs: ["Token index that settlements happen in.", "", "Currently required to be 0, USDC. In the future settlement", "may be allowed to happen in other tokens."]; name: "settleTokenIndex"; type: "u16" }, { docs: ["Index of this perp market. Other data, like the MangoAccount's PerpPosition", "reference this market via this index. Unique for this group's perp markets."]; name: "perpMarketIndex"; type: "u16" }, { docs: ["Field used to contain the trusted_market flag and is now unused."]; name: "blocked1"; type: "u8" }, { docs: ["Is this market covered by the group insurance fund?"]; name: "groupInsuranceFund"; type: "u8" }, { docs: ["PDA bump"]; name: "bump"; type: "u8" }, { docs: ["Number of decimals used for the base token.", "", "Used to convert the oracle's price into a native/native price."]; name: "baseDecimals"; type: "u8" }, { docs: ["Name. Trailing zero bytes are ignored."]; name: "name"; type: { array: ["u8", 16] } }, { docs: ["Address of the BookSide account for bids"]; name: "bids"; type: "publicKey" }, { docs: ["Address of the BookSide account for asks"]; name: "asks"; type: "publicKey" }, { docs: ["Address of the EventQueue account"]; name: "eventQueue"; type: "publicKey" }, { docs: ["Oracle account address"]; name: "oracle"; type: "publicKey" }, { docs: ["Oracle configuration"]; name: "oracleConfig"; type: { defined: "OracleConfig" } }, { docs: ["Maintains a stable price based on the oracle price that is less volatile."]; name: "stablePriceModel"; type: { defined: "StablePriceModel" } }, { docs: ["Number of quote native in a quote lot. Must be a power of 10.", "", "Primarily useful for increasing the tick size on the market: A lot price", "of 1 becomes a native price of quote_lot_size/base_lot_size becomes a", "ui price of quote_lot_size*base_decimals/base_lot_size/quote_decimals."]; name: "quoteLotSize"; type: "i64" }, { docs: ["Number of base native in a base lot. Must be a power of 10.", "", "Example: If base decimals for the underlying asset is 6, base lot size", "is 100 and and base position lots is 10_000 then base position native is", "1_000_000 and base position ui is 1."]; name: "baseLotSize"; type: "i64" }, { docs: ["These weights apply to the base position. The quote position has", "no explicit weight (but may be covered by the overall pnl asset weight)."]; name: "maintBaseAssetWeight"; type: { defined: "I80F48" } }, { name: "initBaseAssetWeight"; type: { defined: "I80F48" } }, { name: "maintBaseLiabWeight"; type: { defined: "I80F48" } }, { name: "initBaseLiabWeight"; type: { defined: "I80F48" } }, { docs: ["Number of base lots currently active in the market. Always >= 0.", "", "Since this counts positive base lots and negative base lots, the more relevant", "number of open base lot pairs is half this value."]; name: "openInterest"; type: "i64" }, { docs: ["Total number of orders seen"]; name: "seqNum"; type: "u64" }, { docs: ["Timestamp in seconds that the market was registered at."]; name: "registrationTime"; type: "u64" }, { docs: ["Minimal funding rate per day, must be <= 0."]; name: "minFunding"; type: { defined: "I80F48" } }, { docs: ["Maximal funding rate per day, must be >= 0."]; name: "maxFunding"; type: { defined: "I80F48" } }, { docs: ["For funding, get the impact price this many base lots deep into the book."]; name: "impactQuantity"; type: "i64" }, { docs: ["Current long funding value. Increasing it means that every long base lot", "needs to pay that amount of quote native in funding.", "", "PerpPosition uses and tracks it settle funding. Updated by the perp", "keeper instruction."]; name: "longFunding"; type: { defined: "I80F48" } }, { docs: ["See long_funding."]; name: "shortFunding"; type: { defined: "I80F48" } }, { docs: ["timestamp that funding was last updated in"]; name: "fundingLastUpdated"; type: "u64" }, { docs: ["Fees", "Fee for base position liquidation"]; name: "baseLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Fee when matching maker orders. May be negative."]; name: "makerFee"; type: { defined: "I80F48" } }, { docs: ["Fee for taker orders, may not be negative."]; name: "takerFee"; type: { defined: "I80F48" } }, { docs: ["Fees accrued in native quote currency", "these are increased when new fees are paid and decreased when perp_settle_fees is called"]; name: "feesAccrued"; type: { defined: "I80F48" } }, { docs: ["Fees settled in native quote currency", "these are increased when perp_settle_fees is called, and never decreased"]; name: "feesSettled"; type: { defined: "I80F48" } }, { docs: ["Fee (in quote native) to charge for ioc orders"]; name: "feePenalty"; type: "f32" }, { docs: ["In native units of settlement token, given to each settle call above the", "settle_fee_amount_threshold if settling at least 1% of perp base pos value."]; name: "settleFeeFlat"; type: "f32" }, { docs: ["Pnl settlement amount needed to be eligible for the flat fee."]; name: "settleFeeAmountThreshold"; type: "f32" }, { docs: ["Fraction of pnl to pay out as fee if +pnl account has low health.", "(limited to 2x settle_fee_flat)"]; name: "settleFeeFractionLowHealth"; type: "f32" }, { docs: ["Controls the strictness of the settle limit.", "Set to a negative value to disable the limit.", "", "This factor applies to the settle limit in two ways", "- for the unrealized pnl settle limit, the factor is multiplied with the stable perp base value", "(i.e. limit_factor * base_native * stable_price)", "- when increasing the realized pnl settle limit (stored per PerpPosition), the factor is", "multiplied with the stable value of the perp pnl being realized", "(i.e. limit_factor * reduced_native * stable_price)", "", "See also PerpPosition::settle_pnl_limit_realized_trade"]; name: "settlePnlLimitFactor"; type: "f32" }, { name: "padding3"; type: { array: ["u8", 4] } }, { docs: ["Window size in seconds for the perp settlement limit"]; name: "settlePnlLimitWindowSizeTs"; type: "u64" }, { docs: ["If true, users may no longer increase their market exposure. Only actions", "that reduce their position are still allowed."]; name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding4"; type: { array: ["u8", 6] } }, { docs: ["Weights for full perp market health, if positive"]; name: "maintOverallAssetWeight"; type: { defined: "I80F48" } }, { name: "initOverallAssetWeight"; type: { defined: "I80F48" } }, { name: "positivePnlLiquidationFee"; type: { defined: "I80F48" } }, { name: "feesWithdrawn"; type: "u64" }, { docs: ["Additional to liquidation_fee, but goes to the group owner instead of the liqor"]; name: "platformLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Platform fees that were accrued during liquidation (in native tokens)", "", "These fees are also added to fees_accrued, this is just for bookkeeping the total", "liquidation fees that happened. So never decreases (different to fees_accrued)."]; name: "accruedLiquidationFees"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 1848] } }]; kind: "struct" } }, { name: "serum3Market"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 2] } }, { name: "name"; type: { array: ["u8", 16] } }, { name: "serumProgram"; type: "publicKey" }, { name: "serumMarketExternal"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "padding2"; type: { array: ["u8", 1] } }, { docs: ["Limit orders must be <= oracle * (1+band) and >= oracle / (1+band)", "", "Zero value is the default due to migration and disables the limit,", "same as f32::MAX."]; name: "oraclePriceBand"; type: "f32" }, { name: "registrationTime"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { name: "serum3MarketIndexReservation"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 38] } }]; kind: "struct" } }]; errors: [{ code: 6000; msg: ""; name: "SomeError" }, { code: 6001; msg: ""; name: "NotImplementedError" }, { code: 6002; msg: "checked math error"; name: "MathError" }, { code: 6003; msg: ""; name: "UnexpectedOracle" }, { code: 6004; msg: "oracle type cannot be determined"; name: "UnknownOracleType" }, { code: 6005; msg: ""; name: "InvalidFlashLoanTargetCpiProgram" }, { code: 6006; msg: "health must be positive"; name: "HealthMustBePositive" }, { code: 6007; msg: "health must be positive or not decrease"; name: "HealthMustBePositiveOrIncrease" }, { code: 6008; msg: "health must be negative"; name: "HealthMustBeNegative" }, { code: 6009; msg: "the account is bankrupt"; name: "IsBankrupt" }, { code: 6010; msg: "the account is not bankrupt"; name: "IsNotBankrupt" }, { code: 6011; msg: "no free token position index"; name: "NoFreeTokenPositionIndex" }, { code: 6012; msg: "no free serum3 open orders index"; name: "NoFreeSerum3OpenOrdersIndex" }, { code: 6013; msg: "no free perp position index"; name: "NoFreePerpPositionIndex" }, { code: 6014; msg: "serum3 open orders exist already"; name: "Serum3OpenOrdersExistAlready" }, { code: 6015; msg: "bank vault has insufficent funds"; name: "InsufficentBankVaultFunds" }, { code: 6016; msg: "account is currently being liquidated"; name: "BeingLiquidated" }, { code: 6017; msg: "invalid bank"; name: "InvalidBank" }, { code: 6018; msg: "account profitability is mismatched"; name: "ProfitabilityMismatch" }, { code: 6019; msg: "cannot settle with self"; name: "CannotSettleWithSelf" }, { code: 6020; msg: "perp position does not exist"; name: "PerpPositionDoesNotExist" }, { code: 6021; msg: "max settle amount must be greater than zero"; name: "MaxSettleAmountMustBeGreaterThanZero" }, { code: 6022; msg: "the perp position has open orders or unprocessed fill events"; name: "HasOpenPerpOrders" }, { code: 6023; msg: "an oracle does not reach the confidence threshold"; name: "OracleConfidence" }, { code: 6024; msg: "an oracle is stale"; name: "OracleStale" }, { code: 6025; msg: "settlement amount must always be positive"; name: "SettlementAmountMustBePositive" }, { code: 6026; msg: "bank utilization has reached limit"; name: "BankBorrowLimitReached" }, { code: 6027; msg: "bank net borrows has reached limit - this is an intermittent error - the limit will reset regularly"; name: "BankNetBorrowsLimitReached" }, { code: 6028; msg: "token position does not exist"; name: "TokenPositionDoesNotExist" }, { code: 6029; msg: "token deposits into accounts that are being liquidated must bring their health above the init threshold"; name: "DepositsIntoLiquidatingMustRecover" }, { code: 6030; msg: "token is in reduce only mode"; name: "TokenInReduceOnlyMode" }, { code: 6031; msg: "market is in reduce only mode"; name: "MarketInReduceOnlyMode" }, { code: 6032; msg: "group is halted"; name: "GroupIsHalted" }, { code: 6033; msg: "the perp position has non-zero base lots"; name: "PerpHasBaseLots" }, { code: 6034; msg: "there are open or unsettled serum3 orders"; name: "HasOpenOrUnsettledSerum3Orders" }, { code: 6035; msg: "has liquidatable token position"; name: "HasLiquidatableTokenPosition" }, { code: 6036; msg: "has liquidatable perp base position"; name: "HasLiquidatablePerpBasePosition" }, { code: 6037; msg: "has liquidatable positive perp pnl"; name: "HasLiquidatablePositivePerpPnl" }, { code: 6038; msg: "account is frozen"; name: "AccountIsFrozen" }, { code: 6039; msg: "Init Asset Weight can't be negative"; name: "InitAssetWeightCantBeNegative" }, { code: 6040; msg: "has open perp taker fills"; name: "HasOpenPerpTakerFills" }, { code: 6041; msg: "deposit crosses the current group deposit limit"; name: "DepositLimit" }, { code: 6042; msg: "instruction is disabled"; name: "IxIsDisabled" }, { code: 6043; msg: "no liquidatable perp base position"; name: "NoLiquidatablePerpBasePosition" }, { code: 6044; msg: "perp order id not found on the orderbook"; name: "PerpOrderIdNotFound" }, { code: 6045; msg: "HealthRegions allow only specific instructions between Begin and End"; name: "HealthRegionBadInnerInstruction" }, { code: 6046; msg: "token is in force close"; name: "TokenInForceClose" }, { code: 6047; msg: "incorrect number of health accounts"; name: "InvalidHealthAccountCount" }, { code: 6048; msg: "would self trade"; name: "WouldSelfTrade" }, { code: 6049; msg: "token conditional swap oracle price is not in execution range"; name: "TokenConditionalSwapPriceNotInRange" }, { code: 6050; msg: "token conditional swap is expired"; name: "TokenConditionalSwapExpired" }, { code: 6051; msg: "token conditional swap is not available yet"; name: "TokenConditionalSwapNotStarted" }, { code: 6052; msg: "token conditional swap was already started"; name: "TokenConditionalSwapAlreadyStarted" }, { code: 6053; msg: "token conditional swap it not set"; name: "TokenConditionalSwapNotSet" }, { code: 6054; msg: "token conditional swap trigger did not reach min_buy_token"; name: "TokenConditionalSwapMinBuyTokenNotReached" }, { code: 6055; msg: "token conditional swap cannot pay incentive"; name: "TokenConditionalSwapCantPayIncentive" }, { code: 6056; msg: "token conditional swap taker price is too low"; name: "TokenConditionalSwapTakerPriceTooLow" }, { code: 6057; msg: "token conditional swap index and id don't match"; name: "TokenConditionalSwapIndexIdMismatch" }, { code: 6058; msg: "token conditional swap volume is too small compared to the cost of starting it"; name: "TokenConditionalSwapTooSmallForStartIncentive" }, { code: 6059; msg: "token conditional swap type cannot be started"; name: "TokenConditionalSwapTypeNotStartable" }, { code: 6060; msg: "a bank in the health account list should be writable but is not"; name: "HealthAccountBankNotWritable" }, { code: 6061; msg: "the market does not allow limit orders too far from the current oracle value"; name: "Serum3PriceBandExceeded" }, { code: 6062; msg: "deposit crosses the token's deposit limit"; name: "BankDepositLimit" }, { code: 6063; msg: "delegates can only withdraw to the owner's associated token account"; name: "DelegateWithdrawOnlyToOwnerAta" }, { code: 6064; msg: "delegates can only withdraw if they close the token position"; name: "DelegateWithdrawMustClosePosition" }, { code: 6065; msg: "delegates can only withdraw small amounts"; name: "DelegateWithdrawSmall" }, { code: 6066; msg: "The provided CLMM oracle is not valid"; name: "InvalidCLMMOracle" }, { code: 6067; msg: "invalid usdc/usd feed provided for the CLMM oracle"; name: "InvalidFeedForCLMMOracle" }, { code: 6068; msg: "Pyth USDC/USD or SOL/USD feed not found (required by CLMM oracle)"; name: "MissingFeedForCLMMOracle" }, { code: 6069; msg: "the asset does not allow liquidation"; name: "TokenAssetLiquidationDisabled" }]; events: [{ fields: [{ index: false; name: "initHealth"; type: { defined: "I80F48" } }, { index: false; name: "maintHealth"; type: { defined: "I80F48" } }, { index: false; name: "equity"; type: { defined: "Equity" } }]; name: "MangoAccountData" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "basePosition"; type: "i64" }, { index: false; name: "quotePosition"; type: "i128" }, { index: false; name: "longSettledFunding"; type: "i128" }, { index: false; name: "shortSettledFunding"; type: "i128" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }]; name: "PerpBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "indexedPosition"; type: "i128" }, { index: false; name: "depositIndex"; type: "i128" }, { index: false; name: "borrowIndex"; type: "i128" }]; name: "TokenBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetail" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetailV2" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetailV3" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "signer"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "quantity"; type: "u64" }, { index: false; name: "price"; type: "i128" }]; name: "WithdrawLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "signer"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "quantity"; type: "u64" }, { index: false; name: "price"; type: "i128" }]; name: "DepositLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerOrderId"; type: "u128" }, { index: false; name: "makerFee"; type: "i128" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerOrderId"; type: "u128" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "i128" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }]; name: "FillLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerClientOrderId"; type: "u64" }, { index: false; name: "makerFee"; type: "f32" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "f32" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }]; name: "FillLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerClientOrderId"; type: "u64" }, { index: false; name: "makerFee"; type: "f32" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "f32" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }, { index: false; name: "makerClosedPnl"; type: "f64" }, { index: false; name: "takerClosedPnl"; type: "f64" }]; name: "FillLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "oracleSlot"; type: "u64" }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "feesAccrued"; type: "i128" }, { index: false; name: "feesSettled"; type: "i128" }, { index: false; name: "openInterest"; type: "i64" }, { index: false; name: "instantaneousFundingRate"; type: "i128" }]; name: "PerpUpdateFundingLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "oracleSlot"; type: "u64" }, { index: false; name: "oracleConfidence"; type: "i128" }, { index: false; name: "oracleType"; type: { defined: "OracleType" } }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "feesAccrued"; type: "i128" }, { index: false; name: "feesSettled"; type: "i128" }, { index: false; name: "openInterest"; type: "i64" }, { index: false; name: "instantaneousFundingRate"; type: "i128" }]; name: "PerpUpdateFundingLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "depositIndex"; type: "i128" }, { index: false; name: "borrowIndex"; type: "i128" }, { index: false; name: "avgUtilization"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "collectedFees"; type: "i128" }, { index: false; name: "loanFeeRate"; type: "i128" }, { index: false; name: "totalBorrows"; type: "i128" }, { index: false; name: "totalDeposits"; type: "i128" }, { index: false; name: "borrowRate"; type: "i128" }, { index: false; name: "depositRate"; type: "i128" }]; name: "UpdateIndexLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "rate0"; type: "i128" }, { index: false; name: "rate1"; type: "i128" }, { index: false; name: "maxRate"; type: "i128" }]; name: "UpdateRateLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "rate0"; type: "i128" }, { index: false; name: "util0"; type: "i128" }, { index: false; name: "rate1"; type: "i128" }, { index: false; name: "util1"; type: "i128" }, { index: false; name: "maxRate"; type: "i128" }, { index: false; name: "curveScaling"; type: "f64" }, { index: false; name: "targetUtilization"; type: "f32" }]; name: "UpdateRateLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransfer"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "bankruptcy"; type: "bool" }]; name: "TokenLiqWithTokenLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransferFromLiqee"; type: "i128" }, { index: false; name: "assetTransferToLiqor"; type: "i128" }, { index: false; name: "assetLiquidationFee"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "bankruptcy"; type: "bool" }]; name: "TokenLiqWithTokenLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "baseTotal"; type: "u64" }, { index: false; name: "baseFree"; type: "u64" }, { index: false; name: "quoteTotal"; type: "u64" }, { index: false; name: "quoteFree"; type: "u64" }, { index: false; name: "referrerRebatesAccrued"; type: "u64" }]; name: "Serum3OpenOrdersBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "baseTotal"; type: "u64" }, { index: false; name: "baseFree"; type: "u64" }, { index: false; name: "quoteTotal"; type: "u64" }, { index: false; name: "quoteFree"; type: "u64" }, { index: false; name: "referrerRebatesAccrued"; type: "u64" }]; name: "Serum3OpenOrdersBalanceLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "loanOriginationFee"; type: "i128" }, { index: false; name: "instruction"; type: { defined: "LoanOriginationFeeInstruction" } }]; name: "WithdrawLoanOriginationFeeLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "loanAmount"; type: "i128" }, { index: false; name: "loanOriginationFee"; type: "i128" }, { index: false; name: "instruction"; type: { defined: "LoanOriginationFeeInstruction" } }, { index: false; name: "price"; type: { option: "i128" } }]; name: "WithdrawLoanLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "initialLiabNative"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "insuranceTokenIndex"; type: "u16" }, { index: false; name: "insuranceTransfer"; type: "i128" }, { index: false; name: "socializedLoss"; type: "i128" }, { index: false; name: "startingLiabDepositIndex"; type: "i128" }, { index: false; name: "endingLiabDepositIndex"; type: "i128" }]; name: "TokenLiqBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "cumulativeDepositInterest"; type: "f64" }, { index: false; name: "cumulativeBorrowInterest"; type: "f64" }]; name: "DeactivateTokenPositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "cumulativeLongFunding"; type: "f64" }, { index: false; name: "cumulativeShortFunding"; type: "f64" }, { index: false; name: "makerVolume"; type: "u64" }, { index: false; name: "takerVolume"; type: "u64" }, { index: false; name: "perpSpotTransfers"; type: "i64" }]; name: "DeactivatePerpPositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mint"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "mintDecimals"; type: "u8" }, { index: false; name: "oracle"; type: "publicKey" }, { index: false; name: "mintInfo"; type: "publicKey" }]; name: "TokenMetaDataLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mint"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "mintDecimals"; type: "u8" }, { index: false; name: "oracle"; type: "publicKey" }, { index: false; name: "fallbackOracle"; type: "publicKey" }, { index: false; name: "mintInfo"; type: "publicKey" }]; name: "TokenMetaDataLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarket"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "baseDecimals"; type: "u8" }, { index: false; name: "baseLotSize"; type: "i64" }, { index: false; name: "quoteLotSize"; type: "i64" }, { index: false; name: "oracle"; type: "publicKey" }]; name: "PerpMarketMetaDataLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "serumMarket"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "serumProgram"; type: "publicKey" }, { index: false; name: "serumProgramExternal"; type: "publicKey" }]; name: "Serum3RegisterMarketLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "baseTransfer"; type: "i64" }, { index: false; name: "quoteTransfer"; type: "i128" }, { index: false; name: "pnlTransfer"; type: "i128" }, { index: false; name: "pnlSettleLimitTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpLiqBaseOrPositivePnlLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "baseTransferLiqee"; type: "i64" }, { index: false; name: "quoteTransferLiqee"; type: "i128" }, { index: false; name: "quoteTransferLiqor"; type: "i128" }, { index: false; name: "quotePlatformFee"; type: "i128" }, { index: false; name: "pnlTransfer"; type: "i128" }, { index: false; name: "pnlSettleLimitTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpLiqBaseOrPositivePnlLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "insuranceTransfer"; type: "i128" }, { index: false; name: "socializedLoss"; type: "i128" }, { index: false; name: "startingLongFunding"; type: "i128" }, { index: false; name: "startingShortFunding"; type: "i128" }, { index: false; name: "endingLongFunding"; type: "i128" }, { index: false; name: "endingShortFunding"; type: "i128" }]; name: "PerpLiqBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }]; name: "PerpLiqNegativePnlOrBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccountA"; type: "publicKey" }, { index: false; name: "mangoAccountB"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }, { index: false; name: "settler"; type: "publicKey" }, { index: false; name: "fee"; type: "i128" }]; name: "PerpSettlePnlLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }]; name: "PerpSettleFeesLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "buybackFees"; type: "i128" }, { index: false; name: "buybackMngo"; type: "i128" }, { index: false; name: "mngoBuybackPrice"; type: "i128" }, { index: false; name: "oraclePrice"; type: "i128" }]; name: "AccountBuybackFeesWithMngoLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "seqNum"; type: "u64" }]; name: "FilledPerpOrderLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "totalBaseLotsTaken"; type: "i64" }, { index: false; name: "totalBaseLotsDecremented"; type: "i64" }, { index: false; name: "totalQuoteLotsTaken"; type: "i64" }, { index: false; name: "totalQuoteLotsDecremented"; type: "i64" }, { index: false; name: "takerFeesPaid"; type: "i128" }, { index: false; name: "feePenalty"; type: "i128" }]; name: "PerpTakerTradeLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "accountA"; type: "publicKey" }, { index: false; name: "accountB"; type: "publicKey" }, { index: false; name: "baseTransfer"; type: "i64" }, { index: false; name: "quoteTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpForceClosePositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransfer"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "feeFactor"; type: "i128" }]; name: "TokenForceCloseBorrowsWithTokenLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransferFromLiqee"; type: "i128" }, { index: false; name: "assetTransferToLiqor"; type: "i128" }, { index: false; name: "assetLiquidationFee"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "feeFactor"; type: "i128" }]; name: "TokenForceCloseBorrowsWithTokenLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }]; name: "TokenConditionalSwapCreateLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }]; name: "TokenConditionalSwapCreateLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }, { index: false; name: "tcsType"; type: "u8" }, { index: false; name: "startTimestamp"; type: "u64" }, { index: false; name: "durationSeconds"; type: "u64" }]; name: "TokenConditionalSwapCreateLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }]; name: "TokenConditionalSwapTriggerLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }]; name: "TokenConditionalSwapTriggerLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }, { index: false; name: "tcsType"; type: "u8" }, { index: false; name: "startTimestamp"; type: "u64" }]; name: "TokenConditionalSwapTriggerLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }]; name: "TokenConditionalSwapCancelLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "caller"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "incentiveTokenIndex"; type: "u16" }, { index: false; name: "incentiveAmount"; type: "u64" }]; name: "TokenConditionalSwapStartLog" }]; instructions: [{ accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: true; name: "admin" }]; args: []; name: "adminTokenWithdrawFees" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: true; name: "admin" }]; args: []; name: "adminPerpWithdrawFees" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Group" }, { kind: "account"; path: "creator"; type: "publicKey" }, { kind: "arg"; path: "group_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "creator" }, { isMut: false; isSigner: false; name: "insuranceMint" }, { isMut: true; isSigner: false; name: "insuranceVault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "InsuranceVault" }, { kind: "account"; path: "group"; type: "publicKey" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "groupNum"; type: "u32" }, { name: "testing"; type: "u8" }, { name: "version"; type: "u8" }]; name: "groupCreate" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "adminOpt"; type: { option: "publicKey" } }, { name: "fastListingAdminOpt"; type: { option: "publicKey" } }, { name: "securityAdminOpt"; type: { option: "publicKey" } }, { name: "testingOpt"; type: { option: "u8" } }, { name: "versionOpt"; type: { option: "u8" } }, { name: "depositLimitQuoteOpt"; type: { option: "u64" } }, { name: "buybackFeesOpt"; type: { option: "bool" } }, { name: "buybackFeesBonusFactorOpt"; type: { option: "f32" } }, { name: "buybackFeesSwapMangoAccountOpt"; type: { option: "publicKey" } }, { name: "mngoTokenIndexOpt"; type: { option: "u16" } }, { name: "buybackFeesExpiryIntervalOpt"; type: { option: "u64" } }, { name: "allowedFastListingsPerIntervalOpt"; type: { option: "u16" } }]; name: "groupEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault", "admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "destination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }]; name: "groupWithdrawInsuranceFund" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "ixGate"; type: "u128" }]; name: "ixGateSet" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin", "insurance_vault"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "groupClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "mintInfo"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MintInfo" }, { kind: "account"; path: "group"; type: "publicKey" }, { account: "Mint"; kind: "account"; path: "mint"; type: "publicKey" }] } }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "fallbackOracle" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oracleConfig"; type: { defined: "OracleConfigParams" } }, { name: "interestRateParams"; type: { defined: "InterestRateParams" } }, { name: "loanFeeRate"; type: "f32" }, { name: "loanOriginationFeeRate"; type: "f32" }, { name: "maintAssetWeight"; type: "f32" }, { name: "initAssetWeight"; type: "f32" }, { name: "maintLiabWeight"; type: "f32" }, { name: "initLiabWeight"; type: "f32" }, { name: "liquidationFee"; type: "f32" }, { name: "stablePriceDelayIntervalSeconds"; type: "u32" }, { name: "stablePriceDelayGrowthLimit"; type: "f32" }, { name: "stablePriceGrowthLimit"; type: "f32" }, { name: "minVaultToDepositsRatio"; type: "f64" }, { name: "netBorrowLimitWindowSizeTs"; type: "u64" }, { name: "netBorrowLimitPerWindowQuote"; type: "i64" }, { name: "borrowWeightScaleStartQuote"; type: "f64" }, { name: "depositWeightScaleStartQuote"; type: "f64" }, { name: "reduceOnly"; type: "u8" }, { name: "tokenConditionalSwapTakerFeeRate"; type: "f32" }, { name: "tokenConditionalSwapMakerFeeRate"; type: "f32" }, { name: "flashLoanSwapFeeRate"; type: "f32" }, { name: "interestCurveScaling"; type: "f32" }, { name: "interestTargetUtilization"; type: "f32" }, { name: "groupInsuranceFund"; type: "bool" }, { name: "depositLimit"; type: "u64" }, { name: "zeroUtilRate"; type: "f32" }, { name: "platformLiquidationFee"; type: "f32" }, { name: "disableAssetLiquidation"; type: "bool" }]; name: "tokenRegister" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "mintInfo"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MintInfo" }, { kind: "account"; path: "group"; type: "publicKey" }, { account: "Mint"; kind: "account"; path: "mint"; type: "publicKey" }] } }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "fallbackOracle" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "name"; type: "string" }]; name: "tokenRegisterTrustless" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group"] }, { docs: ["The oracle account is optional and only used when reset_stable_price is set.", ""]; isMut: false; isSigner: false; name: "oracle" }, { docs: ["The fallback oracle account is optional and only used when set_fallback_oracle is true.", ""]; isMut: false; isSigner: false; name: "fallbackOracle" }]; args: [{ name: "oracleOpt"; type: { option: "publicKey" } }, { name: "oracleConfigOpt"; type: { option: { defined: "OracleConfigParams" } } }, { name: "groupInsuranceFundOpt"; type: { option: "bool" } }, { name: "interestRateParamsOpt"; type: { option: { defined: "InterestRateParams" } } }, { name: "loanFeeRateOpt"; type: { option: "f32" } }, { name: "loanOriginationFeeRateOpt"; type: { option: "f32" } }, { name: "maintAssetWeightOpt"; type: { option: "f32" } }, { name: "initAssetWeightOpt"; type: { option: "f32" } }, { name: "maintLiabWeightOpt"; type: { option: "f32" } }, { name: "initLiabWeightOpt"; type: { option: "f32" } }, { name: "liquidationFeeOpt"; type: { option: "f32" } }, { name: "stablePriceDelayIntervalSecondsOpt"; type: { option: "u32" } }, { name: "stablePriceDelayGrowthLimitOpt"; type: { option: "f32" } }, { name: "stablePriceGrowthLimitOpt"; type: { option: "f32" } }, { name: "minVaultToDepositsRatioOpt"; type: { option: "f64" } }, { name: "netBorrowLimitPerWindowQuoteOpt"; type: { option: "i64" } }, { name: "netBorrowLimitWindowSizeTsOpt"; type: { option: "u64" } }, { name: "borrowWeightScaleStartQuoteOpt"; type: { option: "f64" } }, { name: "depositWeightScaleStartQuoteOpt"; type: { option: "f64" } }, { name: "resetStablePrice"; type: "bool" }, { name: "resetNetBorrowLimit"; type: "bool" }, { name: "reduceOnlyOpt"; type: { option: "u8" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "tokenConditionalSwapTakerFeeRateOpt"; type: { option: "f32" } }, { name: "tokenConditionalSwapMakerFeeRateOpt"; type: { option: "f32" } }, { name: "flashLoanSwapFeeRateOpt"; type: { option: "f32" } }, { name: "interestCurveScalingOpt"; type: { option: "f32" } }, { name: "interestTargetUtilizationOpt"; type: { option: "f32" } }, { name: "maintWeightShiftStartOpt"; type: { option: "u64" } }, { name: "maintWeightShiftEndOpt"; type: { option: "u64" } }, { name: "maintWeightShiftAssetTargetOpt"; type: { option: "f32" } }, { name: "maintWeightShiftLiabTargetOpt"; type: { option: "f32" } }, { name: "maintWeightShiftAbort"; type: "bool" }, { name: "setFallbackOracle"; type: "bool" }, { name: "depositLimitOpt"; type: { option: "u64" } }, { name: "zeroUtilRateOpt"; type: { option: "f32" } }, { name: "platformLiquidationFeeOpt"; type: { option: "f32" } }, { name: "disableAssetLiquidationOpt"; type: { option: "bool" } }]; name: "tokenEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: false; isSigner: false; name: "existingBank"; relations: ["group", "mint"] }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "arg"; path: "bank_num"; type: "u32" }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "arg"; path: "bank_num"; type: "u32" }] } }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group", "mint"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "bankNum"; type: "u32" }]; name: "tokenAddBank" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "dustVault" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "tokenDeregister" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "mintInfo"; relations: ["oracle", "group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "instructions" }]; args: []; name: "tokenUpdateIndexAndRate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MangoAccount" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "owner"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "accountNum"; type: "u32" }, { name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "name"; type: "string" }]; name: "accountCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MangoAccount" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "owner"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "accountNum"; type: "u32" }, { name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "tokenConditionalSwapCount"; type: "u8" }, { name: "name"; type: "string" }]; name: "accountCreateV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }]; name: "accountExpand" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "tokenConditionalSwapCount"; type: "u8" }]; name: "accountExpandV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: []; name: "accountSizeMigration" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }]; args: [{ name: "nameOpt"; type: { option: "string" } }, { name: "delegateOpt"; type: { option: "publicKey" } }, { name: "temporaryDelegateOpt"; type: { option: "publicKey" } }, { name: "temporaryDelegateExpiryOpt"; type: { option: "u64" } }]; name: "accountEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "freeze"; type: "bool" }]; name: "accountToggleFreeze" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "forceClose"; type: "bool" }]; name: "accountClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "daoAccount"; relations: ["group"] }, { isMut: true; isSigner: false; name: "mngoBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "mngoOracle" }, { isMut: true; isSigner: false; name: "feesBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "feesOracle" }]; args: [{ name: "maxBuybackUsd"; type: "u64" }]; name: "accountBuybackFeesWithMngo" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: true; name: "oracle" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "price"; type: { defined: "I80F48" } }]; name: "stubOracleCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "stubOracleClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }]; args: [{ name: "price"; type: { defined: "I80F48" } }]; name: "stubOracleSet" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }]; args: [{ name: "price"; type: { defined: "I80F48" } }, { name: "lastUpdateSlot"; type: "u64" }, { name: "deviation"; type: { defined: "I80F48" } }]; name: "stubOracleSetTest" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: true; name: "tokenAuthority" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "reduceOnly"; type: "bool" }]; name: "tokenDeposit" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: true; name: "tokenAuthority" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "reduceOnly"; type: "bool" }]; name: "tokenDepositIntoExisting" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "allowBorrow"; type: "bool" }]; name: "tokenWithdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }]; args: [{ name: "loanAmounts"; type: { vec: "u64" } }]; name: "flashLoanBegin" }, { accounts: [{ isMut: false; isSigner: false; name: "account" }, { isMut: true; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "inputMint" }, { isMut: false; isSigner: false; name: "outputMint" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "associatedTokenProgram" }, { docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }]; args: [{ name: "loanAmount"; type: "u64" }]; docs: ["A version of flash_loan_begin that's specialized for swaps and needs fewer", "bytes in the transaction"]; name: "flashLoanSwapBegin" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "flashLoanEnd" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "numLoans"; type: "u8" }, { name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "flashLoanEndV2" }, { accounts: [{ docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }, { isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }]; args: []; name: "healthRegionBegin" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }]; args: []; name: "healthRegionEnd" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { docs: ["group admin or fast listing admin, checked at #1"]; isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "serumMarket"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3Market" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "serum_market_external"; type: "publicKey" }] } }, { isMut: true; isSigner: false; name: "indexReservation"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3Index" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "market_index"; type: "u16" }] } }, { isMut: false; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "marketIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oraclePriceBand"; type: "f32" }]; docs: ["", "Serum", ""]; name: "serum3RegisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "market"; relations: ["group"] }]; args: [{ name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "oraclePriceBandOpt"; type: { option: "f32" } }]; name: "serum3EditMarket" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "serumMarket"; relations: ["group"] }, { isMut: true; isSigner: false; name: "indexReservation"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "serum3DeregisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "openOrders"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3OO" }, { kind: "account"; path: "account"; type: "publicKey" }, { kind: "account"; path: "serum_market"; type: "publicKey" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: []; name: "serum3CreateOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: true; isSigner: false; name: "solDestination" }]; args: []; name: "serum3CloseOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: { defined: "Serum3SelfTradeBehavior" } }, { name: "orderType"; type: { defined: "Serum3OrderType" } }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "serum3PlaceOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: { defined: "Serum3SelfTradeBehavior" } }, { name: "orderType"; type: { defined: "Serum3OrderType" } }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; docs: ["requires the receiver_bank in the health account list to be writable"]; name: "serum3PlaceOrderV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "orderId"; type: "u128" }]; name: "serum3CancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "clientOrderId"; type: "u64" }]; name: "serum3CancelOrderByClientOrderId" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "limit"; type: "u8" }]; name: "serum3CancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; docs: ["Deprecated instruction that used to settles all free funds from the OpenOrders account", "into the MangoAccount.", "", "Any serum \"referrer rebates\" (ui fees) are considered Mango fees."]; name: "serum3SettleFunds" }, { accounts: [{ accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; name: "v1" }, { accounts: [{ isMut: false; isSigner: false; name: "quoteOracle" }, { isMut: false; isSigner: false; name: "baseOracle" }]; name: "v2" }]; args: [{ name: "feesToDao"; type: "bool" }]; docs: ["Like Serum3SettleFunds, but `fees_to_dao` determines if referrer rebates are considered fees", "or are credited to the MangoAccount."]; name: "serum3SettleFundsV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "limit"; type: "u8" }]; name: "serum3LiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "liqTokenWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: false; isSigner: false; name: "liabMintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "liqTokenBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "tokenLiqWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: "u64" }]; name: "tokenForceCloseBorrowsWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: false; isSigner: false; name: "liabMintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "tokenLiqBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "perpMarket"; pda: { seeds: [{ kind: "const"; type: "string"; value: "PerpMarket" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "perp_market_index"; type: "u16" }] } }, { docs: ["Accounts are initialised by client,", "anchor discriminator is set first when ix exits,"]; isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "perpMarketIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oracleConfig"; type: { defined: "OracleConfigParams" } }, { name: "baseDecimals"; type: "u8" }, { name: "quoteLotSize"; type: "i64" }, { name: "baseLotSize"; type: "i64" }, { name: "maintBaseAssetWeight"; type: "f32" }, { name: "initBaseAssetWeight"; type: "f32" }, { name: "maintBaseLiabWeight"; type: "f32" }, { name: "initBaseLiabWeight"; type: "f32" }, { name: "maintOverallAssetWeight"; type: "f32" }, { name: "initOverallAssetWeight"; type: "f32" }, { name: "baseLiquidationFee"; type: "f32" }, { name: "makerFee"; type: "f32" }, { name: "takerFee"; type: "f32" }, { name: "minFunding"; type: "f32" }, { name: "maxFunding"; type: "f32" }, { name: "impactQuantity"; type: "i64" }, { name: "groupInsuranceFund"; type: "bool" }, { name: "feePenalty"; type: "f32" }, { name: "settleFeeFlat"; type: "f32" }, { name: "settleFeeAmountThreshold"; type: "f32" }, { name: "settleFeeFractionLowHealth"; type: "f32" }, { name: "settleTokenIndex"; type: "u16" }, { name: "settlePnlLimitFactor"; type: "f32" }, { name: "settlePnlLimitWindowSizeTs"; type: "u64" }, { name: "positivePnlLiquidationFee"; type: "f32" }, { name: "platformLiquidationFee"; type: "f32" }]; docs: ["", "Perps", ""]; name: "perpCreateMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group"] }, { docs: ["The oracle account is optional and only used when reset_stable_price is set.", ""]; isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "oracleOpt"; type: { option: "publicKey" } }, { name: "oracleConfigOpt"; type: { option: { defined: "OracleConfigParams" } } }, { name: "baseDecimalsOpt"; type: { option: "u8" } }, { name: "maintBaseAssetWeightOpt"; type: { option: "f32" } }, { name: "initBaseAssetWeightOpt"; type: { option: "f32" } }, { name: "maintBaseLiabWeightOpt"; type: { option: "f32" } }, { name: "initBaseLiabWeightOpt"; type: { option: "f32" } }, { name: "maintOverallAssetWeightOpt"; type: { option: "f32" } }, { name: "initOverallAssetWeightOpt"; type: { option: "f32" } }, { name: "baseLiquidationFeeOpt"; type: { option: "f32" } }, { name: "makerFeeOpt"; type: { option: "f32" } }, { name: "takerFeeOpt"; type: { option: "f32" } }, { name: "minFundingOpt"; type: { option: "f32" } }, { name: "maxFundingOpt"; type: { option: "f32" } }, { name: "impactQuantityOpt"; type: { option: "i64" } }, { name: "groupInsuranceFundOpt"; type: { option: "bool" } }, { name: "feePenaltyOpt"; type: { option: "f32" } }, { name: "settleFeeFlatOpt"; type: { option: "f32" } }, { name: "settleFeeAmountThresholdOpt"; type: { option: "f32" } }, { name: "settleFeeFractionLowHealthOpt"; type: { option: "f32" } }, { name: "stablePriceDelayIntervalSecondsOpt"; type: { option: "u32" } }, { name: "stablePriceDelayGrowthLimitOpt"; type: { option: "f32" } }, { name: "stablePriceGrowthLimitOpt"; type: { option: "f32" } }, { name: "settlePnlLimitFactorOpt"; type: { option: "f32" } }, { name: "settlePnlLimitWindowSizeTsOpt"; type: { option: "u64" } }, { name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "resetStablePrice"; type: "bool" }, { name: "positivePnlLiquidationFeeOpt"; type: { option: "f32" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "platformLiquidationFeeOpt"; type: { option: "f32" } }]; name: "perpEditMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "perpCloseMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "perpMarket"; relations: ["group"] }]; args: []; name: "perpDeactivatePosition" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceLots"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }]; name: "perpPlaceOrder"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceLots"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "selfTradeBehavior"; type: { defined: "SelfTradeBehavior" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }]; name: "perpPlaceOrderV2"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceOffsetLots"; type: "i64" }, { name: "pegLimit"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }, { name: "maxOracleStalenessSlots"; type: "i32" }]; name: "perpPlaceOrderPegged"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceOffsetLots"; type: "i64" }, { name: "pegLimit"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "selfTradeBehavior"; type: { defined: "SelfTradeBehavior" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }, { name: "maxOracleStalenessSlots"; type: "i32" }]; name: "perpPlaceOrderPeggedV2"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "orderId"; type: "u128" }]; name: "perpCancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "clientOrderId"; type: "u64" }]; name: "perpCancelOrderByClientOrderId" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "perpCancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "sideOption"; type: { option: { defined: "Side" } } }, { name: "limit"; type: "u8" }]; name: "perpCancelAllOrdersBySide" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "event_queue"] }, { isMut: true; isSigner: false; name: "eventQueue" }]; args: [{ name: "limit"; type: "u64" }]; name: "perpConsumeEvents" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: false; isSigner: false; name: "oracle" }]; args: []; name: "perpUpdateFunding" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "settler"; relations: ["group"] }, { isMut: false; isSigner: true; name: "settlerOwner" }, { isMut: false; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "accountA"; relations: ["group"] }, { isMut: true; isSigner: false; name: "accountB"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: []; name: "perpSettlePnl" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "accountA"; relations: ["group"] }, { isMut: true; isSigner: false; name: "accountB"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }]; args: []; name: "perpForceClosePosition" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: [{ name: "maxSettleAmount"; type: "u64" }]; name: "perpSettleFees" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: [{ name: "maxBaseTransfer"; type: "i64" }, { name: "maxPnlTransfer"; type: "u64" }]; name: "perpLiqBaseOrPositivePnl" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "perpLiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: "u64" }]; name: "perpLiqNegativePnlOrBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "insuranceBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "insuranceBankVault" }, { isMut: false; isSigner: false; name: "insuranceOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: "u64" }]; name: "perpLiqNegativePnlOrBankruptcyV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "pricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }]; name: "tokenConditionalSwapCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "pricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "intention"; type: { defined: "TokenConditionalSwapIntention" } }]; name: "tokenConditionalSwapCreateV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "maxPricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "intention"; type: { defined: "TokenConditionalSwapIntention" } }, { name: "durationSeconds"; type: "u64" }]; name: "tokenConditionalSwapCreatePremiumAuction" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceStart"; type: "f64" }, { name: "priceEnd"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "startTimestamp"; type: "u64" }, { name: "durationSeconds"; type: "u64" }]; name: "tokenConditionalSwapCreateLinearAuction" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { docs: ["The bank's token_index is checked at #1"]; isMut: true; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }]; name: "tokenConditionalSwapCancel" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }, { name: "maxBuyTokenToLiqee"; type: "u64" }, { name: "maxSellTokenToLiqor"; type: "u64" }]; name: "tokenConditionalSwapTrigger" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }, { name: "maxBuyTokenToLiqee"; type: "u64" }, { name: "maxSellTokenToLiqor"; type: "u64" }, { name: "minBuyToken"; type: "u64" }, { name: "minTakerPrice"; type: "f32" }]; name: "tokenConditionalSwapTriggerV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }]; name: "tokenConditionalSwapStart" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "addressLookupTable" }]; args: [{ name: "index"; type: "u8" }]; name: "altSet" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: true; name: "payer" }, { isMut: true; isSigner: false; name: "addressLookupTable" }]; args: [{ name: "index"; type: "u8" }, { name: "newAddresses"; type: { vec: "publicKey" } }]; name: "altExtend" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "account"; relations: ["group"] }]; args: []; docs: ["Warning, this instruction is for testing purposes only!"]; name: "computeAccountData" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openbookV2Market"; pda: { seeds: [{ kind: "const"; type: "string"; value: "OpenbookV2Market" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "openbook_v2_market_external"; type: "publicKey" }] } }, { isMut: true; isSigner: false; name: "indexReservation"; pda: { seeds: [{ kind: "const"; type: "string"; value: "OpenbookV2Index" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "market_index"; type: "u16" }] } }, { isMut: false; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "marketIndex"; type: "u16" }, { name: "name"; type: "string" }]; docs: ["", "OpenbookV2", ""]; name: "openbookV2RegisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "market"; relations: ["group"] }]; args: [{ name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "forceCloseOpt"; type: { option: "bool" } }]; name: "openbookV2EditMarket" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "openbookV2Market"; relations: ["group"] }, { isMut: true; isSigner: false; name: "indexReservation"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "openbookV2DeregisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openOrders"; pda: { programId: { kind: "account"; path: "openbook_v2_program"; type: "publicKey" }; seeds: [{ kind: "const"; type: "string"; value: "OpenOrders" }, { kind: "account"; path: "openbook_v2_market"; type: "publicKey" }, { kind: "account"; path: "openbook_v2_market_external"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "accountNum"; type: "u32" }]; name: "openbookV2CreateOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: true; isSigner: false; name: "solDestination" }]; args: []; name: "openbookV2CloseOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market" }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: "u8" }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: "u8" }, { name: "orderType"; type: "u8" }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "openbookV2PlaceOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: "u8" }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: "u8" }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "openbookV2PlaceTakerOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "side"; type: "u8" }, { name: "orderId"; type: "u128" }]; name: "openbookV2CancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "quoteOracle" }, { isMut: false; isSigner: false; name: "baseOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "feesToDao"; type: "bool" }]; name: "openbookV2SettleFunds" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "limit"; type: "u8" }]; name: "openbookV2LiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "openbookV2CancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "dummy" }]; args: []; docs: ["", "benchmark", ""]; name: "benchmark" }]; name: "mango_v4"; types: [{ name: "InterestRateParams"; type: { fields: [{ name: "util0"; type: "f32" }, { name: "rate0"; type: "f32" }, { name: "util1"; type: "f32" }, { name: "rate1"; type: "f32" }, { name: "maxRate"; type: "f32" }, { name: "adjustmentFactor"; type: "f32" }]; kind: "struct" } }, { name: "Equity"; type: { fields: [{ name: "tokens"; type: { vec: { defined: "TokenEquity" } } }, { name: "perps"; type: { vec: { defined: "PerpEquity" } } }]; kind: "struct" } }, { name: "TokenEquity"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { name: "value"; type: { defined: "I80F48" } }]; kind: "struct" } }, { name: "PerpEquity"; type: { fields: [{ name: "perpMarketIndex"; type: "u16" }, { name: "value"; type: { defined: "I80F48" } }]; kind: "struct" } }, { name: "FlashLoanTokenDetail"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { name: "changeAmount"; type: "i128" }, { name: "loan"; type: "i128" }, { name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }]; kind: "struct" } }, { name: "FlashLoanTokenDetailV2"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { docs: ["The amount by which the user's token position changed at the end", "", "So if the user repaid the approved_amount in full, it'd be 0.", "", "Does NOT include the loan_origination_fee or deposit_fee, so the true", "change is `change_amount - loan_origination_fee - deposit_fee`."]; name: "changeAmount"; type: "i128" }, { docs: ["The amount that was a loan (<= approved_amount, depends on user's deposits)"]; name: "loan"; type: "i128" }, { docs: ["The fee paid on the loan, not included in `loan` or `change_amount`"]; name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }, { docs: ["Deposit fee paid for positive change_amount.", "", "Not factored into change_amount."]; name: "depositFee"; type: "i128" }, { docs: ["The amount that was transfered out to the user"]; name: "approvedAmount"; type: "u64" }]; kind: "struct" } }, { name: "FlashLoanTokenDetailV3"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { docs: ["The amount by which the user's token position changed at the end", "", "So if the user repaid the approved_amount in full, it'd be 0.", "", "Does NOT include the loan_origination_fee or deposit_fee, so the true", "change is `change_amount - loan_origination_fee - deposit_fee`."]; name: "changeAmount"; type: "i128" }, { docs: ["The amount that was a loan (<= approved_amount, depends on user's deposits)"]; name: "loan"; type: "i128" }, { docs: ["The fee paid on the loan, not included in `loan` or `change_amount`"]; name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }, { docs: ["Swap fee paid on the in token of a swap.", "", "Not factored into change_amount."]; name: "swapFee"; type: "i128" }, { docs: ["The amount that was transfered out to the user"]; name: "approvedAmount"; type: "u64" }]; kind: "struct" } }, { name: "TokenPosition"; type: { fields: [{ docs: ["The deposit_index (if positive) or borrow_index (if negative) scaled position"]; name: "indexedPosition"; type: { defined: "I80F48" } }, { docs: ["index into Group.tokens"]; name: "tokenIndex"; type: "u16" }, { docs: ["incremented when a market requires this position to stay alive"]; name: "inUseCount"; type: "u16" }, { name: "padding"; type: { array: ["u8", 4] } }, { name: "previousIndex"; type: { defined: "I80F48" } }, { name: "cumulativeDepositInterest"; type: "f64" }, { name: "cumulativeBorrowInterest"; type: "f64" }, { name: "reserved"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { name: "Serum3Orders"; type: { fields: [{ name: "openOrders"; type: "publicKey" }, { docs: ["Tracks the amount of borrows that have flowed into the serum open orders account.", "These borrows did not have the loan origination fee applied, and that may happen", "later (in serum3_settle_funds) if we can guarantee that the funds were used.", "In particular a place-on-book, cancel, settle should not cost fees."]; name: "baseBorrowsWithoutFee"; type: "u64" }, { name: "quoteBorrowsWithoutFee"; type: "u64" }, { name: "marketIndex"; type: "u16" }, { docs: ["Store the base/quote token index, so health computations don't need", "to get passed the static SerumMarket to find which tokens a market", "uses and look up the correct oracles."]; name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { docs: ["Track something like the highest open bid / lowest open ask, in native/native units.", "", "Tracking it exactly isn't possible since we don't see fills. So instead track", "the min/max of the _placed_ bids and asks.", "", "The value is reset in serum3_place_order when a new order is placed without an", "existing one on the book.", "", "0 is a special \"unset\" state."]; name: "highestPlacedBidInv"; type: "f64" }, { name: "lowestPlacedAsk"; type: "f64" }, { docs: ["An overestimate of the amount of tokens that might flow out of the open orders account.", "", "The bank still considers these amounts user deposits (see Bank::potential_serum_tokens)", "and that value needs to be updated in conjunction with these numbers.", "", "This estimation is based on the amount of tokens in the open orders account", "(see update_bank_potential_tokens() in serum3_place_order and settle)"]; name: "potentialBaseTokens"; type: "u64" }, { name: "potentialQuoteTokens"; type: "u64" }, { docs: ["Track lowest bid/highest ask, same way as for highest bid/lowest ask.", "", "0 is a special \"unset\" state."]; name: "lowestPlacedBidInv"; type: "f64" }, { name: "highestPlacedAsk"; type: "f64" }, { name: "reserved"; type: { array: ["u8", 16] } }]; kind: "struct" } }, { name: "PerpPosition"; type: { fields: [{ name: "marketIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { docs: ["Index of the current settle pnl limit window"]; name: "settlePnlLimitWindow"; type: "u32" }, { docs: ["Amount of realized trade pnl and unrealized pnl that was already settled this window.", "", "Will be negative when negative pnl was settled.", "", "Note that this will be adjusted for bookkeeping reasons when the realized_trade settle", "limitchanges and is not useable for actually tracking how much pnl was settled", "on balance."]; name: "settlePnlLimitSettledInCurrentWindowNative"; type: "i64" }, { docs: ["Active position size, measured in base lots"]; name: "basePositionLots"; type: "i64" }, { docs: ["Active position in oracle quote native. At the same time this is 1:1 a settle_token native amount.", "", "Example: Say there's a perp market on the BTC/USD price using SOL for settlement. The user buys", "one long contract for $20k, then base = 1, quote = -20k. The price goes to $21k. Now their", "unsettled pnl is (1 * 21k - 20k) __SOL__ = 1000 SOL. This is because the perp contract arbitrarily", "decides that each unit of price difference creates 1 SOL worth of settlement.", "(yes, causing 1 SOL of settlement for each $1 price change implies a lot of extra leverage; likely", "there should be an extra configurable scaling factor before we use this for cases like that)"]; name: "quotePositionNative"; type: { defined: "I80F48" } }, { docs: ["Tracks what the position is to calculate average entry & break even price"]; name: "quoteRunningNative"; type: "i64" }, { docs: ["Already settled long funding"]; name: "longSettledFunding"; type: { defined: "I80F48" } }, { docs: ["Already settled short funding"]; name: "shortSettledFunding"; type: { defined: "I80F48" } }, { docs: ["Base lots in open bids"]; name: "bidsBaseLots"; type: "i64" }, { docs: ["Base lots in open asks"]; name: "asksBaseLots"; type: "i64" }, { docs: ["Amount of base lots on the EventQueue waiting to be processed"]; name: "takerBaseLots"; type: "i64" }, { docs: ["Amount of quote lots on the EventQueue waiting to be processed"]; name: "takerQuoteLots"; type: "i64" }, { docs: ["Cumulative long funding in quote native units.", "If the user paid $1 in funding for a long position, this would be 1e6.", "Beware of the sign!", "", "(Display only)"]; name: "cumulativeLongFunding"; type: "f64" }, { docs: ["Cumulative short funding in quote native units", "If the user paid $1 in funding for a short position, this would be -1e6.", "", "(Display only)"]; name: "cumulativeShortFunding"; type: "f64" }, { docs: ["Cumulative maker volume in quote native units", "", "(Display only)"]; name: "makerVolume"; type: "u64" }, { docs: ["Cumulative taker volume in quote native units", "", "(Display only)"]; name: "takerVolume"; type: "u64" }, { docs: ["Cumulative number of quote native units transfered from the perp position", "to the settle token spot position.", "", "For example, if the user settled $1 of positive pnl into their USDC spot", "position, this would be 1e6.", "", "(Display only)"]; name: "perpSpotTransfers"; type: "i64" }, { docs: ["The native average entry price for the base lots of the current position.", "Reset to 0 when the base position reaches or crosses 0."]; name: "avgEntryPricePerBaseLot"; type: "f64" }, { docs: ["Deprecated field: Amount of pnl that was realized by bringing the base position closer to 0."]; name: "deprecatedRealizedTradePnlNative"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl that can be settled once.", "", "- The value is signed: a negative number means negative pnl can be settled.", "- A settlement in the right direction will decrease this amount.", "", "Typically added for fees, funding and liquidation."]; name: "oneshotSettlePnlAllowance"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl that can be settled in each settle window.", "", "- Unsigned, the settlement can happen in both directions. Value is >= 0.", "- Previously stored a similar value that was signed, so in migration cases", "this value can be negative and should be .abs()ed.", "- If this value exceeds the current stable-upnl, it should be decreased,", "see apply_recurring_settle_pnl_allowance_constraint()", "", "When the base position is reduced, the settle limit contribution from the reduced", "base position is materialized into this value. When the base position increases,", "some of the allowance is taken away.", "", "This also gets increased when a liquidator takes over pnl."]; name: "recurringSettlePnlAllowance"; type: "i64" }, { docs: ["Trade pnl, fees, funding that were added over the current position's lifetime.", "", "Reset when the position changes sign or goes to zero.", "Not decreased by settling.", "", "This is tracked for display purposes: this value plus the difference between entry", "price and current price of the base position is the overall pnl."]; name: "realizedPnlForPositionNative"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 88] } }]; kind: "struct" } }, { name: "PerpOpenOrder"; type: { fields: [{ name: "sideAndTree"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 1] } }, { name: "market"; type: "u16" }, { name: "padding2"; type: { array: ["u8", 4] } }, { name: "clientId"; type: "u64" }, { name: "id"; type: "u128" }, { name: "quantity"; type: "i64" }, { name: "reserved"; type: { array: ["u8", 56] } }]; kind: "struct" } }, { name: "MangoAccountFixed"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "owner"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 32] } }, { name: "delegate"; type: "publicKey" }, { name: "accountNum"; type: "u32" }, { name: "beingLiquidated"; type: "u8" }, { name: "inHealthRegion"; type: "u8" }, { name: "bump"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { name: "netDeposits"; type: "i64" }, { name: "perpSpotTransfers"; type: "i64" }, { name: "healthRegionBeginInitHealth"; type: "i64" }, { name: "frozenUntil"; type: "u64" }, { name: "buybackFeesAccruedCurrent"; type: "u64" }, { name: "buybackFeesAccruedPrevious"; type: "u64" }, { name: "buybackFeesExpiryTimestamp"; type: "u64" }, { name: "nextTokenConditionalSwapId"; type: "u64" }, { name: "temporaryDelegate"; type: "publicKey" }, { name: "temporaryDelegateExpiry"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 160] } }]; kind: "struct" } }, { name: "OracleConfig"; type: { fields: [{ name: "confFilter"; type: { defined: "I80F48" } }, { name: "maxStalenessSlots"; type: "i64" }, { name: "reserved"; type: { array: ["u8", 72] } }]; kind: "struct" } }, { name: "OracleConfigParams"; type: { fields: [{ name: "confFilter"; type: "f32" }, { name: "maxStalenessSlots"; type: { option: "u32" } }]; kind: "struct" } }, { docs: ["InnerNodes and LeafNodes compose the binary tree of orders.", "", "Each InnerNode has exactly two children, which are either InnerNodes themselves,", "or LeafNodes. The children share the top `prefix_len` bits of `key`. The left", "child has a 0 in the next bit, and the right a 1."]; name: "InnerNode"; type: { fields: [{ name: "tag"; type: "u8" }, { name: "padding"; type: { array: ["u8", 3] } }, { docs: ["number of highest `key` bits that all children share", "e.g. if it's 2, the two highest bits of `key` will be the same on all children"]; name: "prefixLen"; type: "u32" }, { docs: ["only the top `prefix_len` bits of `key` are relevant"]; name: "key"; type: "u128" }, { docs: ["indexes into `BookSide::nodes`"]; name: "children"; type: { array: ["u32", 2] } }, { docs: ["The earliest expiry timestamp for the left and right subtrees.", "", "Needed to be able to find and remove expired orders without having to", "iterate through the whole bookside."]; name: "childEarliestExpiry"; type: { array: ["u64", 2] } }, { name: "reserved"; type: { array: ["u8", 72] } }]; kind: "struct" } }, { docs: ["LeafNodes represent an order in the binary tree"]; name: "LeafNode"; type: { fields: [{ docs: ["NodeTag"]; name: "tag"; type: "u8" }, { docs: ["Index into the owning MangoAccount's PerpOpenOrders"]; name: "ownerSlot"; type: "u8" }, { docs: ["PostOrderType, this was added for TradingView move order"]; name: "orderType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { docs: ["Time in seconds after `timestamp` at which the order expires.", "A value of 0 means no expiry."]; name: "timeInForce"; type: "u16" }, { name: "padding2"; type: { array: ["u8", 2] } }, { docs: ["The binary tree key, see new_node_key()"]; name: "key"; type: "u128" }, { docs: ["Address of the owning MangoAccount"]; name: "owner"; type: "publicKey" }, { docs: ["Number of base lots to buy or sell, always >=1"]; name: "quantity"; type: "i64" }, { docs: ["The time the order was placed"]; name: "timestamp"; type: "u64" }, { docs: ["If the effective price of an oracle pegged order exceeds this limit,", "it will be considered invalid and may be removed.", "", "Only applicable in the oracle_pegged OrderTree"]; name: "pegLimit"; type: "i64" }, { docs: ["User defined id for this order, used in FillEvents"]; name: "clientOrderId"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 32] } }]; kind: "struct" } }, { name: "AnyNode"; type: { fields: [{ name: "tag"; type: "u8" }, { name: "data"; type: { array: ["u8", 119] } }]; kind: "struct" } }, { name: "OrderTreeRoot"; type: { fields: [{ name: "maybeNode"; type: "u32" }, { name: "leafCount"; type: "u32" }]; kind: "struct" } }, { docs: ["A binary tree on AnyNode::key()", "", "The key encodes the price in the top 64 bits."]; name: "OrderTreeNodes"; type: { fields: [{ name: "orderTreeType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 3] } }, { name: "bumpIndex"; type: "u32" }, { name: "freeListLen"; type: "u32" }, { name: "freeListHead"; type: "u32" }, { name: "reserved"; type: { array: ["u8", 512] } }, { name: "nodes"; type: { array: [{ defined: "AnyNode" }, 1024] } }]; kind: "struct" } }, { name: "EventQueueHeader"; type: { fields: [{ name: "head"; type: "u32" }, { name: "count"; type: "u32" }, { name: "seqNum"; type: "u64" }]; kind: "struct" } }, { name: "AnyEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 207] } }]; kind: "struct" } }, { name: "FillEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "takerSide"; type: "u8" }, { name: "makerOut"; type: "u8" }, { name: "makerSlot"; type: "u8" }, { name: "padding"; type: { array: ["u8", 4] } }, { name: "timestamp"; type: "u64" }, { name: "seqNum"; type: "u64" }, { name: "maker"; type: "publicKey" }, { name: "padding2"; type: { array: ["u8", 32] } }, { name: "makerTimestamp"; type: "u64" }, { name: "taker"; type: "publicKey" }, { name: "padding3"; type: { array: ["u8", 16] } }, { name: "takerClientOrderId"; type: "u64" }, { name: "makerOrderId"; type: "u128" }, { name: "price"; type: "i64" }, { name: "quantity"; type: "i64" }, { name: "makerClientOrderId"; type: "u64" }, { name: "makerFee"; type: "f32" }, { name: "takerFee"; type: "f32" }, { name: "reserved"; type: { array: ["u8", 8] } }]; kind: "struct" } }, { name: "OutEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "side"; type: "u8" }, { name: "ownerSlot"; type: "u8" }, { name: "padding0"; type: { array: ["u8", 5] } }, { name: "timestamp"; type: "u64" }, { name: "seqNum"; type: "u64" }, { name: "owner"; type: "publicKey" }, { name: "quantity"; type: "i64" }, { name: "orderId"; type: "u128" }, { name: "padding1"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { docs: ["Maintains a \"stable_price\" based on the oracle price.", "", "The stable price follows the oracle price, but its relative rate of", "change is limited (to `stable_growth_limit`) and futher reduced if", "the oracle price is far from the `delay_price`.", "", "Conceptually the `delay_price` is itself a time delayed", "(`24 * delay_interval_seconds`, assume 24h) and relative rate of change limited", "function of the oracle price. It is implemented as averaging the oracle", "price over every `delay_interval_seconds` (assume 1h) and then applying the", "`delay_growth_limit` between intervals."]; name: "StablePriceModel"; type: { fields: [{ docs: ["Current stable price to use in health"]; name: "stablePrice"; type: "f64" }, { name: "lastUpdateTimestamp"; type: "u64" }, { docs: ["Stored delay_price for each delay_interval.", "If we want the delay_price to be 24h delayed, we would store one for each hour.", "This is used in a cyclical way: We use the maximally-delayed value at delay_interval_index", "and once enough time passes to move to the next delay interval, that gets overwritten and", "we use the next one."]; name: "delayPrices"; type: { array: ["f64", 24] } }, { docs: ["The delay price is based on an average over each delay_interval. The contributions", "to the average are summed up here."]; name: "delayAccumulatorPrice"; type: "f64" }, { docs: ["Accumulating the total time for the above average."]; name: "delayAccumulatorTime"; type: "u32" }, { docs: ["Length of a delay_interval"]; name: "delayIntervalSeconds"; type: "u32" }, { docs: ["Maximal relative difference between two delay_price in consecutive intervals."]; name: "delayGrowthLimit"; type: "f32" }, { docs: ["Maximal per-second relative difference of the stable price.", "It gets further reduced if stable and delay price disagree."]; name: "stableGrowthLimit"; type: "f32" }, { docs: ["The delay_interval_index that update() was last called on."]; name: "lastDelayIntervalIndex"; type: "u8" }, { docs: ["If set to 1, the stable price will reset on the next non-zero price it sees."]; name: "resetOnNonzeroPrice"; type: "u8" }, { name: "padding"; type: { array: ["u8", 6] } }, { name: "reserved"; type: { array: ["u8", 48] } }]; kind: "struct" } }, { name: "TokenConditionalSwap"; type: { fields: [{ name: "id"; type: "u64" }, { docs: ["maximum amount of native tokens to buy or sell"]; name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { docs: ["how many native tokens were already bought/sold"]; name: "bought"; type: "u64" }, { name: "sold"; type: "u64" }, { docs: ["timestamp until which the conditional swap is valid"]; name: "expiryTimestamp"; type: "u64" }, { docs: ["The lower or starting price:", "- For FixedPremium or PremiumAuctions, it's the lower end of the price range:", "the tcs can only be triggered if the oracle price exceeds this value.", "- For LinearAuctions it's the starting price that's offered at start_timestamp.", "", "The price is always in \"sell_token per buy_token\" units, which can be computed", "by dividing the buy token price by the sell token price.", "", "For FixedPremium or PremiumAuctions:", "", "The price must exceed this threshold to allow execution.", "", "This threshold is compared to the \"sell_token per buy_token\" oracle price.", "If that price is >= lower_limit and <= upper_limit the tcs may be executable.", "", "Example: Stop loss to get out of a SOL long: The user bought SOL at 20 USDC/SOL", "and wants to stop loss at 18 USDC/SOL. They'd set buy_token=USDC, sell_token=SOL", "so the reference price is in SOL/USDC units. Set price_lower_limit=toNative(1/18)", "and price_upper_limit=toNative(1/10). Also set allow_borrows=false.", "", "Example: Want to buy SOL with USDC if the price falls below 22 USDC/SOL.", "buy_token=SOL, sell_token=USDC, reference price is in USDC/SOL units. Set", "price_upper_limit=toNative(22), price_lower_limit=0."]; name: "priceLowerLimit"; type: "f64" }, { docs: ["Parallel to price_lower_limit, but an upper limit / auction end price."]; name: "priceUpperLimit"; type: "f64" }, { docs: ["The premium to pay over oracle price to incentivize execution."]; name: "pricePremiumRate"; type: "f64" }, { docs: ["The taker receives only premium_price * (1 - taker_fee_rate)"]; name: "takerFeeRate"; type: "f32" }, { docs: ["The maker has to pay premium_price * (1 + maker_fee_rate)"]; name: "makerFeeRate"; type: "f32" }, { docs: ["indexes of tokens for the swap"]; name: "buyTokenIndex"; type: "u16" }, { name: "sellTokenIndex"; type: "u16" }, { docs: ["If this struct is in use. (tcs are stored in a static-length array)"]; name: "isConfigured"; type: "u8" }, { docs: ["may token purchases create deposits? (often users just want to get out of a borrow)"]; name: "allowCreatingDeposits"; type: "u8" }, { docs: ["may token selling create borrows? (often users just want to get out of a long)"]; name: "allowCreatingBorrows"; type: "u8" }, { docs: ["The stored prices are always \"sell token per buy token\", but if the user", "used \"buy token per sell token\" when creating the tcs order, we should continue", "to show them prices in that way.", "", "Stores a TokenConditionalSwapDisplayPriceStyle enum value"]; name: "displayPriceStyle"; type: "u8" }, { docs: ["The intention the user had when placing this order, display-only", "", "Stores a TokenConditionalSwapIntention enum value"]; name: "intention"; type: "u8" }, { docs: ["Stores a TokenConditionalSwapType enum value"]; name: "tcsType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 6] } }, { docs: ["In seconds since epoch. 0 means not-started.", "", "FixedPremium: Time of first trigger call. No other effect.", "PremiumAuction: Time of start or first trigger call. Can continue to trigger once started.", "LinearAuction: Set during creation, auction starts with price_lower_limit at this timestamp."]; name: "startTimestamp"; type: "u64" }, { docs: ["Duration of the auction mechanism", "", "FixedPremium: ignored", "PremiumAuction: time after start that the premium needs to scale to price_premium_rate", "LinearAuction: time after start to go from price_lower_limit to price_upper_limit"]; name: "durationSeconds"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 88] } }]; kind: "struct" } }, { docs: ["Nothing in Rust shall use these types. They only exist so that the Anchor IDL", "knows about them and typescript can deserialize it."]; name: "TokenIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "Serum3MarketIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "PerpMarketIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "I80F48"; type: { fields: [{ name: "val"; type: "i128" }]; kind: "struct" } }, { name: "FlashLoanType"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "Swap" }] } }, { docs: ["Copy paste a bunch of enums so that we could AnchorSerialize & AnchorDeserialize them"]; name: "Serum3SelfTradeBehavior"; type: { kind: "enum"; variants: [{ name: "DecrementTake" }, { name: "CancelProvide" }, { name: "AbortTransaction" }] } }, { name: "Serum3OrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "ImmediateOrCancel" }, { name: "PostOnly" }] } }, { name: "Serum3Side"; type: { kind: "enum"; variants: [{ name: "Bid" }, { name: "Ask" }] } }, { docs: ["There are three types of health:", "- initial health (\"init\"): users can only open new positions if it's >= 0", "- maintenance health (\"maint\"): users get liquidated if it's < 0", "- liquidation end health: once liquidation started (see being_liquidated), it", "only stops once this is >= 0", "", "The ordering is", "init health <= liquidation end health <= maint health", "", "The different health types are realized by using different weights and prices:", "- init health: init weights with scaling, stable-price adjusted prices", "- liq end health: init weights without scaling, oracle prices", "- maint health: maint weights, oracle prices", ""]; name: "HealthType"; type: { kind: "enum"; variants: [{ name: "Init" }, { name: "Maint" }, { name: "LiquidationEnd" }] } }, { name: "LoanOriginationFeeInstruction"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "LiqTokenBankruptcy" }, { name: "LiqTokenWithToken" }, { name: "Serum3LiqForceCancelOrders" }, { name: "Serum3PlaceOrder" }, { name: "Serum3SettleFunds" }, { name: "TokenWithdraw" }, { name: "TokenConditionalSwapTrigger" }] } }, { docs: ["Enum for lookup into ix gate", "note:", "total ix files 56,", "ix files included 48,", "ix files not included 8,", "- Benchmark,", "- ComputeAccountData,", "- GroupCreate", "- GroupEdit", "- IxGateSet,", "- PerpZeroOut,", "- PerpEditMarket,", "- TokenEdit,"]; name: "IxGate"; type: { kind: "enum"; variants: [{ name: "AccountClose" }, { name: "AccountCreate" }, { name: "AccountEdit" }, { name: "AccountExpand" }, { name: "AccountToggleFreeze" }, { name: "AltExtend" }, { name: "AltSet" }, { name: "FlashLoan" }, { name: "GroupClose" }, { name: "GroupCreate" }, { name: "HealthRegion" }, { name: "PerpCancelAllOrders" }, { name: "PerpCancelAllOrdersBySide" }, { name: "PerpCancelOrder" }, { name: "PerpCancelOrderByClientOrderId" }, { name: "PerpCloseMarket" }, { name: "PerpConsumeEvents" }, { name: "PerpCreateMarket" }, { name: "PerpDeactivatePosition" }, { name: "PerpLiqBaseOrPositivePnl" }, { name: "PerpLiqForceCancelOrders" }, { name: "PerpLiqNegativePnlOrBankruptcy" }, { name: "PerpPlaceOrder" }, { name: "PerpSettleFees" }, { name: "PerpSettlePnl" }, { name: "PerpUpdateFunding" }, { name: "Serum3CancelAllOrders" }, { name: "Serum3CancelOrder" }, { name: "Serum3CloseOpenOrders" }, { name: "Serum3CreateOpenOrders" }, { name: "Serum3DeregisterMarket" }, { name: "Serum3EditMarket" }, { name: "Serum3LiqForceCancelOrders" }, { name: "Serum3PlaceOrder" }, { name: "Serum3RegisterMarket" }, { name: "Serum3SettleFunds" }, { name: "StubOracleClose" }, { name: "StubOracleCreate" }, { name: "StubOracleSet" }, { name: "TokenAddBank" }, { name: "TokenDeposit" }, { name: "TokenDeregister" }, { name: "TokenLiqBankruptcy" }, { name: "TokenLiqWithToken" }, { name: "TokenRegister" }, { name: "TokenRegisterTrustless" }, { name: "TokenUpdateIndexAndRate" }, { name: "TokenWithdraw" }, { name: "AccountBuybackFeesWithMngo" }, { name: "TokenForceCloseBorrowsWithToken" }, { name: "PerpForceClosePosition" }, { name: "GroupWithdrawInsuranceFund" }, { name: "TokenConditionalSwapCreate" }, { name: "TokenConditionalSwapTrigger" }, { name: "TokenConditionalSwapCancel" }, { name: "OpenbookV2CancelOrder" }, { name: "OpenbookV2CloseOpenOrders" }, { name: "OpenbookV2CreateOpenOrders" }, { name: "OpenbookV2DeregisterMarket" }, { name: "OpenbookV2EditMarket" }, { name: "OpenbookV2LiqForceCancelOrders" }, { name: "OpenbookV2PlaceOrder" }, { name: "OpenbookV2PlaceTakeOrder" }, { name: "OpenbookV2RegisterMarket" }, { name: "OpenbookV2SettleFunds" }, { name: "AdminTokenWithdrawFees" }, { name: "AdminPerpWithdrawFees" }, { name: "AccountSizeMigration" }, { name: "TokenConditionalSwapStart" }, { name: "TokenConditionalSwapCreatePremiumAuction" }, { name: "TokenConditionalSwapCreateLinearAuction" }, { name: "Serum3PlaceOrderV2" }] } }, { name: "CheckLiquidatable"; type: { kind: "enum"; variants: [{ name: "NotLiquidatable" }, { name: "Liquidatable" }, { name: "BecameNotLiquidatable" }] } }, { name: "OracleType"; type: { kind: "enum"; variants: [{ name: "Pyth" }, { name: "Stub" }, { name: "SwitchboardV1" }, { name: "SwitchboardV2" }, { name: "OrcaCLMM" }] } }, { name: "OrderState"; type: { kind: "enum"; variants: [{ name: "Valid" }, { name: "Invalid" }, { name: "Skipped" }] } }, { name: "BookSideOrderTree"; type: { kind: "enum"; variants: [{ name: "Fixed" }, { name: "OraclePegged" }] } }, { name: "NodeTag"; type: { kind: "enum"; variants: [{ name: "Uninitialized" }, { name: "InnerNode" }, { name: "LeafNode" }, { name: "FreeNode" }, { name: "LastFreeNode" }] } }, { name: "PlaceOrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "ImmediateOrCancel" }, { name: "PostOnly" }, { name: "Market" }, { name: "PostOnlySlide" }] } }, { name: "PostOrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "PostOnly" }, { name: "PostOnlySlide" }] } }, { docs: ["Self trade behavior controls how taker orders interact with resting limit orders of the same account.", "This setting has no influence on placing a resting or oracle pegged limit order that does not match", "immediately, instead it's the responsibility of the user to correctly configure his taker orders."]; name: "SelfTradeBehavior"; type: { kind: "enum"; variants: [{ name: "DecrementTake" }, { name: "CancelProvide" }, { name: "AbortTransaction" }] } }, { name: "Side"; type: { kind: "enum"; variants: [{ name: "Bid" }, { name: "Ask" }] } }, { docs: ["SideAndOrderTree is a storage optimization, so we don't need two bytes for the data"]; name: "SideAndOrderTree"; type: { kind: "enum"; variants: [{ name: "BidFixed" }, { name: "AskFixed" }, { name: "BidOraclePegged" }, { name: "AskOraclePegged" }] } }, { name: "OrderParams"; type: { kind: "enum"; variants: [{ name: "Market" }, { fields: [{ name: "price_lots"; type: "i64" }]; name: "ImmediateOrCancel" }, { fields: [{ name: "price_lots"; type: "i64" }, { name: "order_type"; type: { defined: "PostOrderType" } }]; name: "Fixed" }, { fields: [{ name: "price_offset_lots"; type: "i64" }, { name: "order_type"; type: { defined: "PostOrderType" } }, { name: "peg_limit"; type: "i64" }, { name: "max_oracle_staleness_slots"; type: "i32" }]; name: "OraclePegged" }] } }, { name: "OrderTreeType"; type: { kind: "enum"; variants: [{ name: "Bids" }, { name: "Asks" }] } }, { name: "EventType"; type: { kind: "enum"; variants: [{ name: "Fill" }, { name: "Out" }, { name: "Liquidate" }] } }, { name: "TokenConditionalSwapDisplayPriceStyle"; type: { kind: "enum"; variants: [{ name: "SellTokenPerBuyToken" }, { name: "BuyTokenPerSellToken" }] } }, { name: "TokenConditionalSwapIntention"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "StopLoss" }, { name: "TakeProfit" }] } }, { name: "TokenConditionalSwapType"; type: { kind: "enum"; variants: [{ name: "FixedPremium" }, { name: "PremiumAuction" }, { name: "LinearAuction" }] } }]; version: "0.22.0" }

                    Type declaration

                    • accounts: [{ name: "bank"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 16] } }, { name: "mint"; type: "publicKey" }, { name: "vault"; type: "publicKey" }, { name: "oracle"; type: "publicKey" }, { name: "oracleConfig"; type: { defined: "OracleConfig" } }, { name: "stablePriceModel"; type: { defined: "StablePriceModel" } }, { docs: ["the index used to scale the value of an IndexedPosition", "TODO: should always be >= 0, add checks?"]; name: "depositIndex"; type: { defined: "I80F48" } }, { name: "borrowIndex"; type: { defined: "I80F48" } }, { docs: ["deposits/borrows for this bank", "", "Note that these may become negative. It's perfectly fine for users to borrow one one bank", "(increasing indexed_borrows there) and paying back on another (possibly decreasing indexed_borrows", "below zero).", "", "The vault amount is not deducable from these values.", "", "These become meaningful when summed over all banks (like in update_index_and_rate)."]; name: "indexedDeposits"; type: { defined: "I80F48" } }, { name: "indexedBorrows"; type: { defined: "I80F48" } }, { name: "indexLastUpdated"; type: "u64" }, { name: "bankRateLastUpdated"; type: "u64" }, { name: "avgUtilization"; type: { defined: "I80F48" } }, { name: "adjustmentFactor"; type: { defined: "I80F48" } }, { docs: ["The unscaled borrow interest curve is defined as continuous piecewise linear with the points:", "", "- 0% util: zero_util_rate", "- util0% util: rate0", "- util1% util: rate1", "- 100% util: max_rate", "", "The final rate is this unscaled curve multiplied by interest_curve_scaling."]; name: "util0"; type: { defined: "I80F48" } }, { name: "rate0"; type: { defined: "I80F48" } }, { name: "util1"; type: { defined: "I80F48" } }, { name: "rate1"; type: { defined: "I80F48" } }, { docs: ["the 100% utilization rate", "", "This isn't the max_rate, since this still gets scaled by interest_curve_scaling,", "which is >=1."]; name: "maxRate"; type: { defined: "I80F48" } }, { docs: ["Fees collected over the lifetime of the bank", "", "See fees_withdrawn for how much of the fees was withdrawn.", "See collected_liquidation_fees for the (included) subtotal for liquidation related fees."]; name: "collectedFeesNative"; type: { defined: "I80F48" } }, { name: "loanOriginationFeeRate"; type: { defined: "I80F48" } }, { name: "loanFeeRate"; type: { defined: "I80F48" } }, { name: "maintAssetWeight"; type: { defined: "I80F48" } }, { name: "initAssetWeight"; type: { defined: "I80F48" } }, { name: "maintLiabWeight"; type: { defined: "I80F48" } }, { name: "initLiabWeight"; type: { defined: "I80F48" } }, { docs: ["Liquidation fee that goes to the liqor.", "", "Liquidation always involves two tokens, and the sum of the two configured fees is used.", "", "A fraction of the price, like 0.05 for a 5% fee during liquidation.", "", "See also platform_liquidation_fee."]; name: "liquidationFee"; type: { defined: "I80F48" } }, { name: "dust"; type: { defined: "I80F48" } }, { name: "flashLoanTokenAccountInitial"; type: "u64" }, { name: "flashLoanApprovedAmount"; type: "u64" }, { name: "tokenIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "mintDecimals"; type: "u8" }, { name: "bankNum"; type: "u32" }, { docs: ["The maximum utilization allowed when borrowing is 1-this value", "WARNING: Outdated name, kept for IDL compatibility"]; name: "minVaultToDepositsRatio"; type: "f64" }, { docs: ["Size in seconds of a net borrows window"]; name: "netBorrowLimitWindowSizeTs"; type: "u64" }, { docs: ["Timestamp at which the last net borrows window started"]; name: "lastNetBorrowsWindowStartTs"; type: "u64" }, { docs: ["Net borrow limit per window in quote native; set to -1 to disable."]; name: "netBorrowLimitPerWindowQuote"; type: "i64" }, { docs: ["Sum of all deposits and borrows in the last window, in native units."]; name: "netBorrowsInWindow"; type: "i64" }, { docs: ["Soft borrow limit in native quote", "", "Once the borrows on the bank exceed this quote value, init_liab_weight is scaled up.", "Set to f64::MAX to disable.", "", "See scaled_init_liab_weight()."]; name: "borrowWeightScaleStartQuote"; type: "f64" }, { docs: ["Limit for collateral of deposits in native quote", "", "Once the deposits in the bank exceed this quote value, init_asset_weight is scaled", "down to keep the total collateral value constant.", "Set to f64::MAX to disable.", "", "See scaled_init_asset_weight()."]; name: "depositWeightScaleStartQuote"; type: "f64" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { docs: ["If set to 1, deposits cannot be liquidated when an account is liquidatable.", "That means bankrupt accounts may still have assets of this type deposited."]; name: "disableAssetLiquidation"; type: "u8" }, { name: "padding"; type: { array: ["u8", 5] } }, { name: "feesWithdrawn"; type: "u64" }, { docs: ["Fees for the token conditional swap feature"]; name: "tokenConditionalSwapTakerFeeRate"; type: "f32" }, { name: "tokenConditionalSwapMakerFeeRate"; type: "f32" }, { name: "flashLoanSwapFeeRate"; type: "f32" }, { docs: ["Target utilization: If actual utilization is higher, scale up interest.", "If it's lower, scale down interest (if possible)"]; name: "interestTargetUtilization"; type: "f32" }, { docs: ["Current interest curve scaling, always >= 1.0", "", "Except when first migrating to having this field, then 0.0"]; name: "interestCurveScaling"; type: "f64" }, { docs: ["Largest amount of tokens that might be added the the bank based on", "serum open order execution."]; name: "potentialSerumTokens"; type: "u64" }, { docs: ["Start timestamp in seconds at which maint weights should start to change away", "from maint_asset_weight, maint_liab_weight towards _asset_target and _liab_target.", "If _start and _end and _duration_inv are 0, no shift is configured."]; name: "maintWeightShiftStart"; type: "u64" }, { docs: ["End timestamp in seconds until which the maint weights should reach the configured targets."]; name: "maintWeightShiftEnd"; type: "u64" }, { docs: ["Cache of the inverse of maint_weight_shift_end - maint_weight_shift_start,", "or zero if no shift is configured"]; name: "maintWeightShiftDurationInv"; type: { defined: "I80F48" } }, { docs: ["Maint asset weight to reach at _shift_end."]; name: "maintWeightShiftAssetTarget"; type: { defined: "I80F48" } }, { name: "maintWeightShiftLiabTarget"; type: { defined: "I80F48" } }, { docs: ["Oracle that may be used if the main oracle is stale or not confident enough.", "If this is Pubkey::default(), no fallback is available."]; name: "fallbackOracle"; type: "publicKey" }, { docs: ["zero means none, in token native"]; name: "depositLimit"; type: "u64" }, { docs: ["The unscaled borrow interest curve point for zero utilization.", "", "See util0, rate0, util1, rate1, max_rate"]; name: "zeroUtilRate"; type: { defined: "I80F48" } }, { docs: ["Additional to liquidation_fee, but goes to the group owner instead of the liqor"]; name: "platformLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Platform fees that were collected during liquidation (in native tokens)", "", "See also collected_fees_native and fees_withdrawn."]; name: "collectedLiquidationFees"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 1920] } }]; kind: "struct" } }, { name: "group"; type: { fields: [{ name: "creator"; type: "publicKey" }, { name: "groupNum"; type: "u32" }, { name: "admin"; type: "publicKey" }, { name: "fastListingAdmin"; type: "publicKey" }, { name: "mngoTokenIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { name: "insuranceVault"; type: "publicKey" }, { name: "insuranceMint"; type: "publicKey" }, { name: "bump"; type: "u8" }, { name: "testing"; type: "u8" }, { name: "version"; type: "u8" }, { name: "buybackFees"; type: "u8" }, { name: "buybackFeesMngoBonusFactor"; type: "f32" }, { name: "addressLookupTables"; type: { array: ["publicKey", 20] } }, { name: "securityAdmin"; type: "publicKey" }, { name: "depositLimitQuote"; type: "u64" }, { name: "ixGate"; type: "u128" }, { name: "buybackFeesSwapMangoAccount"; type: "publicKey" }, { docs: ["Number of seconds after which fees that could be used with the fees buyback feature expire.", "", "The actual expiry is staggered such that the fees users accumulate are always", "available for at least this interval - but may be available for up to twice this time.", "", "When set to 0, there's no expiry of buyback fees."]; name: "buybackFeesExpiryInterval"; type: "u64" }, { docs: ["Fast-listings are limited per week, this is the start of the current fast-listing interval", "in seconds since epoch"]; name: "fastListingIntervalStart"; type: "u64" }, { docs: ["Number of fast listings that happened this interval"]; name: "fastListingsInInterval"; type: "u16" }, { docs: ["Number of fast listings that are allowed per interval"]; name: "allowedFastListingsPerInterval"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 1812] } }]; kind: "struct" } }, { name: "mangoAccount"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "owner"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 32] } }, { name: "delegate"; type: "publicKey" }, { name: "accountNum"; type: "u32" }, { docs: ["Tracks that this account should be liquidated until init_health >= 0.", "", "Normally accounts can not be liquidated while maint_health >= 0. But when an account", "reaches maint_health < 0, liquidators will call a liquidation instruction and thereby", "set this flag. Now the account may be liquidated until init_health >= 0.", "", "Many actions should be disabled while the account is being liquidated, even if", "its maint health has recovered to positive. Creating new open orders would, for example,", "confuse liquidators."]; name: "beingLiquidated"; type: "u8" }, { docs: ["The account is currently inside a health region marked by HealthRegionBegin...HealthRegionEnd.", "", "Must never be set after a transaction ends."]; name: "inHealthRegion"; type: "u8" }, { name: "bump"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { name: "netDeposits"; type: "i64" }, { name: "perpSpotTransfers"; type: "i64" }, { docs: ["Init health as calculated during HealthReginBegin, rounded up."]; name: "healthRegionBeginInitHealth"; type: "i64" }, { name: "frozenUntil"; type: "u64" }, { docs: ["Fees usable with the \"fees buyback\" feature.", "This tracks the ones that accrued in the current expiry interval."]; name: "buybackFeesAccruedCurrent"; type: "u64" }, { docs: ["Fees buyback amount from the previous expiry interval."]; name: "buybackFeesAccruedPrevious"; type: "u64" }, { docs: ["End timestamp of the current expiry interval of the buyback fees amount."]; name: "buybackFeesExpiryTimestamp"; type: "u64" }, { docs: ["Next id to use when adding a token condition swap"]; name: "nextTokenConditionalSwapId"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 200] } }, { name: "headerVersion"; type: "u8" }, { name: "padding3"; type: { array: ["u8", 7] } }, { name: "padding4"; type: "u32" }, { name: "tokens"; type: { vec: { defined: "TokenPosition" } } }, { name: "padding5"; type: "u32" }, { name: "serum3"; type: { vec: { defined: "Serum3Orders" } } }, { name: "padding6"; type: "u32" }, { name: "perps"; type: { vec: { defined: "PerpPosition" } } }, { name: "padding7"; type: "u32" }, { name: "perpOpenOrders"; type: { vec: { defined: "PerpOpenOrder" } } }, { name: "padding8"; type: "u32" }, { name: "tokenConditionalSwaps"; type: { vec: { defined: "TokenConditionalSwap" } } }, { name: "reservedDynamic"; type: { array: ["u8", 64] } }]; kind: "struct" } }, { name: "mintInfo"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "tokenIndex"; type: "u16" }, { name: "groupInsuranceFund"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 5] } }, { name: "mint"; type: "publicKey" }, { name: "banks"; type: { array: ["publicKey", 6] } }, { name: "vaults"; type: { array: ["publicKey", 6] } }, { name: "oracle"; type: "publicKey" }, { name: "registrationTime"; type: "u64" }, { name: "fallbackOracle"; type: "publicKey" }, { name: "reserved"; type: { array: ["u8", 2528] } }]; kind: "struct" } }, { name: "openbookV2Market"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 2] } }, { name: "name"; type: { array: ["u8", 16] } }, { name: "openbookV2Program"; type: "publicKey" }, { name: "openbookV2MarketExternal"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "padding2"; type: { array: ["u8", 5] } }, { name: "registrationTime"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 512] } }]; kind: "struct" } }, { name: "openbookV2MarketIndexReservation"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 38] } }]; kind: "struct" } }, { name: "stubOracle"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "mint"; type: "publicKey" }, { name: "price"; type: { defined: "I80F48" } }, { name: "lastUpdateTs"; type: "i64" }, { name: "lastUpdateSlot"; type: "u64" }, { name: "deviation"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 104] } }]; kind: "struct" } }, { name: "bookSide"; type: { fields: [{ name: "roots"; type: { array: [{ defined: "OrderTreeRoot" }, 2] } }, { name: "reservedRoots"; type: { array: [{ defined: "OrderTreeRoot" }, 4] } }, { name: "reserved"; type: { array: ["u8", 256] } }, { name: "nodes"; type: { defined: "OrderTreeNodes" } }]; kind: "struct" } }, { name: "eventQueue"; type: { fields: [{ name: "header"; type: { defined: "EventQueueHeader" } }, { name: "buf"; type: { array: [{ defined: "AnyEvent" }, 488] } }, { name: "reserved"; type: { array: ["u8", 64] } }]; kind: "struct" } }, { name: "perpMarket"; type: { fields: [{ name: "group"; type: "publicKey" }, { docs: ["Token index that settlements happen in.", "", "Currently required to be 0, USDC. In the future settlement", "may be allowed to happen in other tokens."]; name: "settleTokenIndex"; type: "u16" }, { docs: ["Index of this perp market. Other data, like the MangoAccount's PerpPosition", "reference this market via this index. Unique for this group's perp markets."]; name: "perpMarketIndex"; type: "u16" }, { docs: ["Field used to contain the trusted_market flag and is now unused."]; name: "blocked1"; type: "u8" }, { docs: ["Is this market covered by the group insurance fund?"]; name: "groupInsuranceFund"; type: "u8" }, { docs: ["PDA bump"]; name: "bump"; type: "u8" }, { docs: ["Number of decimals used for the base token.", "", "Used to convert the oracle's price into a native/native price."]; name: "baseDecimals"; type: "u8" }, { docs: ["Name. Trailing zero bytes are ignored."]; name: "name"; type: { array: ["u8", 16] } }, { docs: ["Address of the BookSide account for bids"]; name: "bids"; type: "publicKey" }, { docs: ["Address of the BookSide account for asks"]; name: "asks"; type: "publicKey" }, { docs: ["Address of the EventQueue account"]; name: "eventQueue"; type: "publicKey" }, { docs: ["Oracle account address"]; name: "oracle"; type: "publicKey" }, { docs: ["Oracle configuration"]; name: "oracleConfig"; type: { defined: "OracleConfig" } }, { docs: ["Maintains a stable price based on the oracle price that is less volatile."]; name: "stablePriceModel"; type: { defined: "StablePriceModel" } }, { docs: ["Number of quote native in a quote lot. Must be a power of 10.", "", "Primarily useful for increasing the tick size on the market: A lot price", "of 1 becomes a native price of quote_lot_size/base_lot_size becomes a", "ui price of quote_lot_size*base_decimals/base_lot_size/quote_decimals."]; name: "quoteLotSize"; type: "i64" }, { docs: ["Number of base native in a base lot. Must be a power of 10.", "", "Example: If base decimals for the underlying asset is 6, base lot size", "is 100 and and base position lots is 10_000 then base position native is", "1_000_000 and base position ui is 1."]; name: "baseLotSize"; type: "i64" }, { docs: ["These weights apply to the base position. The quote position has", "no explicit weight (but may be covered by the overall pnl asset weight)."]; name: "maintBaseAssetWeight"; type: { defined: "I80F48" } }, { name: "initBaseAssetWeight"; type: { defined: "I80F48" } }, { name: "maintBaseLiabWeight"; type: { defined: "I80F48" } }, { name: "initBaseLiabWeight"; type: { defined: "I80F48" } }, { docs: ["Number of base lots currently active in the market. Always >= 0.", "", "Since this counts positive base lots and negative base lots, the more relevant", "number of open base lot pairs is half this value."]; name: "openInterest"; type: "i64" }, { docs: ["Total number of orders seen"]; name: "seqNum"; type: "u64" }, { docs: ["Timestamp in seconds that the market was registered at."]; name: "registrationTime"; type: "u64" }, { docs: ["Minimal funding rate per day, must be <= 0."]; name: "minFunding"; type: { defined: "I80F48" } }, { docs: ["Maximal funding rate per day, must be >= 0."]; name: "maxFunding"; type: { defined: "I80F48" } }, { docs: ["For funding, get the impact price this many base lots deep into the book."]; name: "impactQuantity"; type: "i64" }, { docs: ["Current long funding value. Increasing it means that every long base lot", "needs to pay that amount of quote native in funding.", "", "PerpPosition uses and tracks it settle funding. Updated by the perp", "keeper instruction."]; name: "longFunding"; type: { defined: "I80F48" } }, { docs: ["See long_funding."]; name: "shortFunding"; type: { defined: "I80F48" } }, { docs: ["timestamp that funding was last updated in"]; name: "fundingLastUpdated"; type: "u64" }, { docs: ["Fees", "Fee for base position liquidation"]; name: "baseLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Fee when matching maker orders. May be negative."]; name: "makerFee"; type: { defined: "I80F48" } }, { docs: ["Fee for taker orders, may not be negative."]; name: "takerFee"; type: { defined: "I80F48" } }, { docs: ["Fees accrued in native quote currency", "these are increased when new fees are paid and decreased when perp_settle_fees is called"]; name: "feesAccrued"; type: { defined: "I80F48" } }, { docs: ["Fees settled in native quote currency", "these are increased when perp_settle_fees is called, and never decreased"]; name: "feesSettled"; type: { defined: "I80F48" } }, { docs: ["Fee (in quote native) to charge for ioc orders"]; name: "feePenalty"; type: "f32" }, { docs: ["In native units of settlement token, given to each settle call above the", "settle_fee_amount_threshold if settling at least 1% of perp base pos value."]; name: "settleFeeFlat"; type: "f32" }, { docs: ["Pnl settlement amount needed to be eligible for the flat fee."]; name: "settleFeeAmountThreshold"; type: "f32" }, { docs: ["Fraction of pnl to pay out as fee if +pnl account has low health.", "(limited to 2x settle_fee_flat)"]; name: "settleFeeFractionLowHealth"; type: "f32" }, { docs: ["Controls the strictness of the settle limit.", "Set to a negative value to disable the limit.", "", "This factor applies to the settle limit in two ways", "- for the unrealized pnl settle limit, the factor is multiplied with the stable perp base value", "(i.e. limit_factor * base_native * stable_price)", "- when increasing the realized pnl settle limit (stored per PerpPosition), the factor is", "multiplied with the stable value of the perp pnl being realized", "(i.e. limit_factor * reduced_native * stable_price)", "", "See also PerpPosition::settle_pnl_limit_realized_trade"]; name: "settlePnlLimitFactor"; type: "f32" }, { name: "padding3"; type: { array: ["u8", 4] } }, { docs: ["Window size in seconds for the perp settlement limit"]; name: "settlePnlLimitWindowSizeTs"; type: "u64" }, { docs: ["If true, users may no longer increase their market exposure. Only actions", "that reduce their position are still allowed."]; name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding4"; type: { array: ["u8", 6] } }, { docs: ["Weights for full perp market health, if positive"]; name: "maintOverallAssetWeight"; type: { defined: "I80F48" } }, { name: "initOverallAssetWeight"; type: { defined: "I80F48" } }, { name: "positivePnlLiquidationFee"; type: { defined: "I80F48" } }, { name: "feesWithdrawn"; type: "u64" }, { docs: ["Additional to liquidation_fee, but goes to the group owner instead of the liqor"]; name: "platformLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Platform fees that were accrued during liquidation (in native tokens)", "", "These fees are also added to fees_accrued, this is just for bookkeeping the total", "liquidation fees that happened. So never decreases (different to fees_accrued)."]; name: "accruedLiquidationFees"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 1848] } }]; kind: "struct" } }, { name: "serum3Market"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 2] } }, { name: "name"; type: { array: ["u8", 16] } }, { name: "serumProgram"; type: "publicKey" }, { name: "serumMarketExternal"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "padding2"; type: { array: ["u8", 1] } }, { docs: ["Limit orders must be <= oracle * (1+band) and >= oracle / (1+band)", "", "Zero value is the default due to migration and disables the limit,", "same as f32::MAX."]; name: "oraclePriceBand"; type: "f32" }, { name: "registrationTime"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { name: "serum3MarketIndexReservation"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 38] } }]; kind: "struct" } }]
                    • errors: [{ code: 6000; msg: ""; name: "SomeError" }, { code: 6001; msg: ""; name: "NotImplementedError" }, { code: 6002; msg: "checked math error"; name: "MathError" }, { code: 6003; msg: ""; name: "UnexpectedOracle" }, { code: 6004; msg: "oracle type cannot be determined"; name: "UnknownOracleType" }, { code: 6005; msg: ""; name: "InvalidFlashLoanTargetCpiProgram" }, { code: 6006; msg: "health must be positive"; name: "HealthMustBePositive" }, { code: 6007; msg: "health must be positive or not decrease"; name: "HealthMustBePositiveOrIncrease" }, { code: 6008; msg: "health must be negative"; name: "HealthMustBeNegative" }, { code: 6009; msg: "the account is bankrupt"; name: "IsBankrupt" }, { code: 6010; msg: "the account is not bankrupt"; name: "IsNotBankrupt" }, { code: 6011; msg: "no free token position index"; name: "NoFreeTokenPositionIndex" }, { code: 6012; msg: "no free serum3 open orders index"; name: "NoFreeSerum3OpenOrdersIndex" }, { code: 6013; msg: "no free perp position index"; name: "NoFreePerpPositionIndex" }, { code: 6014; msg: "serum3 open orders exist already"; name: "Serum3OpenOrdersExistAlready" }, { code: 6015; msg: "bank vault has insufficent funds"; name: "InsufficentBankVaultFunds" }, { code: 6016; msg: "account is currently being liquidated"; name: "BeingLiquidated" }, { code: 6017; msg: "invalid bank"; name: "InvalidBank" }, { code: 6018; msg: "account profitability is mismatched"; name: "ProfitabilityMismatch" }, { code: 6019; msg: "cannot settle with self"; name: "CannotSettleWithSelf" }, { code: 6020; msg: "perp position does not exist"; name: "PerpPositionDoesNotExist" }, { code: 6021; msg: "max settle amount must be greater than zero"; name: "MaxSettleAmountMustBeGreaterThanZero" }, { code: 6022; msg: "the perp position has open orders or unprocessed fill events"; name: "HasOpenPerpOrders" }, { code: 6023; msg: "an oracle does not reach the confidence threshold"; name: "OracleConfidence" }, { code: 6024; msg: "an oracle is stale"; name: "OracleStale" }, { code: 6025; msg: "settlement amount must always be positive"; name: "SettlementAmountMustBePositive" }, { code: 6026; msg: "bank utilization has reached limit"; name: "BankBorrowLimitReached" }, { code: 6027; msg: "bank net borrows has reached limit - this is an intermittent error - the limit will reset regularly"; name: "BankNetBorrowsLimitReached" }, { code: 6028; msg: "token position does not exist"; name: "TokenPositionDoesNotExist" }, { code: 6029; msg: "token deposits into accounts that are being liquidated must bring their health above the init threshold"; name: "DepositsIntoLiquidatingMustRecover" }, { code: 6030; msg: "token is in reduce only mode"; name: "TokenInReduceOnlyMode" }, { code: 6031; msg: "market is in reduce only mode"; name: "MarketInReduceOnlyMode" }, { code: 6032; msg: "group is halted"; name: "GroupIsHalted" }, { code: 6033; msg: "the perp position has non-zero base lots"; name: "PerpHasBaseLots" }, { code: 6034; msg: "there are open or unsettled serum3 orders"; name: "HasOpenOrUnsettledSerum3Orders" }, { code: 6035; msg: "has liquidatable token position"; name: "HasLiquidatableTokenPosition" }, { code: 6036; msg: "has liquidatable perp base position"; name: "HasLiquidatablePerpBasePosition" }, { code: 6037; msg: "has liquidatable positive perp pnl"; name: "HasLiquidatablePositivePerpPnl" }, { code: 6038; msg: "account is frozen"; name: "AccountIsFrozen" }, { code: 6039; msg: "Init Asset Weight can't be negative"; name: "InitAssetWeightCantBeNegative" }, { code: 6040; msg: "has open perp taker fills"; name: "HasOpenPerpTakerFills" }, { code: 6041; msg: "deposit crosses the current group deposit limit"; name: "DepositLimit" }, { code: 6042; msg: "instruction is disabled"; name: "IxIsDisabled" }, { code: 6043; msg: "no liquidatable perp base position"; name: "NoLiquidatablePerpBasePosition" }, { code: 6044; msg: "perp order id not found on the orderbook"; name: "PerpOrderIdNotFound" }, { code: 6045; msg: "HealthRegions allow only specific instructions between Begin and End"; name: "HealthRegionBadInnerInstruction" }, { code: 6046; msg: "token is in force close"; name: "TokenInForceClose" }, { code: 6047; msg: "incorrect number of health accounts"; name: "InvalidHealthAccountCount" }, { code: 6048; msg: "would self trade"; name: "WouldSelfTrade" }, { code: 6049; msg: "token conditional swap oracle price is not in execution range"; name: "TokenConditionalSwapPriceNotInRange" }, { code: 6050; msg: "token conditional swap is expired"; name: "TokenConditionalSwapExpired" }, { code: 6051; msg: "token conditional swap is not available yet"; name: "TokenConditionalSwapNotStarted" }, { code: 6052; msg: "token conditional swap was already started"; name: "TokenConditionalSwapAlreadyStarted" }, { code: 6053; msg: "token conditional swap it not set"; name: "TokenConditionalSwapNotSet" }, { code: 6054; msg: "token conditional swap trigger did not reach min_buy_token"; name: "TokenConditionalSwapMinBuyTokenNotReached" }, { code: 6055; msg: "token conditional swap cannot pay incentive"; name: "TokenConditionalSwapCantPayIncentive" }, { code: 6056; msg: "token conditional swap taker price is too low"; name: "TokenConditionalSwapTakerPriceTooLow" }, { code: 6057; msg: "token conditional swap index and id don't match"; name: "TokenConditionalSwapIndexIdMismatch" }, { code: 6058; msg: "token conditional swap volume is too small compared to the cost of starting it"; name: "TokenConditionalSwapTooSmallForStartIncentive" }, { code: 6059; msg: "token conditional swap type cannot be started"; name: "TokenConditionalSwapTypeNotStartable" }, { code: 6060; msg: "a bank in the health account list should be writable but is not"; name: "HealthAccountBankNotWritable" }, { code: 6061; msg: "the market does not allow limit orders too far from the current oracle value"; name: "Serum3PriceBandExceeded" }, { code: 6062; msg: "deposit crosses the token's deposit limit"; name: "BankDepositLimit" }, { code: 6063; msg: "delegates can only withdraw to the owner's associated token account"; name: "DelegateWithdrawOnlyToOwnerAta" }, { code: 6064; msg: "delegates can only withdraw if they close the token position"; name: "DelegateWithdrawMustClosePosition" }, { code: 6065; msg: "delegates can only withdraw small amounts"; name: "DelegateWithdrawSmall" }, { code: 6066; msg: "The provided CLMM oracle is not valid"; name: "InvalidCLMMOracle" }, { code: 6067; msg: "invalid usdc/usd feed provided for the CLMM oracle"; name: "InvalidFeedForCLMMOracle" }, { code: 6068; msg: "Pyth USDC/USD or SOL/USD feed not found (required by CLMM oracle)"; name: "MissingFeedForCLMMOracle" }, { code: 6069; msg: "the asset does not allow liquidation"; name: "TokenAssetLiquidationDisabled" }]
                    • events: [{ fields: [{ index: false; name: "initHealth"; type: { defined: "I80F48" } }, { index: false; name: "maintHealth"; type: { defined: "I80F48" } }, { index: false; name: "equity"; type: { defined: "Equity" } }]; name: "MangoAccountData" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "basePosition"; type: "i64" }, { index: false; name: "quotePosition"; type: "i128" }, { index: false; name: "longSettledFunding"; type: "i128" }, { index: false; name: "shortSettledFunding"; type: "i128" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }]; name: "PerpBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "indexedPosition"; type: "i128" }, { index: false; name: "depositIndex"; type: "i128" }, { index: false; name: "borrowIndex"; type: "i128" }]; name: "TokenBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetail" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetailV2" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetailV3" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "signer"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "quantity"; type: "u64" }, { index: false; name: "price"; type: "i128" }]; name: "WithdrawLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "signer"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "quantity"; type: "u64" }, { index: false; name: "price"; type: "i128" }]; name: "DepositLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerOrderId"; type: "u128" }, { index: false; name: "makerFee"; type: "i128" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerOrderId"; type: "u128" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "i128" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }]; name: "FillLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerClientOrderId"; type: "u64" }, { index: false; name: "makerFee"; type: "f32" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "f32" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }]; name: "FillLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerClientOrderId"; type: "u64" }, { index: false; name: "makerFee"; type: "f32" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "f32" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }, { index: false; name: "makerClosedPnl"; type: "f64" }, { index: false; name: "takerClosedPnl"; type: "f64" }]; name: "FillLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "oracleSlot"; type: "u64" }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "feesAccrued"; type: "i128" }, { index: false; name: "feesSettled"; type: "i128" }, { index: false; name: "openInterest"; type: "i64" }, { index: false; name: "instantaneousFundingRate"; type: "i128" }]; name: "PerpUpdateFundingLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "oracleSlot"; type: "u64" }, { index: false; name: "oracleConfidence"; type: "i128" }, { index: false; name: "oracleType"; type: { defined: "OracleType" } }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "feesAccrued"; type: "i128" }, { index: false; name: "feesSettled"; type: "i128" }, { index: false; name: "openInterest"; type: "i64" }, { index: false; name: "instantaneousFundingRate"; type: "i128" }]; name: "PerpUpdateFundingLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "depositIndex"; type: "i128" }, { index: false; name: "borrowIndex"; type: "i128" }, { index: false; name: "avgUtilization"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "collectedFees"; type: "i128" }, { index: false; name: "loanFeeRate"; type: "i128" }, { index: false; name: "totalBorrows"; type: "i128" }, { index: false; name: "totalDeposits"; type: "i128" }, { index: false; name: "borrowRate"; type: "i128" }, { index: false; name: "depositRate"; type: "i128" }]; name: "UpdateIndexLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "rate0"; type: "i128" }, { index: false; name: "rate1"; type: "i128" }, { index: false; name: "maxRate"; type: "i128" }]; name: "UpdateRateLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "rate0"; type: "i128" }, { index: false; name: "util0"; type: "i128" }, { index: false; name: "rate1"; type: "i128" }, { index: false; name: "util1"; type: "i128" }, { index: false; name: "maxRate"; type: "i128" }, { index: false; name: "curveScaling"; type: "f64" }, { index: false; name: "targetUtilization"; type: "f32" }]; name: "UpdateRateLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransfer"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "bankruptcy"; type: "bool" }]; name: "TokenLiqWithTokenLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransferFromLiqee"; type: "i128" }, { index: false; name: "assetTransferToLiqor"; type: "i128" }, { index: false; name: "assetLiquidationFee"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "bankruptcy"; type: "bool" }]; name: "TokenLiqWithTokenLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "baseTotal"; type: "u64" }, { index: false; name: "baseFree"; type: "u64" }, { index: false; name: "quoteTotal"; type: "u64" }, { index: false; name: "quoteFree"; type: "u64" }, { index: false; name: "referrerRebatesAccrued"; type: "u64" }]; name: "Serum3OpenOrdersBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "baseTotal"; type: "u64" }, { index: false; name: "baseFree"; type: "u64" }, { index: false; name: "quoteTotal"; type: "u64" }, { index: false; name: "quoteFree"; type: "u64" }, { index: false; name: "referrerRebatesAccrued"; type: "u64" }]; name: "Serum3OpenOrdersBalanceLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "loanOriginationFee"; type: "i128" }, { index: false; name: "instruction"; type: { defined: "LoanOriginationFeeInstruction" } }]; name: "WithdrawLoanOriginationFeeLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "loanAmount"; type: "i128" }, { index: false; name: "loanOriginationFee"; type: "i128" }, { index: false; name: "instruction"; type: { defined: "LoanOriginationFeeInstruction" } }, { index: false; name: "price"; type: { option: "i128" } }]; name: "WithdrawLoanLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "initialLiabNative"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "insuranceTokenIndex"; type: "u16" }, { index: false; name: "insuranceTransfer"; type: "i128" }, { index: false; name: "socializedLoss"; type: "i128" }, { index: false; name: "startingLiabDepositIndex"; type: "i128" }, { index: false; name: "endingLiabDepositIndex"; type: "i128" }]; name: "TokenLiqBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "cumulativeDepositInterest"; type: "f64" }, { index: false; name: "cumulativeBorrowInterest"; type: "f64" }]; name: "DeactivateTokenPositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "cumulativeLongFunding"; type: "f64" }, { index: false; name: "cumulativeShortFunding"; type: "f64" }, { index: false; name: "makerVolume"; type: "u64" }, { index: false; name: "takerVolume"; type: "u64" }, { index: false; name: "perpSpotTransfers"; type: "i64" }]; name: "DeactivatePerpPositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mint"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "mintDecimals"; type: "u8" }, { index: false; name: "oracle"; type: "publicKey" }, { index: false; name: "mintInfo"; type: "publicKey" }]; name: "TokenMetaDataLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mint"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "mintDecimals"; type: "u8" }, { index: false; name: "oracle"; type: "publicKey" }, { index: false; name: "fallbackOracle"; type: "publicKey" }, { index: false; name: "mintInfo"; type: "publicKey" }]; name: "TokenMetaDataLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarket"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "baseDecimals"; type: "u8" }, { index: false; name: "baseLotSize"; type: "i64" }, { index: false; name: "quoteLotSize"; type: "i64" }, { index: false; name: "oracle"; type: "publicKey" }]; name: "PerpMarketMetaDataLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "serumMarket"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "serumProgram"; type: "publicKey" }, { index: false; name: "serumProgramExternal"; type: "publicKey" }]; name: "Serum3RegisterMarketLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "baseTransfer"; type: "i64" }, { index: false; name: "quoteTransfer"; type: "i128" }, { index: false; name: "pnlTransfer"; type: "i128" }, { index: false; name: "pnlSettleLimitTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpLiqBaseOrPositivePnlLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "baseTransferLiqee"; type: "i64" }, { index: false; name: "quoteTransferLiqee"; type: "i128" }, { index: false; name: "quoteTransferLiqor"; type: "i128" }, { index: false; name: "quotePlatformFee"; type: "i128" }, { index: false; name: "pnlTransfer"; type: "i128" }, { index: false; name: "pnlSettleLimitTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpLiqBaseOrPositivePnlLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "insuranceTransfer"; type: "i128" }, { index: false; name: "socializedLoss"; type: "i128" }, { index: false; name: "startingLongFunding"; type: "i128" }, { index: false; name: "startingShortFunding"; type: "i128" }, { index: false; name: "endingLongFunding"; type: "i128" }, { index: false; name: "endingShortFunding"; type: "i128" }]; name: "PerpLiqBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }]; name: "PerpLiqNegativePnlOrBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccountA"; type: "publicKey" }, { index: false; name: "mangoAccountB"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }, { index: false; name: "settler"; type: "publicKey" }, { index: false; name: "fee"; type: "i128" }]; name: "PerpSettlePnlLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }]; name: "PerpSettleFeesLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "buybackFees"; type: "i128" }, { index: false; name: "buybackMngo"; type: "i128" }, { index: false; name: "mngoBuybackPrice"; type: "i128" }, { index: false; name: "oraclePrice"; type: "i128" }]; name: "AccountBuybackFeesWithMngoLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "seqNum"; type: "u64" }]; name: "FilledPerpOrderLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "totalBaseLotsTaken"; type: "i64" }, { index: false; name: "totalBaseLotsDecremented"; type: "i64" }, { index: false; name: "totalQuoteLotsTaken"; type: "i64" }, { index: false; name: "totalQuoteLotsDecremented"; type: "i64" }, { index: false; name: "takerFeesPaid"; type: "i128" }, { index: false; name: "feePenalty"; type: "i128" }]; name: "PerpTakerTradeLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "accountA"; type: "publicKey" }, { index: false; name: "accountB"; type: "publicKey" }, { index: false; name: "baseTransfer"; type: "i64" }, { index: false; name: "quoteTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpForceClosePositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransfer"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "feeFactor"; type: "i128" }]; name: "TokenForceCloseBorrowsWithTokenLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransferFromLiqee"; type: "i128" }, { index: false; name: "assetTransferToLiqor"; type: "i128" }, { index: false; name: "assetLiquidationFee"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "feeFactor"; type: "i128" }]; name: "TokenForceCloseBorrowsWithTokenLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }]; name: "TokenConditionalSwapCreateLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }]; name: "TokenConditionalSwapCreateLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }, { index: false; name: "tcsType"; type: "u8" }, { index: false; name: "startTimestamp"; type: "u64" }, { index: false; name: "durationSeconds"; type: "u64" }]; name: "TokenConditionalSwapCreateLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }]; name: "TokenConditionalSwapTriggerLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }]; name: "TokenConditionalSwapTriggerLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }, { index: false; name: "tcsType"; type: "u8" }, { index: false; name: "startTimestamp"; type: "u64" }]; name: "TokenConditionalSwapTriggerLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }]; name: "TokenConditionalSwapCancelLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "caller"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "incentiveTokenIndex"; type: "u16" }, { index: false; name: "incentiveAmount"; type: "u64" }]; name: "TokenConditionalSwapStartLog" }]
                    • instructions: [{ accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: true; name: "admin" }]; args: []; name: "adminTokenWithdrawFees" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: true; name: "admin" }]; args: []; name: "adminPerpWithdrawFees" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Group" }, { kind: "account"; path: "creator"; type: "publicKey" }, { kind: "arg"; path: "group_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "creator" }, { isMut: false; isSigner: false; name: "insuranceMint" }, { isMut: true; isSigner: false; name: "insuranceVault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "InsuranceVault" }, { kind: "account"; path: "group"; type: "publicKey" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "groupNum"; type: "u32" }, { name: "testing"; type: "u8" }, { name: "version"; type: "u8" }]; name: "groupCreate" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "adminOpt"; type: { option: "publicKey" } }, { name: "fastListingAdminOpt"; type: { option: "publicKey" } }, { name: "securityAdminOpt"; type: { option: "publicKey" } }, { name: "testingOpt"; type: { option: "u8" } }, { name: "versionOpt"; type: { option: "u8" } }, { name: "depositLimitQuoteOpt"; type: { option: "u64" } }, { name: "buybackFeesOpt"; type: { option: "bool" } }, { name: "buybackFeesBonusFactorOpt"; type: { option: "f32" } }, { name: "buybackFeesSwapMangoAccountOpt"; type: { option: "publicKey" } }, { name: "mngoTokenIndexOpt"; type: { option: "u16" } }, { name: "buybackFeesExpiryIntervalOpt"; type: { option: "u64" } }, { name: "allowedFastListingsPerIntervalOpt"; type: { option: "u16" } }]; name: "groupEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault", "admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "destination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }]; name: "groupWithdrawInsuranceFund" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "ixGate"; type: "u128" }]; name: "ixGateSet" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin", "insurance_vault"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "groupClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "mintInfo"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MintInfo" }, { kind: "account"; path: "group"; type: "publicKey" }, { account: "Mint"; kind: "account"; path: "mint"; type: "publicKey" }] } }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "fallbackOracle" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oracleConfig"; type: { defined: "OracleConfigParams" } }, { name: "interestRateParams"; type: { defined: "InterestRateParams" } }, { name: "loanFeeRate"; type: "f32" }, { name: "loanOriginationFeeRate"; type: "f32" }, { name: "maintAssetWeight"; type: "f32" }, { name: "initAssetWeight"; type: "f32" }, { name: "maintLiabWeight"; type: "f32" }, { name: "initLiabWeight"; type: "f32" }, { name: "liquidationFee"; type: "f32" }, { name: "stablePriceDelayIntervalSeconds"; type: "u32" }, { name: "stablePriceDelayGrowthLimit"; type: "f32" }, { name: "stablePriceGrowthLimit"; type: "f32" }, { name: "minVaultToDepositsRatio"; type: "f64" }, { name: "netBorrowLimitWindowSizeTs"; type: "u64" }, { name: "netBorrowLimitPerWindowQuote"; type: "i64" }, { name: "borrowWeightScaleStartQuote"; type: "f64" }, { name: "depositWeightScaleStartQuote"; type: "f64" }, { name: "reduceOnly"; type: "u8" }, { name: "tokenConditionalSwapTakerFeeRate"; type: "f32" }, { name: "tokenConditionalSwapMakerFeeRate"; type: "f32" }, { name: "flashLoanSwapFeeRate"; type: "f32" }, { name: "interestCurveScaling"; type: "f32" }, { name: "interestTargetUtilization"; type: "f32" }, { name: "groupInsuranceFund"; type: "bool" }, { name: "depositLimit"; type: "u64" }, { name: "zeroUtilRate"; type: "f32" }, { name: "platformLiquidationFee"; type: "f32" }, { name: "disableAssetLiquidation"; type: "bool" }]; name: "tokenRegister" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "mintInfo"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MintInfo" }, { kind: "account"; path: "group"; type: "publicKey" }, { account: "Mint"; kind: "account"; path: "mint"; type: "publicKey" }] } }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "fallbackOracle" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "name"; type: "string" }]; name: "tokenRegisterTrustless" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group"] }, { docs: ["The oracle account is optional and only used when reset_stable_price is set.", ""]; isMut: false; isSigner: false; name: "oracle" }, { docs: ["The fallback oracle account is optional and only used when set_fallback_oracle is true.", ""]; isMut: false; isSigner: false; name: "fallbackOracle" }]; args: [{ name: "oracleOpt"; type: { option: "publicKey" } }, { name: "oracleConfigOpt"; type: { option: { defined: "OracleConfigParams" } } }, { name: "groupInsuranceFundOpt"; type: { option: "bool" } }, { name: "interestRateParamsOpt"; type: { option: { defined: "InterestRateParams" } } }, { name: "loanFeeRateOpt"; type: { option: "f32" } }, { name: "loanOriginationFeeRateOpt"; type: { option: "f32" } }, { name: "maintAssetWeightOpt"; type: { option: "f32" } }, { name: "initAssetWeightOpt"; type: { option: "f32" } }, { name: "maintLiabWeightOpt"; type: { option: "f32" } }, { name: "initLiabWeightOpt"; type: { option: "f32" } }, { name: "liquidationFeeOpt"; type: { option: "f32" } }, { name: "stablePriceDelayIntervalSecondsOpt"; type: { option: "u32" } }, { name: "stablePriceDelayGrowthLimitOpt"; type: { option: "f32" } }, { name: "stablePriceGrowthLimitOpt"; type: { option: "f32" } }, { name: "minVaultToDepositsRatioOpt"; type: { option: "f64" } }, { name: "netBorrowLimitPerWindowQuoteOpt"; type: { option: "i64" } }, { name: "netBorrowLimitWindowSizeTsOpt"; type: { option: "u64" } }, { name: "borrowWeightScaleStartQuoteOpt"; type: { option: "f64" } }, { name: "depositWeightScaleStartQuoteOpt"; type: { option: "f64" } }, { name: "resetStablePrice"; type: "bool" }, { name: "resetNetBorrowLimit"; type: "bool" }, { name: "reduceOnlyOpt"; type: { option: "u8" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "tokenConditionalSwapTakerFeeRateOpt"; type: { option: "f32" } }, { name: "tokenConditionalSwapMakerFeeRateOpt"; type: { option: "f32" } }, { name: "flashLoanSwapFeeRateOpt"; type: { option: "f32" } }, { name: "interestCurveScalingOpt"; type: { option: "f32" } }, { name: "interestTargetUtilizationOpt"; type: { option: "f32" } }, { name: "maintWeightShiftStartOpt"; type: { option: "u64" } }, { name: "maintWeightShiftEndOpt"; type: { option: "u64" } }, { name: "maintWeightShiftAssetTargetOpt"; type: { option: "f32" } }, { name: "maintWeightShiftLiabTargetOpt"; type: { option: "f32" } }, { name: "maintWeightShiftAbort"; type: "bool" }, { name: "setFallbackOracle"; type: "bool" }, { name: "depositLimitOpt"; type: { option: "u64" } }, { name: "zeroUtilRateOpt"; type: { option: "f32" } }, { name: "platformLiquidationFeeOpt"; type: { option: "f32" } }, { name: "disableAssetLiquidationOpt"; type: { option: "bool" } }]; name: "tokenEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: false; isSigner: false; name: "existingBank"; relations: ["group", "mint"] }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "arg"; path: "bank_num"; type: "u32" }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "arg"; path: "bank_num"; type: "u32" }] } }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group", "mint"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "bankNum"; type: "u32" }]; name: "tokenAddBank" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "dustVault" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "tokenDeregister" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "mintInfo"; relations: ["oracle", "group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "instructions" }]; args: []; name: "tokenUpdateIndexAndRate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MangoAccount" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "owner"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "accountNum"; type: "u32" }, { name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "name"; type: "string" }]; name: "accountCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MangoAccount" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "owner"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "accountNum"; type: "u32" }, { name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "tokenConditionalSwapCount"; type: "u8" }, { name: "name"; type: "string" }]; name: "accountCreateV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }]; name: "accountExpand" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "tokenConditionalSwapCount"; type: "u8" }]; name: "accountExpandV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: []; name: "accountSizeMigration" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }]; args: [{ name: "nameOpt"; type: { option: "string" } }, { name: "delegateOpt"; type: { option: "publicKey" } }, { name: "temporaryDelegateOpt"; type: { option: "publicKey" } }, { name: "temporaryDelegateExpiryOpt"; type: { option: "u64" } }]; name: "accountEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "freeze"; type: "bool" }]; name: "accountToggleFreeze" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "forceClose"; type: "bool" }]; name: "accountClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "daoAccount"; relations: ["group"] }, { isMut: true; isSigner: false; name: "mngoBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "mngoOracle" }, { isMut: true; isSigner: false; name: "feesBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "feesOracle" }]; args: [{ name: "maxBuybackUsd"; type: "u64" }]; name: "accountBuybackFeesWithMngo" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: true; name: "oracle" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "price"; type: { defined: "I80F48" } }]; name: "stubOracleCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "stubOracleClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }]; args: [{ name: "price"; type: { defined: "I80F48" } }]; name: "stubOracleSet" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }]; args: [{ name: "price"; type: { defined: "I80F48" } }, { name: "lastUpdateSlot"; type: "u64" }, { name: "deviation"; type: { defined: "I80F48" } }]; name: "stubOracleSetTest" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: true; name: "tokenAuthority" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "reduceOnly"; type: "bool" }]; name: "tokenDeposit" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: true; name: "tokenAuthority" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "reduceOnly"; type: "bool" }]; name: "tokenDepositIntoExisting" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "allowBorrow"; type: "bool" }]; name: "tokenWithdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }]; args: [{ name: "loanAmounts"; type: { vec: "u64" } }]; name: "flashLoanBegin" }, { accounts: [{ isMut: false; isSigner: false; name: "account" }, { isMut: true; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "inputMint" }, { isMut: false; isSigner: false; name: "outputMint" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "associatedTokenProgram" }, { docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }]; args: [{ name: "loanAmount"; type: "u64" }]; docs: ["A version of flash_loan_begin that's specialized for swaps and needs fewer", "bytes in the transaction"]; name: "flashLoanSwapBegin" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "flashLoanEnd" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "numLoans"; type: "u8" }, { name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "flashLoanEndV2" }, { accounts: [{ docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }, { isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }]; args: []; name: "healthRegionBegin" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }]; args: []; name: "healthRegionEnd" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { docs: ["group admin or fast listing admin, checked at #1"]; isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "serumMarket"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3Market" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "serum_market_external"; type: "publicKey" }] } }, { isMut: true; isSigner: false; name: "indexReservation"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3Index" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "market_index"; type: "u16" }] } }, { isMut: false; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "marketIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oraclePriceBand"; type: "f32" }]; docs: ["", "Serum", ""]; name: "serum3RegisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "market"; relations: ["group"] }]; args: [{ name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "oraclePriceBandOpt"; type: { option: "f32" } }]; name: "serum3EditMarket" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "serumMarket"; relations: ["group"] }, { isMut: true; isSigner: false; name: "indexReservation"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "serum3DeregisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "openOrders"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3OO" }, { kind: "account"; path: "account"; type: "publicKey" }, { kind: "account"; path: "serum_market"; type: "publicKey" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: []; name: "serum3CreateOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: true; isSigner: false; name: "solDestination" }]; args: []; name: "serum3CloseOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: { defined: "Serum3SelfTradeBehavior" } }, { name: "orderType"; type: { defined: "Serum3OrderType" } }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "serum3PlaceOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: { defined: "Serum3SelfTradeBehavior" } }, { name: "orderType"; type: { defined: "Serum3OrderType" } }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; docs: ["requires the receiver_bank in the health account list to be writable"]; name: "serum3PlaceOrderV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "orderId"; type: "u128" }]; name: "serum3CancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "clientOrderId"; type: "u64" }]; name: "serum3CancelOrderByClientOrderId" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "limit"; type: "u8" }]; name: "serum3CancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; docs: ["Deprecated instruction that used to settles all free funds from the OpenOrders account", "into the MangoAccount.", "", "Any serum \"referrer rebates\" (ui fees) are considered Mango fees."]; name: "serum3SettleFunds" }, { accounts: [{ accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; name: "v1" }, { accounts: [{ isMut: false; isSigner: false; name: "quoteOracle" }, { isMut: false; isSigner: false; name: "baseOracle" }]; name: "v2" }]; args: [{ name: "feesToDao"; type: "bool" }]; docs: ["Like Serum3SettleFunds, but `fees_to_dao` determines if referrer rebates are considered fees", "or are credited to the MangoAccount."]; name: "serum3SettleFundsV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "limit"; type: "u8" }]; name: "serum3LiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "liqTokenWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: false; isSigner: false; name: "liabMintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "liqTokenBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "tokenLiqWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: "u64" }]; name: "tokenForceCloseBorrowsWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: false; isSigner: false; name: "liabMintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "tokenLiqBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "perpMarket"; pda: { seeds: [{ kind: "const"; type: "string"; value: "PerpMarket" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "perp_market_index"; type: "u16" }] } }, { docs: ["Accounts are initialised by client,", "anchor discriminator is set first when ix exits,"]; isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "perpMarketIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oracleConfig"; type: { defined: "OracleConfigParams" } }, { name: "baseDecimals"; type: "u8" }, { name: "quoteLotSize"; type: "i64" }, { name: "baseLotSize"; type: "i64" }, { name: "maintBaseAssetWeight"; type: "f32" }, { name: "initBaseAssetWeight"; type: "f32" }, { name: "maintBaseLiabWeight"; type: "f32" }, { name: "initBaseLiabWeight"; type: "f32" }, { name: "maintOverallAssetWeight"; type: "f32" }, { name: "initOverallAssetWeight"; type: "f32" }, { name: "baseLiquidationFee"; type: "f32" }, { name: "makerFee"; type: "f32" }, { name: "takerFee"; type: "f32" }, { name: "minFunding"; type: "f32" }, { name: "maxFunding"; type: "f32" }, { name: "impactQuantity"; type: "i64" }, { name: "groupInsuranceFund"; type: "bool" }, { name: "feePenalty"; type: "f32" }, { name: "settleFeeFlat"; type: "f32" }, { name: "settleFeeAmountThreshold"; type: "f32" }, { name: "settleFeeFractionLowHealth"; type: "f32" }, { name: "settleTokenIndex"; type: "u16" }, { name: "settlePnlLimitFactor"; type: "f32" }, { name: "settlePnlLimitWindowSizeTs"; type: "u64" }, { name: "positivePnlLiquidationFee"; type: "f32" }, { name: "platformLiquidationFee"; type: "f32" }]; docs: ["", "Perps", ""]; name: "perpCreateMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group"] }, { docs: ["The oracle account is optional and only used when reset_stable_price is set.", ""]; isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "oracleOpt"; type: { option: "publicKey" } }, { name: "oracleConfigOpt"; type: { option: { defined: "OracleConfigParams" } } }, { name: "baseDecimalsOpt"; type: { option: "u8" } }, { name: "maintBaseAssetWeightOpt"; type: { option: "f32" } }, { name: "initBaseAssetWeightOpt"; type: { option: "f32" } }, { name: "maintBaseLiabWeightOpt"; type: { option: "f32" } }, { name: "initBaseLiabWeightOpt"; type: { option: "f32" } }, { name: "maintOverallAssetWeightOpt"; type: { option: "f32" } }, { name: "initOverallAssetWeightOpt"; type: { option: "f32" } }, { name: "baseLiquidationFeeOpt"; type: { option: "f32" } }, { name: "makerFeeOpt"; type: { option: "f32" } }, { name: "takerFeeOpt"; type: { option: "f32" } }, { name: "minFundingOpt"; type: { option: "f32" } }, { name: "maxFundingOpt"; type: { option: "f32" } }, { name: "impactQuantityOpt"; type: { option: "i64" } }, { name: "groupInsuranceFundOpt"; type: { option: "bool" } }, { name: "feePenaltyOpt"; type: { option: "f32" } }, { name: "settleFeeFlatOpt"; type: { option: "f32" } }, { name: "settleFeeAmountThresholdOpt"; type: { option: "f32" } }, { name: "settleFeeFractionLowHealthOpt"; type: { option: "f32" } }, { name: "stablePriceDelayIntervalSecondsOpt"; type: { option: "u32" } }, { name: "stablePriceDelayGrowthLimitOpt"; type: { option: "f32" } }, { name: "stablePriceGrowthLimitOpt"; type: { option: "f32" } }, { name: "settlePnlLimitFactorOpt"; type: { option: "f32" } }, { name: "settlePnlLimitWindowSizeTsOpt"; type: { option: "u64" } }, { name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "resetStablePrice"; type: "bool" }, { name: "positivePnlLiquidationFeeOpt"; type: { option: "f32" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "platformLiquidationFeeOpt"; type: { option: "f32" } }]; name: "perpEditMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "perpCloseMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "perpMarket"; relations: ["group"] }]; args: []; name: "perpDeactivatePosition" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceLots"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }]; name: "perpPlaceOrder"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceLots"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "selfTradeBehavior"; type: { defined: "SelfTradeBehavior" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }]; name: "perpPlaceOrderV2"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceOffsetLots"; type: "i64" }, { name: "pegLimit"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }, { name: "maxOracleStalenessSlots"; type: "i32" }]; name: "perpPlaceOrderPegged"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceOffsetLots"; type: "i64" }, { name: "pegLimit"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "selfTradeBehavior"; type: { defined: "SelfTradeBehavior" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }, { name: "maxOracleStalenessSlots"; type: "i32" }]; name: "perpPlaceOrderPeggedV2"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "orderId"; type: "u128" }]; name: "perpCancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "clientOrderId"; type: "u64" }]; name: "perpCancelOrderByClientOrderId" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "perpCancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "sideOption"; type: { option: { defined: "Side" } } }, { name: "limit"; type: "u8" }]; name: "perpCancelAllOrdersBySide" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "event_queue"] }, { isMut: true; isSigner: false; name: "eventQueue" }]; args: [{ name: "limit"; type: "u64" }]; name: "perpConsumeEvents" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: false; isSigner: false; name: "oracle" }]; args: []; name: "perpUpdateFunding" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "settler"; relations: ["group"] }, { isMut: false; isSigner: true; name: "settlerOwner" }, { isMut: false; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "accountA"; relations: ["group"] }, { isMut: true; isSigner: false; name: "accountB"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: []; name: "perpSettlePnl" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "accountA"; relations: ["group"] }, { isMut: true; isSigner: false; name: "accountB"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }]; args: []; name: "perpForceClosePosition" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: [{ name: "maxSettleAmount"; type: "u64" }]; name: "perpSettleFees" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: [{ name: "maxBaseTransfer"; type: "i64" }, { name: "maxPnlTransfer"; type: "u64" }]; name: "perpLiqBaseOrPositivePnl" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "perpLiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: "u64" }]; name: "perpLiqNegativePnlOrBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "insuranceBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "insuranceBankVault" }, { isMut: false; isSigner: false; name: "insuranceOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: "u64" }]; name: "perpLiqNegativePnlOrBankruptcyV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "pricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }]; name: "tokenConditionalSwapCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "pricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "intention"; type: { defined: "TokenConditionalSwapIntention" } }]; name: "tokenConditionalSwapCreateV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "maxPricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "intention"; type: { defined: "TokenConditionalSwapIntention" } }, { name: "durationSeconds"; type: "u64" }]; name: "tokenConditionalSwapCreatePremiumAuction" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceStart"; type: "f64" }, { name: "priceEnd"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "startTimestamp"; type: "u64" }, { name: "durationSeconds"; type: "u64" }]; name: "tokenConditionalSwapCreateLinearAuction" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { docs: ["The bank's token_index is checked at #1"]; isMut: true; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }]; name: "tokenConditionalSwapCancel" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }, { name: "maxBuyTokenToLiqee"; type: "u64" }, { name: "maxSellTokenToLiqor"; type: "u64" }]; name: "tokenConditionalSwapTrigger" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }, { name: "maxBuyTokenToLiqee"; type: "u64" }, { name: "maxSellTokenToLiqor"; type: "u64" }, { name: "minBuyToken"; type: "u64" }, { name: "minTakerPrice"; type: "f32" }]; name: "tokenConditionalSwapTriggerV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }]; name: "tokenConditionalSwapStart" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "addressLookupTable" }]; args: [{ name: "index"; type: "u8" }]; name: "altSet" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: true; name: "payer" }, { isMut: true; isSigner: false; name: "addressLookupTable" }]; args: [{ name: "index"; type: "u8" }, { name: "newAddresses"; type: { vec: "publicKey" } }]; name: "altExtend" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "account"; relations: ["group"] }]; args: []; docs: ["Warning, this instruction is for testing purposes only!"]; name: "computeAccountData" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openbookV2Market"; pda: { seeds: [{ kind: "const"; type: "string"; value: "OpenbookV2Market" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "openbook_v2_market_external"; type: "publicKey" }] } }, { isMut: true; isSigner: false; name: "indexReservation"; pda: { seeds: [{ kind: "const"; type: "string"; value: "OpenbookV2Index" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "market_index"; type: "u16" }] } }, { isMut: false; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "marketIndex"; type: "u16" }, { name: "name"; type: "string" }]; docs: ["", "OpenbookV2", ""]; name: "openbookV2RegisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "market"; relations: ["group"] }]; args: [{ name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "forceCloseOpt"; type: { option: "bool" } }]; name: "openbookV2EditMarket" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "openbookV2Market"; relations: ["group"] }, { isMut: true; isSigner: false; name: "indexReservation"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "openbookV2DeregisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openOrders"; pda: { programId: { kind: "account"; path: "openbook_v2_program"; type: "publicKey" }; seeds: [{ kind: "const"; type: "string"; value: "OpenOrders" }, { kind: "account"; path: "openbook_v2_market"; type: "publicKey" }, { kind: "account"; path: "openbook_v2_market_external"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "accountNum"; type: "u32" }]; name: "openbookV2CreateOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: true; isSigner: false; name: "solDestination" }]; args: []; name: "openbookV2CloseOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market" }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: "u8" }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: "u8" }, { name: "orderType"; type: "u8" }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "openbookV2PlaceOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: "u8" }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: "u8" }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "openbookV2PlaceTakerOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "side"; type: "u8" }, { name: "orderId"; type: "u128" }]; name: "openbookV2CancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "quoteOracle" }, { isMut: false; isSigner: false; name: "baseOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "feesToDao"; type: "bool" }]; name: "openbookV2SettleFunds" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "limit"; type: "u8" }]; name: "openbookV2LiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "openbookV2CancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "dummy" }]; args: []; docs: ["", "benchmark", ""]; name: "benchmark" }]
                    • name: "mango_v4"
                    • types: [{ name: "InterestRateParams"; type: { fields: [{ name: "util0"; type: "f32" }, { name: "rate0"; type: "f32" }, { name: "util1"; type: "f32" }, { name: "rate1"; type: "f32" }, { name: "maxRate"; type: "f32" }, { name: "adjustmentFactor"; type: "f32" }]; kind: "struct" } }, { name: "Equity"; type: { fields: [{ name: "tokens"; type: { vec: { defined: "TokenEquity" } } }, { name: "perps"; type: { vec: { defined: "PerpEquity" } } }]; kind: "struct" } }, { name: "TokenEquity"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { name: "value"; type: { defined: "I80F48" } }]; kind: "struct" } }, { name: "PerpEquity"; type: { fields: [{ name: "perpMarketIndex"; type: "u16" }, { name: "value"; type: { defined: "I80F48" } }]; kind: "struct" } }, { name: "FlashLoanTokenDetail"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { name: "changeAmount"; type: "i128" }, { name: "loan"; type: "i128" }, { name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }]; kind: "struct" } }, { name: "FlashLoanTokenDetailV2"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { docs: ["The amount by which the user's token position changed at the end", "", "So if the user repaid the approved_amount in full, it'd be 0.", "", "Does NOT include the loan_origination_fee or deposit_fee, so the true", "change is `change_amount - loan_origination_fee - deposit_fee`."]; name: "changeAmount"; type: "i128" }, { docs: ["The amount that was a loan (<= approved_amount, depends on user's deposits)"]; name: "loan"; type: "i128" }, { docs: ["The fee paid on the loan, not included in `loan` or `change_amount`"]; name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }, { docs: ["Deposit fee paid for positive change_amount.", "", "Not factored into change_amount."]; name: "depositFee"; type: "i128" }, { docs: ["The amount that was transfered out to the user"]; name: "approvedAmount"; type: "u64" }]; kind: "struct" } }, { name: "FlashLoanTokenDetailV3"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { docs: ["The amount by which the user's token position changed at the end", "", "So if the user repaid the approved_amount in full, it'd be 0.", "", "Does NOT include the loan_origination_fee or deposit_fee, so the true", "change is `change_amount - loan_origination_fee - deposit_fee`."]; name: "changeAmount"; type: "i128" }, { docs: ["The amount that was a loan (<= approved_amount, depends on user's deposits)"]; name: "loan"; type: "i128" }, { docs: ["The fee paid on the loan, not included in `loan` or `change_amount`"]; name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }, { docs: ["Swap fee paid on the in token of a swap.", "", "Not factored into change_amount."]; name: "swapFee"; type: "i128" }, { docs: ["The amount that was transfered out to the user"]; name: "approvedAmount"; type: "u64" }]; kind: "struct" } }, { name: "TokenPosition"; type: { fields: [{ docs: ["The deposit_index (if positive) or borrow_index (if negative) scaled position"]; name: "indexedPosition"; type: { defined: "I80F48" } }, { docs: ["index into Group.tokens"]; name: "tokenIndex"; type: "u16" }, { docs: ["incremented when a market requires this position to stay alive"]; name: "inUseCount"; type: "u16" }, { name: "padding"; type: { array: ["u8", 4] } }, { name: "previousIndex"; type: { defined: "I80F48" } }, { name: "cumulativeDepositInterest"; type: "f64" }, { name: "cumulativeBorrowInterest"; type: "f64" }, { name: "reserved"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { name: "Serum3Orders"; type: { fields: [{ name: "openOrders"; type: "publicKey" }, { docs: ["Tracks the amount of borrows that have flowed into the serum open orders account.", "These borrows did not have the loan origination fee applied, and that may happen", "later (in serum3_settle_funds) if we can guarantee that the funds were used.", "In particular a place-on-book, cancel, settle should not cost fees."]; name: "baseBorrowsWithoutFee"; type: "u64" }, { name: "quoteBorrowsWithoutFee"; type: "u64" }, { name: "marketIndex"; type: "u16" }, { docs: ["Store the base/quote token index, so health computations don't need", "to get passed the static SerumMarket to find which tokens a market", "uses and look up the correct oracles."]; name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { docs: ["Track something like the highest open bid / lowest open ask, in native/native units.", "", "Tracking it exactly isn't possible since we don't see fills. So instead track", "the min/max of the _placed_ bids and asks.", "", "The value is reset in serum3_place_order when a new order is placed without an", "existing one on the book.", "", "0 is a special \"unset\" state."]; name: "highestPlacedBidInv"; type: "f64" }, { name: "lowestPlacedAsk"; type: "f64" }, { docs: ["An overestimate of the amount of tokens that might flow out of the open orders account.", "", "The bank still considers these amounts user deposits (see Bank::potential_serum_tokens)", "and that value needs to be updated in conjunction with these numbers.", "", "This estimation is based on the amount of tokens in the open orders account", "(see update_bank_potential_tokens() in serum3_place_order and settle)"]; name: "potentialBaseTokens"; type: "u64" }, { name: "potentialQuoteTokens"; type: "u64" }, { docs: ["Track lowest bid/highest ask, same way as for highest bid/lowest ask.", "", "0 is a special \"unset\" state."]; name: "lowestPlacedBidInv"; type: "f64" }, { name: "highestPlacedAsk"; type: "f64" }, { name: "reserved"; type: { array: ["u8", 16] } }]; kind: "struct" } }, { name: "PerpPosition"; type: { fields: [{ name: "marketIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { docs: ["Index of the current settle pnl limit window"]; name: "settlePnlLimitWindow"; type: "u32" }, { docs: ["Amount of realized trade pnl and unrealized pnl that was already settled this window.", "", "Will be negative when negative pnl was settled.", "", "Note that this will be adjusted for bookkeeping reasons when the realized_trade settle", "limitchanges and is not useable for actually tracking how much pnl was settled", "on balance."]; name: "settlePnlLimitSettledInCurrentWindowNative"; type: "i64" }, { docs: ["Active position size, measured in base lots"]; name: "basePositionLots"; type: "i64" }, { docs: ["Active position in oracle quote native. At the same time this is 1:1 a settle_token native amount.", "", "Example: Say there's a perp market on the BTC/USD price using SOL for settlement. The user buys", "one long contract for $20k, then base = 1, quote = -20k. The price goes to $21k. Now their", "unsettled pnl is (1 * 21k - 20k) __SOL__ = 1000 SOL. This is because the perp contract arbitrarily", "decides that each unit of price difference creates 1 SOL worth of settlement.", "(yes, causing 1 SOL of settlement for each $1 price change implies a lot of extra leverage; likely", "there should be an extra configurable scaling factor before we use this for cases like that)"]; name: "quotePositionNative"; type: { defined: "I80F48" } }, { docs: ["Tracks what the position is to calculate average entry & break even price"]; name: "quoteRunningNative"; type: "i64" }, { docs: ["Already settled long funding"]; name: "longSettledFunding"; type: { defined: "I80F48" } }, { docs: ["Already settled short funding"]; name: "shortSettledFunding"; type: { defined: "I80F48" } }, { docs: ["Base lots in open bids"]; name: "bidsBaseLots"; type: "i64" }, { docs: ["Base lots in open asks"]; name: "asksBaseLots"; type: "i64" }, { docs: ["Amount of base lots on the EventQueue waiting to be processed"]; name: "takerBaseLots"; type: "i64" }, { docs: ["Amount of quote lots on the EventQueue waiting to be processed"]; name: "takerQuoteLots"; type: "i64" }, { docs: ["Cumulative long funding in quote native units.", "If the user paid $1 in funding for a long position, this would be 1e6.", "Beware of the sign!", "", "(Display only)"]; name: "cumulativeLongFunding"; type: "f64" }, { docs: ["Cumulative short funding in quote native units", "If the user paid $1 in funding for a short position, this would be -1e6.", "", "(Display only)"]; name: "cumulativeShortFunding"; type: "f64" }, { docs: ["Cumulative maker volume in quote native units", "", "(Display only)"]; name: "makerVolume"; type: "u64" }, { docs: ["Cumulative taker volume in quote native units", "", "(Display only)"]; name: "takerVolume"; type: "u64" }, { docs: ["Cumulative number of quote native units transfered from the perp position", "to the settle token spot position.", "", "For example, if the user settled $1 of positive pnl into their USDC spot", "position, this would be 1e6.", "", "(Display only)"]; name: "perpSpotTransfers"; type: "i64" }, { docs: ["The native average entry price for the base lots of the current position.", "Reset to 0 when the base position reaches or crosses 0."]; name: "avgEntryPricePerBaseLot"; type: "f64" }, { docs: ["Deprecated field: Amount of pnl that was realized by bringing the base position closer to 0."]; name: "deprecatedRealizedTradePnlNative"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl that can be settled once.", "", "- The value is signed: a negative number means negative pnl can be settled.", "- A settlement in the right direction will decrease this amount.", "", "Typically added for fees, funding and liquidation."]; name: "oneshotSettlePnlAllowance"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl that can be settled in each settle window.", "", "- Unsigned, the settlement can happen in both directions. Value is >= 0.", "- Previously stored a similar value that was signed, so in migration cases", "this value can be negative and should be .abs()ed.", "- If this value exceeds the current stable-upnl, it should be decreased,", "see apply_recurring_settle_pnl_allowance_constraint()", "", "When the base position is reduced, the settle limit contribution from the reduced", "base position is materialized into this value. When the base position increases,", "some of the allowance is taken away.", "", "This also gets increased when a liquidator takes over pnl."]; name: "recurringSettlePnlAllowance"; type: "i64" }, { docs: ["Trade pnl, fees, funding that were added over the current position's lifetime.", "", "Reset when the position changes sign or goes to zero.", "Not decreased by settling.", "", "This is tracked for display purposes: this value plus the difference between entry", "price and current price of the base position is the overall pnl."]; name: "realizedPnlForPositionNative"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 88] } }]; kind: "struct" } }, { name: "PerpOpenOrder"; type: { fields: [{ name: "sideAndTree"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 1] } }, { name: "market"; type: "u16" }, { name: "padding2"; type: { array: ["u8", 4] } }, { name: "clientId"; type: "u64" }, { name: "id"; type: "u128" }, { name: "quantity"; type: "i64" }, { name: "reserved"; type: { array: ["u8", 56] } }]; kind: "struct" } }, { name: "MangoAccountFixed"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "owner"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 32] } }, { name: "delegate"; type: "publicKey" }, { name: "accountNum"; type: "u32" }, { name: "beingLiquidated"; type: "u8" }, { name: "inHealthRegion"; type: "u8" }, { name: "bump"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { name: "netDeposits"; type: "i64" }, { name: "perpSpotTransfers"; type: "i64" }, { name: "healthRegionBeginInitHealth"; type: "i64" }, { name: "frozenUntil"; type: "u64" }, { name: "buybackFeesAccruedCurrent"; type: "u64" }, { name: "buybackFeesAccruedPrevious"; type: "u64" }, { name: "buybackFeesExpiryTimestamp"; type: "u64" }, { name: "nextTokenConditionalSwapId"; type: "u64" }, { name: "temporaryDelegate"; type: "publicKey" }, { name: "temporaryDelegateExpiry"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 160] } }]; kind: "struct" } }, { name: "OracleConfig"; type: { fields: [{ name: "confFilter"; type: { defined: "I80F48" } }, { name: "maxStalenessSlots"; type: "i64" }, { name: "reserved"; type: { array: ["u8", 72] } }]; kind: "struct" } }, { name: "OracleConfigParams"; type: { fields: [{ name: "confFilter"; type: "f32" }, { name: "maxStalenessSlots"; type: { option: "u32" } }]; kind: "struct" } }, { docs: ["InnerNodes and LeafNodes compose the binary tree of orders.", "", "Each InnerNode has exactly two children, which are either InnerNodes themselves,", "or LeafNodes. The children share the top `prefix_len` bits of `key`. The left", "child has a 0 in the next bit, and the right a 1."]; name: "InnerNode"; type: { fields: [{ name: "tag"; type: "u8" }, { name: "padding"; type: { array: ["u8", 3] } }, { docs: ["number of highest `key` bits that all children share", "e.g. if it's 2, the two highest bits of `key` will be the same on all children"]; name: "prefixLen"; type: "u32" }, { docs: ["only the top `prefix_len` bits of `key` are relevant"]; name: "key"; type: "u128" }, { docs: ["indexes into `BookSide::nodes`"]; name: "children"; type: { array: ["u32", 2] } }, { docs: ["The earliest expiry timestamp for the left and right subtrees.", "", "Needed to be able to find and remove expired orders without having to", "iterate through the whole bookside."]; name: "childEarliestExpiry"; type: { array: ["u64", 2] } }, { name: "reserved"; type: { array: ["u8", 72] } }]; kind: "struct" } }, { docs: ["LeafNodes represent an order in the binary tree"]; name: "LeafNode"; type: { fields: [{ docs: ["NodeTag"]; name: "tag"; type: "u8" }, { docs: ["Index into the owning MangoAccount's PerpOpenOrders"]; name: "ownerSlot"; type: "u8" }, { docs: ["PostOrderType, this was added for TradingView move order"]; name: "orderType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { docs: ["Time in seconds after `timestamp` at which the order expires.", "A value of 0 means no expiry."]; name: "timeInForce"; type: "u16" }, { name: "padding2"; type: { array: ["u8", 2] } }, { docs: ["The binary tree key, see new_node_key()"]; name: "key"; type: "u128" }, { docs: ["Address of the owning MangoAccount"]; name: "owner"; type: "publicKey" }, { docs: ["Number of base lots to buy or sell, always >=1"]; name: "quantity"; type: "i64" }, { docs: ["The time the order was placed"]; name: "timestamp"; type: "u64" }, { docs: ["If the effective price of an oracle pegged order exceeds this limit,", "it will be considered invalid and may be removed.", "", "Only applicable in the oracle_pegged OrderTree"]; name: "pegLimit"; type: "i64" }, { docs: ["User defined id for this order, used in FillEvents"]; name: "clientOrderId"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 32] } }]; kind: "struct" } }, { name: "AnyNode"; type: { fields: [{ name: "tag"; type: "u8" }, { name: "data"; type: { array: ["u8", 119] } }]; kind: "struct" } }, { name: "OrderTreeRoot"; type: { fields: [{ name: "maybeNode"; type: "u32" }, { name: "leafCount"; type: "u32" }]; kind: "struct" } }, { docs: ["A binary tree on AnyNode::key()", "", "The key encodes the price in the top 64 bits."]; name: "OrderTreeNodes"; type: { fields: [{ name: "orderTreeType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 3] } }, { name: "bumpIndex"; type: "u32" }, { name: "freeListLen"; type: "u32" }, { name: "freeListHead"; type: "u32" }, { name: "reserved"; type: { array: ["u8", 512] } }, { name: "nodes"; type: { array: [{ defined: "AnyNode" }, 1024] } }]; kind: "struct" } }, { name: "EventQueueHeader"; type: { fields: [{ name: "head"; type: "u32" }, { name: "count"; type: "u32" }, { name: "seqNum"; type: "u64" }]; kind: "struct" } }, { name: "AnyEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 207] } }]; kind: "struct" } }, { name: "FillEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "takerSide"; type: "u8" }, { name: "makerOut"; type: "u8" }, { name: "makerSlot"; type: "u8" }, { name: "padding"; type: { array: ["u8", 4] } }, { name: "timestamp"; type: "u64" }, { name: "seqNum"; type: "u64" }, { name: "maker"; type: "publicKey" }, { name: "padding2"; type: { array: ["u8", 32] } }, { name: "makerTimestamp"; type: "u64" }, { name: "taker"; type: "publicKey" }, { name: "padding3"; type: { array: ["u8", 16] } }, { name: "takerClientOrderId"; type: "u64" }, { name: "makerOrderId"; type: "u128" }, { name: "price"; type: "i64" }, { name: "quantity"; type: "i64" }, { name: "makerClientOrderId"; type: "u64" }, { name: "makerFee"; type: "f32" }, { name: "takerFee"; type: "f32" }, { name: "reserved"; type: { array: ["u8", 8] } }]; kind: "struct" } }, { name: "OutEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "side"; type: "u8" }, { name: "ownerSlot"; type: "u8" }, { name: "padding0"; type: { array: ["u8", 5] } }, { name: "timestamp"; type: "u64" }, { name: "seqNum"; type: "u64" }, { name: "owner"; type: "publicKey" }, { name: "quantity"; type: "i64" }, { name: "orderId"; type: "u128" }, { name: "padding1"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { docs: ["Maintains a \"stable_price\" based on the oracle price.", "", "The stable price follows the oracle price, but its relative rate of", "change is limited (to `stable_growth_limit`) and futher reduced if", "the oracle price is far from the `delay_price`.", "", "Conceptually the `delay_price` is itself a time delayed", "(`24 * delay_interval_seconds`, assume 24h) and relative rate of change limited", "function of the oracle price. It is implemented as averaging the oracle", "price over every `delay_interval_seconds` (assume 1h) and then applying the", "`delay_growth_limit` between intervals."]; name: "StablePriceModel"; type: { fields: [{ docs: ["Current stable price to use in health"]; name: "stablePrice"; type: "f64" }, { name: "lastUpdateTimestamp"; type: "u64" }, { docs: ["Stored delay_price for each delay_interval.", "If we want the delay_price to be 24h delayed, we would store one for each hour.", "This is used in a cyclical way: We use the maximally-delayed value at delay_interval_index", "and once enough time passes to move to the next delay interval, that gets overwritten and", "we use the next one."]; name: "delayPrices"; type: { array: ["f64", 24] } }, { docs: ["The delay price is based on an average over each delay_interval. The contributions", "to the average are summed up here."]; name: "delayAccumulatorPrice"; type: "f64" }, { docs: ["Accumulating the total time for the above average."]; name: "delayAccumulatorTime"; type: "u32" }, { docs: ["Length of a delay_interval"]; name: "delayIntervalSeconds"; type: "u32" }, { docs: ["Maximal relative difference between two delay_price in consecutive intervals."]; name: "delayGrowthLimit"; type: "f32" }, { docs: ["Maximal per-second relative difference of the stable price.", "It gets further reduced if stable and delay price disagree."]; name: "stableGrowthLimit"; type: "f32" }, { docs: ["The delay_interval_index that update() was last called on."]; name: "lastDelayIntervalIndex"; type: "u8" }, { docs: ["If set to 1, the stable price will reset on the next non-zero price it sees."]; name: "resetOnNonzeroPrice"; type: "u8" }, { name: "padding"; type: { array: ["u8", 6] } }, { name: "reserved"; type: { array: ["u8", 48] } }]; kind: "struct" } }, { name: "TokenConditionalSwap"; type: { fields: [{ name: "id"; type: "u64" }, { docs: ["maximum amount of native tokens to buy or sell"]; name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { docs: ["how many native tokens were already bought/sold"]; name: "bought"; type: "u64" }, { name: "sold"; type: "u64" }, { docs: ["timestamp until which the conditional swap is valid"]; name: "expiryTimestamp"; type: "u64" }, { docs: ["The lower or starting price:", "- For FixedPremium or PremiumAuctions, it's the lower end of the price range:", "the tcs can only be triggered if the oracle price exceeds this value.", "- For LinearAuctions it's the starting price that's offered at start_timestamp.", "", "The price is always in \"sell_token per buy_token\" units, which can be computed", "by dividing the buy token price by the sell token price.", "", "For FixedPremium or PremiumAuctions:", "", "The price must exceed this threshold to allow execution.", "", "This threshold is compared to the \"sell_token per buy_token\" oracle price.", "If that price is >= lower_limit and <= upper_limit the tcs may be executable.", "", "Example: Stop loss to get out of a SOL long: The user bought SOL at 20 USDC/SOL", "and wants to stop loss at 18 USDC/SOL. They'd set buy_token=USDC, sell_token=SOL", "so the reference price is in SOL/USDC units. Set price_lower_limit=toNative(1/18)", "and price_upper_limit=toNative(1/10). Also set allow_borrows=false.", "", "Example: Want to buy SOL with USDC if the price falls below 22 USDC/SOL.", "buy_token=SOL, sell_token=USDC, reference price is in USDC/SOL units. Set", "price_upper_limit=toNative(22), price_lower_limit=0."]; name: "priceLowerLimit"; type: "f64" }, { docs: ["Parallel to price_lower_limit, but an upper limit / auction end price."]; name: "priceUpperLimit"; type: "f64" }, { docs: ["The premium to pay over oracle price to incentivize execution."]; name: "pricePremiumRate"; type: "f64" }, { docs: ["The taker receives only premium_price * (1 - taker_fee_rate)"]; name: "takerFeeRate"; type: "f32" }, { docs: ["The maker has to pay premium_price * (1 + maker_fee_rate)"]; name: "makerFeeRate"; type: "f32" }, { docs: ["indexes of tokens for the swap"]; name: "buyTokenIndex"; type: "u16" }, { name: "sellTokenIndex"; type: "u16" }, { docs: ["If this struct is in use. (tcs are stored in a static-length array)"]; name: "isConfigured"; type: "u8" }, { docs: ["may token purchases create deposits? (often users just want to get out of a borrow)"]; name: "allowCreatingDeposits"; type: "u8" }, { docs: ["may token selling create borrows? (often users just want to get out of a long)"]; name: "allowCreatingBorrows"; type: "u8" }, { docs: ["The stored prices are always \"sell token per buy token\", but if the user", "used \"buy token per sell token\" when creating the tcs order, we should continue", "to show them prices in that way.", "", "Stores a TokenConditionalSwapDisplayPriceStyle enum value"]; name: "displayPriceStyle"; type: "u8" }, { docs: ["The intention the user had when placing this order, display-only", "", "Stores a TokenConditionalSwapIntention enum value"]; name: "intention"; type: "u8" }, { docs: ["Stores a TokenConditionalSwapType enum value"]; name: "tcsType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 6] } }, { docs: ["In seconds since epoch. 0 means not-started.", "", "FixedPremium: Time of first trigger call. No other effect.", "PremiumAuction: Time of start or first trigger call. Can continue to trigger once started.", "LinearAuction: Set during creation, auction starts with price_lower_limit at this timestamp."]; name: "startTimestamp"; type: "u64" }, { docs: ["Duration of the auction mechanism", "", "FixedPremium: ignored", "PremiumAuction: time after start that the premium needs to scale to price_premium_rate", "LinearAuction: time after start to go from price_lower_limit to price_upper_limit"]; name: "durationSeconds"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 88] } }]; kind: "struct" } }, { docs: ["Nothing in Rust shall use these types. They only exist so that the Anchor IDL", "knows about them and typescript can deserialize it."]; name: "TokenIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "Serum3MarketIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "PerpMarketIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "I80F48"; type: { fields: [{ name: "val"; type: "i128" }]; kind: "struct" } }, { name: "FlashLoanType"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "Swap" }] } }, { docs: ["Copy paste a bunch of enums so that we could AnchorSerialize & AnchorDeserialize them"]; name: "Serum3SelfTradeBehavior"; type: { kind: "enum"; variants: [{ name: "DecrementTake" }, { name: "CancelProvide" }, { name: "AbortTransaction" }] } }, { name: "Serum3OrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "ImmediateOrCancel" }, { name: "PostOnly" }] } }, { name: "Serum3Side"; type: { kind: "enum"; variants: [{ name: "Bid" }, { name: "Ask" }] } }, { docs: ["There are three types of health:", "- initial health (\"init\"): users can only open new positions if it's >= 0", "- maintenance health (\"maint\"): users get liquidated if it's < 0", "- liquidation end health: once liquidation started (see being_liquidated), it", "only stops once this is >= 0", "", "The ordering is", "init health <= liquidation end health <= maint health", "", "The different health types are realized by using different weights and prices:", "- init health: init weights with scaling, stable-price adjusted prices", "- liq end health: init weights without scaling, oracle prices", "- maint health: maint weights, oracle prices", ""]; name: "HealthType"; type: { kind: "enum"; variants: [{ name: "Init" }, { name: "Maint" }, { name: "LiquidationEnd" }] } }, { name: "LoanOriginationFeeInstruction"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "LiqTokenBankruptcy" }, { name: "LiqTokenWithToken" }, { name: "Serum3LiqForceCancelOrders" }, { name: "Serum3PlaceOrder" }, { name: "Serum3SettleFunds" }, { name: "TokenWithdraw" }, { name: "TokenConditionalSwapTrigger" }] } }, { docs: ["Enum for lookup into ix gate", "note:", "total ix files 56,", "ix files included 48,", "ix files not included 8,", "- Benchmark,", "- ComputeAccountData,", "- GroupCreate", "- GroupEdit", "- IxGateSet,", "- PerpZeroOut,", "- PerpEditMarket,", "- TokenEdit,"]; name: "IxGate"; type: { kind: "enum"; variants: [{ name: "AccountClose" }, { name: "AccountCreate" }, { name: "AccountEdit" }, { name: "AccountExpand" }, { name: "AccountToggleFreeze" }, { name: "AltExtend" }, { name: "AltSet" }, { name: "FlashLoan" }, { name: "GroupClose" }, { name: "GroupCreate" }, { name: "HealthRegion" }, { name: "PerpCancelAllOrders" }, { name: "PerpCancelAllOrdersBySide" }, { name: "PerpCancelOrder" }, { name: "PerpCancelOrderByClientOrderId" }, { name: "PerpCloseMarket" }, { name: "PerpConsumeEvents" }, { name: "PerpCreateMarket" }, { name: "PerpDeactivatePosition" }, { name: "PerpLiqBaseOrPositivePnl" }, { name: "PerpLiqForceCancelOrders" }, { name: "PerpLiqNegativePnlOrBankruptcy" }, { name: "PerpPlaceOrder" }, { name: "PerpSettleFees" }, { name: "PerpSettlePnl" }, { name: "PerpUpdateFunding" }, { name: "Serum3CancelAllOrders" }, { name: "Serum3CancelOrder" }, { name: "Serum3CloseOpenOrders" }, { name: "Serum3CreateOpenOrders" }, { name: "Serum3DeregisterMarket" }, { name: "Serum3EditMarket" }, { name: "Serum3LiqForceCancelOrders" }, { name: "Serum3PlaceOrder" }, { name: "Serum3RegisterMarket" }, { name: "Serum3SettleFunds" }, { name: "StubOracleClose" }, { name: "StubOracleCreate" }, { name: "StubOracleSet" }, { name: "TokenAddBank" }, { name: "TokenDeposit" }, { name: "TokenDeregister" }, { name: "TokenLiqBankruptcy" }, { name: "TokenLiqWithToken" }, { name: "TokenRegister" }, { name: "TokenRegisterTrustless" }, { name: "TokenUpdateIndexAndRate" }, { name: "TokenWithdraw" }, { name: "AccountBuybackFeesWithMngo" }, { name: "TokenForceCloseBorrowsWithToken" }, { name: "PerpForceClosePosition" }, { name: "GroupWithdrawInsuranceFund" }, { name: "TokenConditionalSwapCreate" }, { name: "TokenConditionalSwapTrigger" }, { name: "TokenConditionalSwapCancel" }, { name: "OpenbookV2CancelOrder" }, { name: "OpenbookV2CloseOpenOrders" }, { name: "OpenbookV2CreateOpenOrders" }, { name: "OpenbookV2DeregisterMarket" }, { name: "OpenbookV2EditMarket" }, { name: "OpenbookV2LiqForceCancelOrders" }, { name: "OpenbookV2PlaceOrder" }, { name: "OpenbookV2PlaceTakeOrder" }, { name: "OpenbookV2RegisterMarket" }, { name: "OpenbookV2SettleFunds" }, { name: "AdminTokenWithdrawFees" }, { name: "AdminPerpWithdrawFees" }, { name: "AccountSizeMigration" }, { name: "TokenConditionalSwapStart" }, { name: "TokenConditionalSwapCreatePremiumAuction" }, { name: "TokenConditionalSwapCreateLinearAuction" }, { name: "Serum3PlaceOrderV2" }] } }, { name: "CheckLiquidatable"; type: { kind: "enum"; variants: [{ name: "NotLiquidatable" }, { name: "Liquidatable" }, { name: "BecameNotLiquidatable" }] } }, { name: "OracleType"; type: { kind: "enum"; variants: [{ name: "Pyth" }, { name: "Stub" }, { name: "SwitchboardV1" }, { name: "SwitchboardV2" }, { name: "OrcaCLMM" }] } }, { name: "OrderState"; type: { kind: "enum"; variants: [{ name: "Valid" }, { name: "Invalid" }, { name: "Skipped" }] } }, { name: "BookSideOrderTree"; type: { kind: "enum"; variants: [{ name: "Fixed" }, { name: "OraclePegged" }] } }, { name: "NodeTag"; type: { kind: "enum"; variants: [{ name: "Uninitialized" }, { name: "InnerNode" }, { name: "LeafNode" }, { name: "FreeNode" }, { name: "LastFreeNode" }] } }, { name: "PlaceOrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "ImmediateOrCancel" }, { name: "PostOnly" }, { name: "Market" }, { name: "PostOnlySlide" }] } }, { name: "PostOrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "PostOnly" }, { name: "PostOnlySlide" }] } }, { docs: ["Self trade behavior controls how taker orders interact with resting limit orders of the same account.", "This setting has no influence on placing a resting or oracle pegged limit order that does not match", "immediately, instead it's the responsibility of the user to correctly configure his taker orders."]; name: "SelfTradeBehavior"; type: { kind: "enum"; variants: [{ name: "DecrementTake" }, { name: "CancelProvide" }, { name: "AbortTransaction" }] } }, { name: "Side"; type: { kind: "enum"; variants: [{ name: "Bid" }, { name: "Ask" }] } }, { docs: ["SideAndOrderTree is a storage optimization, so we don't need two bytes for the data"]; name: "SideAndOrderTree"; type: { kind: "enum"; variants: [{ name: "BidFixed" }, { name: "AskFixed" }, { name: "BidOraclePegged" }, { name: "AskOraclePegged" }] } }, { name: "OrderParams"; type: { kind: "enum"; variants: [{ name: "Market" }, { fields: [{ name: "price_lots"; type: "i64" }]; name: "ImmediateOrCancel" }, { fields: [{ name: "price_lots"; type: "i64" }, { name: "order_type"; type: { defined: "PostOrderType" } }]; name: "Fixed" }, { fields: [{ name: "price_offset_lots"; type: "i64" }, { name: "order_type"; type: { defined: "PostOrderType" } }, { name: "peg_limit"; type: "i64" }, { name: "max_oracle_staleness_slots"; type: "i32" }]; name: "OraclePegged" }] } }, { name: "OrderTreeType"; type: { kind: "enum"; variants: [{ name: "Bids" }, { name: "Asks" }] } }, { name: "EventType"; type: { kind: "enum"; variants: [{ name: "Fill" }, { name: "Out" }, { name: "Liquidate" }] } }, { name: "TokenConditionalSwapDisplayPriceStyle"; type: { kind: "enum"; variants: [{ name: "SellTokenPerBuyToken" }, { name: "BuyTokenPerSellToken" }] } }, { name: "TokenConditionalSwapIntention"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "StopLoss" }, { name: "TakeProfit" }] } }, { name: "TokenConditionalSwapType"; type: { kind: "enum"; variants: [{ name: "FixedPremium" }, { name: "PremiumAuction" }, { name: "LinearAuction" }] } }]
                    • version: "0.22.0"
                    Modify<T, R>: Omit<T, keyof R> & R

                    Type parameters

                    • T

                    • R

                    OracleConfig: { confFilter: I80F48; maxStalenessSlots: BN }

                    Type declaration

                    • confFilter: I80F48
                    • maxStalenessSlots: BN
                    OracleConfigDto: { confFilter: I80F48Dto; maxStalenessSlots: BN }

                    Type declaration

                    ParsedFillEvent: Modify<FillEvent, { price: number; quantity: number }>
                    PerpMarketIndex: number & As<"perp-market-index">
                    PerpOrderSide: { bid: Record<string, never> } | { ask: Record<string, never> }
                    PerpOrderType: { limit: Record<string, never> } | { immediateOrCancel: Record<string, never> } | { postOnly: Record<string, never> } | { market: Record<string, never> } | { postOnlySlide: Record<string, never> }
                    PerpSelfTradeBehavior: { decrementTake: Record<string, never> } | { cancelProvide: Record<string, never> } | { abortTransaction: Record<string, never> }
                    PlatformFee: { feeAccount: string; feeBps: number }

                    Type declaration

                    • feeAccount: string
                    • feeBps: number
                    PriceImpact: { avg_price_impact_percent: number; max_price_impact_percent: number; min_price_impact_percent: number; p90: number; p95: number; side: "bid" | "ask"; symbol: string; target_amount: number }

                    Type declaration

                    • avg_price_impact_percent: number
                    • max_price_impact_percent: number
                    • min_price_impact_percent: number
                    • p90: number
                    • p95: number
                    • side: "bid" | "ask"
                    • symbol: string
                    • target_amount: number
                    QuoteMintToReferrer: Map<TokenMintAddress, string>
                    Routes: { bestRoute: RouteInfo | null; routes: RouteInfo[] }

                    Type declaration

                    SendTransactionOpts: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>
                    Serum3OrderType: { limit: Record<string, never> } | { immediateOrCancel: Record<string, never> } | { postOnly: Record<string, never> }
                    Serum3SelfTradeBehavior: { decrementTake: Record<string, never> } | { cancelProvide: Record<string, never> } | { abortTransaction: Record<string, never> }
                    Serum3Side: { bid: Record<string, never> } | { ask: Record<string, never> }
                    StablePriceModel: { delayAccumulatorPrice: number; delayAccumulatorTime: number; delayGrowthLimit: number; delayIntervalSeconds: number; delayPrices: number[]; lastDelayIntervalIndex: number; lastUpdateTimestamp: BN; stableGrowthLimit: number; stablePrice: number }

                    Type declaration

                    • delayAccumulatorPrice: number
                    • delayAccumulatorTime: number
                    • delayGrowthLimit: number
                    • delayIntervalSeconds: number
                    • delayPrices: number[]
                    • lastDelayIntervalIndex: number
                    • lastUpdateTimestamp: BN
                    • stableGrowthLimit: number
                    • stablePrice: number
                    Token: { address: string; chainId: number; decimals: number; extensions: { coingeckoId?: string }; logoURI: string; name: string; symbol: string; tags: string[] }

                    Type declaration

                    • address: string
                    • chainId: number
                    • decimals: number
                    • extensions: { coingeckoId?: string }
                      • Optional coingeckoId?: string
                    • logoURI: string
                    • name: string
                    • symbol: string
                    • tags: string[]
                    TokenConditionalSwapDisplayPriceStyle: { sellTokenPerBuyToken: Record<string, never> } | { buyTokenPerSellToken: Record<string, never> }
                    TokenConditionalSwapIntention: { unknown: Record<string, never> } | { stopLoss: Record<string, never> } | { takeProfit: Record<string, never> }
                    TokenIndex: number & As<"token-index">
                    TokenMintAddress: string

                    Variables

                    COMPUTE_BUDGET_PROGRAM_ID: PublicKey = ...
                    I64_MAX_BN: BN = ...
                    IDL: MangoV4 = ...
                    JUPITER: { V3: PublicKey; V4: PublicKey; V6: PublicKey } = ...

                    Type declaration

                    • V3: PublicKey
                    • V4: PublicKey
                    • V6: PublicKey
                    MANGO_ROUTER_API_URL: "https://api.mngo.cloud/router/v1" = 'https://api.mngo.cloud/router/v1'
                    MANGO_V4_ID: { devnet: PublicKey; mainnet-beta: PublicKey; testnet: PublicKey } = ...

                    Type declaration

                    • devnet: PublicKey
                    • mainnet-beta: PublicKey
                    • testnet: PublicKey
                    MANGO_V4_MAIN_GROUP: PublicKey = ...
                    MAX_RECENT_PRIORITY_FEE_ACCOUNTS: 128 = 128
                    NullPerpEditParams: PerpEditParams = ...
                    NullTokenEditParams: TokenEditParams = ...
                    OPENBOOK_PROGRAM_ID: { devnet: PublicKey; mainnet-beta: PublicKey } = ...

                    Type declaration

                    • devnet: PublicKey
                    • mainnet-beta: PublicKey
                    QUOTE_DECIMALS: 6 = 6
                    TrueIxGateParams: IxGateParams = ...
                    U64_MAX_BN: BN = ...
                    USDC_MINT: PublicKey = ...

                    Functions

                    • RUST_I64_MAX(): BN
                    • RUST_I64_MIN(): BN
                    • RUST_U64_MAX(): BN
                    • bpsToDecimal(bps: number): number
                    • buildFetch(): Promise<(input: RequestInfo | URL, init?: RequestInit) => Promise<Response>>
                    • buildIxGate(p: IxGateParams): BN
                    • buildVersionedTx(provider: AnchorProvider, ix: TransactionInstruction[], additionalSigners?: Signer[], alts?: AddressLookupTableAccount[]): Promise<VersionedTransaction>
                    • Parameters

                      • provider: AnchorProvider
                      • ix: TransactionInstruction[]
                      • additionalSigners: Signer[] = []
                      • alts: AddressLookupTableAccount[] = []

                      Returns Promise<VersionedTransaction>

                    • computePriceImpactOnJup(pis: PriceImpact[], usdcAmount: number, tokenName: string): number
                    • +@blockworks-foundation/mango-v4
                      Options
                      All
                      • Public
                      • Public/Protected
                      • All
                      Menu

                      @blockworks-foundation/mango-v4

                      Index

                      Namespaces

                      Enumerations

                      Classes

                      Interfaces

                      Type aliases

                      Variables

                      Functions

                      Type aliases

                      AccountInfoMap: Map<string, AccountInfo<Buffer> | null>
                      AmmLabel: "Aldrin" | "Crema" | "Cropper" | "Cykura" | "DeltaFi" | "GooseFX" | "Invariant" | "Lifinity" | "Lifinity V2" | "Marinade" | "Mercurial" | "Meteora" | "Raydium" | "Raydium CLMM" | "Saber" | "Serum" | "Orca" | "Step" | "Penguin" | "Saros" | "Stepn" | "Orca (Whirlpools)" | "Sencha" | "Saber (Decimals)" | "Dradex" | "Balansol" | "Openbook" | "Unknown"
                      BookSideType: { bids: Record<string, never> } | { asks: Record<string, never> }
                      FlashLoanType: { unknown: Record<string, never> } | { swap: Record<string, never> }
                      MangoV4: { accounts: [{ name: "bank"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 16] } }, { name: "mint"; type: "publicKey" }, { name: "vault"; type: "publicKey" }, { name: "oracle"; type: "publicKey" }, { name: "oracleConfig"; type: { defined: "OracleConfig" } }, { name: "stablePriceModel"; type: { defined: "StablePriceModel" } }, { docs: ["the index used to scale the value of an IndexedPosition", "TODO: should always be >= 0, add checks?"]; name: "depositIndex"; type: { defined: "I80F48" } }, { name: "borrowIndex"; type: { defined: "I80F48" } }, { docs: ["deposits/borrows for this bank", "", "Note that these may become negative. It's perfectly fine for users to borrow one one bank", "(increasing indexed_borrows there) and paying back on another (possibly decreasing indexed_borrows", "below zero).", "", "The vault amount is not deducable from these values.", "", "These become meaningful when summed over all banks (like in update_index_and_rate)."]; name: "indexedDeposits"; type: { defined: "I80F48" } }, { name: "indexedBorrows"; type: { defined: "I80F48" } }, { name: "indexLastUpdated"; type: "u64" }, { name: "bankRateLastUpdated"; type: "u64" }, { name: "avgUtilization"; type: { defined: "I80F48" } }, { name: "adjustmentFactor"; type: { defined: "I80F48" } }, { docs: ["The unscaled borrow interest curve is defined as continuous piecewise linear with the points:", "", "- 0% util: zero_util_rate", "- util0% util: rate0", "- util1% util: rate1", "- 100% util: max_rate", "", "The final rate is this unscaled curve multiplied by interest_curve_scaling."]; name: "util0"; type: { defined: "I80F48" } }, { name: "rate0"; type: { defined: "I80F48" } }, { name: "util1"; type: { defined: "I80F48" } }, { name: "rate1"; type: { defined: "I80F48" } }, { docs: ["the 100% utilization rate", "", "This isn't the max_rate, since this still gets scaled by interest_curve_scaling,", "which is >=1."]; name: "maxRate"; type: { defined: "I80F48" } }, { docs: ["Fees collected over the lifetime of the bank", "", "See fees_withdrawn for how much of the fees was withdrawn.", "See collected_liquidation_fees for the (included) subtotal for liquidation related fees."]; name: "collectedFeesNative"; type: { defined: "I80F48" } }, { name: "loanOriginationFeeRate"; type: { defined: "I80F48" } }, { name: "loanFeeRate"; type: { defined: "I80F48" } }, { name: "maintAssetWeight"; type: { defined: "I80F48" } }, { name: "initAssetWeight"; type: { defined: "I80F48" } }, { name: "maintLiabWeight"; type: { defined: "I80F48" } }, { name: "initLiabWeight"; type: { defined: "I80F48" } }, { docs: ["Liquidation fee that goes to the liqor.", "", "Liquidation always involves two tokens, and the sum of the two configured fees is used.", "", "A fraction of the price, like 0.05 for a 5% fee during liquidation.", "", "See also platform_liquidation_fee."]; name: "liquidationFee"; type: { defined: "I80F48" } }, { name: "dust"; type: { defined: "I80F48" } }, { name: "flashLoanTokenAccountInitial"; type: "u64" }, { name: "flashLoanApprovedAmount"; type: "u64" }, { name: "tokenIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "mintDecimals"; type: "u8" }, { name: "bankNum"; type: "u32" }, { docs: ["The maximum utilization allowed when borrowing is 1-this value", "WARNING: Outdated name, kept for IDL compatibility"]; name: "minVaultToDepositsRatio"; type: "f64" }, { docs: ["Size in seconds of a net borrows window"]; name: "netBorrowLimitWindowSizeTs"; type: "u64" }, { docs: ["Timestamp at which the last net borrows window started"]; name: "lastNetBorrowsWindowStartTs"; type: "u64" }, { docs: ["Net borrow limit per window in quote native; set to -1 to disable."]; name: "netBorrowLimitPerWindowQuote"; type: "i64" }, { docs: ["Sum of all deposits and borrows in the last window, in native units."]; name: "netBorrowsInWindow"; type: "i64" }, { docs: ["Soft borrow limit in native quote", "", "Once the borrows on the bank exceed this quote value, init_liab_weight is scaled up.", "Set to f64::MAX to disable.", "", "See scaled_init_liab_weight()."]; name: "borrowWeightScaleStartQuote"; type: "f64" }, { docs: ["Limit for collateral of deposits in native quote", "", "Once the deposits in the bank exceed this quote value, init_asset_weight is scaled", "down to keep the total collateral value constant.", "Set to f64::MAX to disable.", "", "See scaled_init_asset_weight()."]; name: "depositWeightScaleStartQuote"; type: "f64" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { docs: ["If set to 1, deposits cannot be liquidated when an account is liquidatable.", "That means bankrupt accounts may still have assets of this type deposited."]; name: "disableAssetLiquidation"; type: "u8" }, { name: "padding"; type: { array: ["u8", 5] } }, { name: "feesWithdrawn"; type: "u64" }, { docs: ["Fees for the token conditional swap feature"]; name: "tokenConditionalSwapTakerFeeRate"; type: "f32" }, { name: "tokenConditionalSwapMakerFeeRate"; type: "f32" }, { name: "flashLoanSwapFeeRate"; type: "f32" }, { docs: ["Target utilization: If actual utilization is higher, scale up interest.", "If it's lower, scale down interest (if possible)"]; name: "interestTargetUtilization"; type: "f32" }, { docs: ["Current interest curve scaling, always >= 1.0", "", "Except when first migrating to having this field, then 0.0"]; name: "interestCurveScaling"; type: "f64" }, { docs: ["Largest amount of tokens that might be added the the bank based on", "serum open order execution."]; name: "potentialSerumTokens"; type: "u64" }, { docs: ["Start timestamp in seconds at which maint weights should start to change away", "from maint_asset_weight, maint_liab_weight towards _asset_target and _liab_target.", "If _start and _end and _duration_inv are 0, no shift is configured."]; name: "maintWeightShiftStart"; type: "u64" }, { docs: ["End timestamp in seconds until which the maint weights should reach the configured targets."]; name: "maintWeightShiftEnd"; type: "u64" }, { docs: ["Cache of the inverse of maint_weight_shift_end - maint_weight_shift_start,", "or zero if no shift is configured"]; name: "maintWeightShiftDurationInv"; type: { defined: "I80F48" } }, { docs: ["Maint asset weight to reach at _shift_end."]; name: "maintWeightShiftAssetTarget"; type: { defined: "I80F48" } }, { name: "maintWeightShiftLiabTarget"; type: { defined: "I80F48" } }, { docs: ["Oracle that may be used if the main oracle is stale or not confident enough.", "If this is Pubkey::default(), no fallback is available."]; name: "fallbackOracle"; type: "publicKey" }, { docs: ["zero means none, in token native"]; name: "depositLimit"; type: "u64" }, { docs: ["The unscaled borrow interest curve point for zero utilization.", "", "See util0, rate0, util1, rate1, max_rate"]; name: "zeroUtilRate"; type: { defined: "I80F48" } }, { docs: ["Additional to liquidation_fee, but goes to the group owner instead of the liqor"]; name: "platformLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Platform fees that were collected during liquidation (in native tokens)", "", "See also collected_fees_native and fees_withdrawn."]; name: "collectedLiquidationFees"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 1920] } }]; kind: "struct" } }, { name: "group"; type: { fields: [{ name: "creator"; type: "publicKey" }, { name: "groupNum"; type: "u32" }, { name: "admin"; type: "publicKey" }, { name: "fastListingAdmin"; type: "publicKey" }, { name: "mngoTokenIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { name: "insuranceVault"; type: "publicKey" }, { name: "insuranceMint"; type: "publicKey" }, { name: "bump"; type: "u8" }, { name: "testing"; type: "u8" }, { name: "version"; type: "u8" }, { name: "buybackFees"; type: "u8" }, { name: "buybackFeesMngoBonusFactor"; type: "f32" }, { name: "addressLookupTables"; type: { array: ["publicKey", 20] } }, { name: "securityAdmin"; type: "publicKey" }, { name: "depositLimitQuote"; type: "u64" }, { name: "ixGate"; type: "u128" }, { name: "buybackFeesSwapMangoAccount"; type: "publicKey" }, { docs: ["Number of seconds after which fees that could be used with the fees buyback feature expire.", "", "The actual expiry is staggered such that the fees users accumulate are always", "available for at least this interval - but may be available for up to twice this time.", "", "When set to 0, there's no expiry of buyback fees."]; name: "buybackFeesExpiryInterval"; type: "u64" }, { docs: ["Fast-listings are limited per week, this is the start of the current fast-listing interval", "in seconds since epoch"]; name: "fastListingIntervalStart"; type: "u64" }, { docs: ["Number of fast listings that happened this interval"]; name: "fastListingsInInterval"; type: "u16" }, { docs: ["Number of fast listings that are allowed per interval"]; name: "allowedFastListingsPerInterval"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 1812] } }]; kind: "struct" } }, { name: "mangoAccount"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "owner"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 32] } }, { name: "delegate"; type: "publicKey" }, { name: "accountNum"; type: "u32" }, { docs: ["Tracks that this account should be liquidated until init_health >= 0.", "", "Normally accounts can not be liquidated while maint_health >= 0. But when an account", "reaches maint_health < 0, liquidators will call a liquidation instruction and thereby", "set this flag. Now the account may be liquidated until init_health >= 0.", "", "Many actions should be disabled while the account is being liquidated, even if", "its maint health has recovered to positive. Creating new open orders would, for example,", "confuse liquidators."]; name: "beingLiquidated"; type: "u8" }, { docs: ["The account is currently inside a health region marked by HealthRegionBegin...HealthRegionEnd.", "", "Must never be set after a transaction ends."]; name: "inHealthRegion"; type: "u8" }, { name: "bump"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { name: "netDeposits"; type: "i64" }, { name: "perpSpotTransfers"; type: "i64" }, { docs: ["Init health as calculated during HealthReginBegin, rounded up."]; name: "healthRegionBeginInitHealth"; type: "i64" }, { name: "frozenUntil"; type: "u64" }, { docs: ["Fees usable with the \"fees buyback\" feature.", "This tracks the ones that accrued in the current expiry interval."]; name: "buybackFeesAccruedCurrent"; type: "u64" }, { docs: ["Fees buyback amount from the previous expiry interval."]; name: "buybackFeesAccruedPrevious"; type: "u64" }, { docs: ["End timestamp of the current expiry interval of the buyback fees amount."]; name: "buybackFeesExpiryTimestamp"; type: "u64" }, { docs: ["Next id to use when adding a token condition swap"]; name: "nextTokenConditionalSwapId"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 200] } }, { name: "headerVersion"; type: "u8" }, { name: "padding3"; type: { array: ["u8", 7] } }, { name: "padding4"; type: "u32" }, { name: "tokens"; type: { vec: { defined: "TokenPosition" } } }, { name: "padding5"; type: "u32" }, { name: "serum3"; type: { vec: { defined: "Serum3Orders" } } }, { name: "padding6"; type: "u32" }, { name: "perps"; type: { vec: { defined: "PerpPosition" } } }, { name: "padding7"; type: "u32" }, { name: "perpOpenOrders"; type: { vec: { defined: "PerpOpenOrder" } } }, { name: "padding8"; type: "u32" }, { name: "tokenConditionalSwaps"; type: { vec: { defined: "TokenConditionalSwap" } } }, { name: "reservedDynamic"; type: { array: ["u8", 64] } }]; kind: "struct" } }, { name: "mintInfo"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "tokenIndex"; type: "u16" }, { name: "groupInsuranceFund"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 5] } }, { name: "mint"; type: "publicKey" }, { name: "banks"; type: { array: ["publicKey", 6] } }, { name: "vaults"; type: { array: ["publicKey", 6] } }, { name: "oracle"; type: "publicKey" }, { name: "registrationTime"; type: "u64" }, { name: "fallbackOracle"; type: "publicKey" }, { name: "reserved"; type: { array: ["u8", 2528] } }]; kind: "struct" } }, { name: "openbookV2Market"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 2] } }, { name: "name"; type: { array: ["u8", 16] } }, { name: "openbookV2Program"; type: "publicKey" }, { name: "openbookV2MarketExternal"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "padding2"; type: { array: ["u8", 5] } }, { name: "registrationTime"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 512] } }]; kind: "struct" } }, { name: "openbookV2MarketIndexReservation"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 38] } }]; kind: "struct" } }, { name: "stubOracle"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "mint"; type: "publicKey" }, { name: "price"; type: { defined: "I80F48" } }, { name: "lastUpdateTs"; type: "i64" }, { name: "lastUpdateSlot"; type: "u64" }, { name: "deviation"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 104] } }]; kind: "struct" } }, { name: "bookSide"; type: { fields: [{ name: "roots"; type: { array: [{ defined: "OrderTreeRoot" }, 2] } }, { name: "reservedRoots"; type: { array: [{ defined: "OrderTreeRoot" }, 4] } }, { name: "reserved"; type: { array: ["u8", 256] } }, { name: "nodes"; type: { defined: "OrderTreeNodes" } }]; kind: "struct" } }, { name: "eventQueue"; type: { fields: [{ name: "header"; type: { defined: "EventQueueHeader" } }, { name: "buf"; type: { array: [{ defined: "AnyEvent" }, 488] } }, { name: "reserved"; type: { array: ["u8", 64] } }]; kind: "struct" } }, { name: "perpMarket"; type: { fields: [{ name: "group"; type: "publicKey" }, { docs: ["Token index that settlements happen in.", "", "Currently required to be 0, USDC. In the future settlement", "may be allowed to happen in other tokens."]; name: "settleTokenIndex"; type: "u16" }, { docs: ["Index of this perp market. Other data, like the MangoAccount's PerpPosition", "reference this market via this index. Unique for this group's perp markets."]; name: "perpMarketIndex"; type: "u16" }, { docs: ["Field used to contain the trusted_market flag and is now unused."]; name: "blocked1"; type: "u8" }, { docs: ["Is this market covered by the group insurance fund?"]; name: "groupInsuranceFund"; type: "u8" }, { docs: ["PDA bump"]; name: "bump"; type: "u8" }, { docs: ["Number of decimals used for the base token.", "", "Used to convert the oracle's price into a native/native price."]; name: "baseDecimals"; type: "u8" }, { docs: ["Name. Trailing zero bytes are ignored."]; name: "name"; type: { array: ["u8", 16] } }, { docs: ["Address of the BookSide account for bids"]; name: "bids"; type: "publicKey" }, { docs: ["Address of the BookSide account for asks"]; name: "asks"; type: "publicKey" }, { docs: ["Address of the EventQueue account"]; name: "eventQueue"; type: "publicKey" }, { docs: ["Oracle account address"]; name: "oracle"; type: "publicKey" }, { docs: ["Oracle configuration"]; name: "oracleConfig"; type: { defined: "OracleConfig" } }, { docs: ["Maintains a stable price based on the oracle price that is less volatile."]; name: "stablePriceModel"; type: { defined: "StablePriceModel" } }, { docs: ["Number of quote native in a quote lot. Must be a power of 10.", "", "Primarily useful for increasing the tick size on the market: A lot price", "of 1 becomes a native price of quote_lot_size/base_lot_size becomes a", "ui price of quote_lot_size*base_decimals/base_lot_size/quote_decimals."]; name: "quoteLotSize"; type: "i64" }, { docs: ["Number of base native in a base lot. Must be a power of 10.", "", "Example: If base decimals for the underlying asset is 6, base lot size", "is 100 and and base position lots is 10_000 then base position native is", "1_000_000 and base position ui is 1."]; name: "baseLotSize"; type: "i64" }, { docs: ["These weights apply to the base position. The quote position has", "no explicit weight (but may be covered by the overall pnl asset weight)."]; name: "maintBaseAssetWeight"; type: { defined: "I80F48" } }, { name: "initBaseAssetWeight"; type: { defined: "I80F48" } }, { name: "maintBaseLiabWeight"; type: { defined: "I80F48" } }, { name: "initBaseLiabWeight"; type: { defined: "I80F48" } }, { docs: ["Number of base lots currently active in the market. Always >= 0.", "", "Since this counts positive base lots and negative base lots, the more relevant", "number of open base lot pairs is half this value."]; name: "openInterest"; type: "i64" }, { docs: ["Total number of orders seen"]; name: "seqNum"; type: "u64" }, { docs: ["Timestamp in seconds that the market was registered at."]; name: "registrationTime"; type: "u64" }, { docs: ["Minimal funding rate per day, must be <= 0."]; name: "minFunding"; type: { defined: "I80F48" } }, { docs: ["Maximal funding rate per day, must be >= 0."]; name: "maxFunding"; type: { defined: "I80F48" } }, { docs: ["For funding, get the impact price this many base lots deep into the book."]; name: "impactQuantity"; type: "i64" }, { docs: ["Current long funding value. Increasing it means that every long base lot", "needs to pay that amount of quote native in funding.", "", "PerpPosition uses and tracks it settle funding. Updated by the perp", "keeper instruction."]; name: "longFunding"; type: { defined: "I80F48" } }, { docs: ["See long_funding."]; name: "shortFunding"; type: { defined: "I80F48" } }, { docs: ["timestamp that funding was last updated in"]; name: "fundingLastUpdated"; type: "u64" }, { docs: ["Fees", "Fee for base position liquidation"]; name: "baseLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Fee when matching maker orders. May be negative."]; name: "makerFee"; type: { defined: "I80F48" } }, { docs: ["Fee for taker orders, may not be negative."]; name: "takerFee"; type: { defined: "I80F48" } }, { docs: ["Fees accrued in native quote currency", "these are increased when new fees are paid and decreased when perp_settle_fees is called"]; name: "feesAccrued"; type: { defined: "I80F48" } }, { docs: ["Fees settled in native quote currency", "these are increased when perp_settle_fees is called, and never decreased"]; name: "feesSettled"; type: { defined: "I80F48" } }, { docs: ["Fee (in quote native) to charge for ioc orders"]; name: "feePenalty"; type: "f32" }, { docs: ["In native units of settlement token, given to each settle call above the", "settle_fee_amount_threshold if settling at least 1% of perp base pos value."]; name: "settleFeeFlat"; type: "f32" }, { docs: ["Pnl settlement amount needed to be eligible for the flat fee."]; name: "settleFeeAmountThreshold"; type: "f32" }, { docs: ["Fraction of pnl to pay out as fee if +pnl account has low health.", "(limited to 2x settle_fee_flat)"]; name: "settleFeeFractionLowHealth"; type: "f32" }, { docs: ["Controls the strictness of the settle limit.", "Set to a negative value to disable the limit.", "", "This factor applies to the settle limit in two ways", "- for the unrealized pnl settle limit, the factor is multiplied with the stable perp base value", "(i.e. limit_factor * base_native * stable_price)", "- when increasing the realized pnl settle limit (stored per PerpPosition), the factor is", "multiplied with the stable value of the perp pnl being realized", "(i.e. limit_factor * reduced_native * stable_price)", "", "See also PerpPosition::settle_pnl_limit_realized_trade"]; name: "settlePnlLimitFactor"; type: "f32" }, { name: "padding3"; type: { array: ["u8", 4] } }, { docs: ["Window size in seconds for the perp settlement limit"]; name: "settlePnlLimitWindowSizeTs"; type: "u64" }, { docs: ["If true, users may no longer increase their market exposure. Only actions", "that reduce their position are still allowed."]; name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding4"; type: { array: ["u8", 6] } }, { docs: ["Weights for full perp market health, if positive"]; name: "maintOverallAssetWeight"; type: { defined: "I80F48" } }, { name: "initOverallAssetWeight"; type: { defined: "I80F48" } }, { name: "positivePnlLiquidationFee"; type: { defined: "I80F48" } }, { name: "feesWithdrawn"; type: "u64" }, { docs: ["Additional to liquidation_fee, but goes to the group owner instead of the liqor"]; name: "platformLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Platform fees that were accrued during liquidation (in native tokens)", "", "These fees are also added to fees_accrued, this is just for bookkeeping the total", "liquidation fees that happened. So never decreases (different to fees_accrued)."]; name: "accruedLiquidationFees"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 1848] } }]; kind: "struct" } }, { name: "serum3Market"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 2] } }, { name: "name"; type: { array: ["u8", 16] } }, { name: "serumProgram"; type: "publicKey" }, { name: "serumMarketExternal"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "padding2"; type: { array: ["u8", 1] } }, { docs: ["Limit orders must be <= oracle * (1+band) and >= oracle / (1+band)", "", "Zero value is the default due to migration and disables the limit,", "same as f32::MAX."]; name: "oraclePriceBand"; type: "f32" }, { name: "registrationTime"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { name: "serum3MarketIndexReservation"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 38] } }]; kind: "struct" } }]; errors: [{ code: 6000; msg: ""; name: "SomeError" }, { code: 6001; msg: ""; name: "NotImplementedError" }, { code: 6002; msg: "checked math error"; name: "MathError" }, { code: 6003; msg: ""; name: "UnexpectedOracle" }, { code: 6004; msg: "oracle type cannot be determined"; name: "UnknownOracleType" }, { code: 6005; msg: ""; name: "InvalidFlashLoanTargetCpiProgram" }, { code: 6006; msg: "health must be positive"; name: "HealthMustBePositive" }, { code: 6007; msg: "health must be positive or not decrease"; name: "HealthMustBePositiveOrIncrease" }, { code: 6008; msg: "health must be negative"; name: "HealthMustBeNegative" }, { code: 6009; msg: "the account is bankrupt"; name: "IsBankrupt" }, { code: 6010; msg: "the account is not bankrupt"; name: "IsNotBankrupt" }, { code: 6011; msg: "no free token position index"; name: "NoFreeTokenPositionIndex" }, { code: 6012; msg: "no free serum3 open orders index"; name: "NoFreeSerum3OpenOrdersIndex" }, { code: 6013; msg: "no free perp position index"; name: "NoFreePerpPositionIndex" }, { code: 6014; msg: "serum3 open orders exist already"; name: "Serum3OpenOrdersExistAlready" }, { code: 6015; msg: "bank vault has insufficent funds"; name: "InsufficentBankVaultFunds" }, { code: 6016; msg: "account is currently being liquidated"; name: "BeingLiquidated" }, { code: 6017; msg: "invalid bank"; name: "InvalidBank" }, { code: 6018; msg: "account profitability is mismatched"; name: "ProfitabilityMismatch" }, { code: 6019; msg: "cannot settle with self"; name: "CannotSettleWithSelf" }, { code: 6020; msg: "perp position does not exist"; name: "PerpPositionDoesNotExist" }, { code: 6021; msg: "max settle amount must be greater than zero"; name: "MaxSettleAmountMustBeGreaterThanZero" }, { code: 6022; msg: "the perp position has open orders or unprocessed fill events"; name: "HasOpenPerpOrders" }, { code: 6023; msg: "an oracle does not reach the confidence threshold"; name: "OracleConfidence" }, { code: 6024; msg: "an oracle is stale"; name: "OracleStale" }, { code: 6025; msg: "settlement amount must always be positive"; name: "SettlementAmountMustBePositive" }, { code: 6026; msg: "bank utilization has reached limit"; name: "BankBorrowLimitReached" }, { code: 6027; msg: "bank net borrows has reached limit - this is an intermittent error - the limit will reset regularly"; name: "BankNetBorrowsLimitReached" }, { code: 6028; msg: "token position does not exist"; name: "TokenPositionDoesNotExist" }, { code: 6029; msg: "token deposits into accounts that are being liquidated must bring their health above the init threshold"; name: "DepositsIntoLiquidatingMustRecover" }, { code: 6030; msg: "token is in reduce only mode"; name: "TokenInReduceOnlyMode" }, { code: 6031; msg: "market is in reduce only mode"; name: "MarketInReduceOnlyMode" }, { code: 6032; msg: "group is halted"; name: "GroupIsHalted" }, { code: 6033; msg: "the perp position has non-zero base lots"; name: "PerpHasBaseLots" }, { code: 6034; msg: "there are open or unsettled serum3 orders"; name: "HasOpenOrUnsettledSerum3Orders" }, { code: 6035; msg: "has liquidatable token position"; name: "HasLiquidatableTokenPosition" }, { code: 6036; msg: "has liquidatable perp base position"; name: "HasLiquidatablePerpBasePosition" }, { code: 6037; msg: "has liquidatable positive perp pnl"; name: "HasLiquidatablePositivePerpPnl" }, { code: 6038; msg: "account is frozen"; name: "AccountIsFrozen" }, { code: 6039; msg: "Init Asset Weight can't be negative"; name: "InitAssetWeightCantBeNegative" }, { code: 6040; msg: "has open perp taker fills"; name: "HasOpenPerpTakerFills" }, { code: 6041; msg: "deposit crosses the current group deposit limit"; name: "DepositLimit" }, { code: 6042; msg: "instruction is disabled"; name: "IxIsDisabled" }, { code: 6043; msg: "no liquidatable perp base position"; name: "NoLiquidatablePerpBasePosition" }, { code: 6044; msg: "perp order id not found on the orderbook"; name: "PerpOrderIdNotFound" }, { code: 6045; msg: "HealthRegions allow only specific instructions between Begin and End"; name: "HealthRegionBadInnerInstruction" }, { code: 6046; msg: "token is in force close"; name: "TokenInForceClose" }, { code: 6047; msg: "incorrect number of health accounts"; name: "InvalidHealthAccountCount" }, { code: 6048; msg: "would self trade"; name: "WouldSelfTrade" }, { code: 6049; msg: "token conditional swap oracle price is not in execution range"; name: "TokenConditionalSwapPriceNotInRange" }, { code: 6050; msg: "token conditional swap is expired"; name: "TokenConditionalSwapExpired" }, { code: 6051; msg: "token conditional swap is not available yet"; name: "TokenConditionalSwapNotStarted" }, { code: 6052; msg: "token conditional swap was already started"; name: "TokenConditionalSwapAlreadyStarted" }, { code: 6053; msg: "token conditional swap it not set"; name: "TokenConditionalSwapNotSet" }, { code: 6054; msg: "token conditional swap trigger did not reach min_buy_token"; name: "TokenConditionalSwapMinBuyTokenNotReached" }, { code: 6055; msg: "token conditional swap cannot pay incentive"; name: "TokenConditionalSwapCantPayIncentive" }, { code: 6056; msg: "token conditional swap taker price is too low"; name: "TokenConditionalSwapTakerPriceTooLow" }, { code: 6057; msg: "token conditional swap index and id don't match"; name: "TokenConditionalSwapIndexIdMismatch" }, { code: 6058; msg: "token conditional swap volume is too small compared to the cost of starting it"; name: "TokenConditionalSwapTooSmallForStartIncentive" }, { code: 6059; msg: "token conditional swap type cannot be started"; name: "TokenConditionalSwapTypeNotStartable" }, { code: 6060; msg: "a bank in the health account list should be writable but is not"; name: "HealthAccountBankNotWritable" }, { code: 6061; msg: "the market does not allow limit orders too far from the current oracle value"; name: "Serum3PriceBandExceeded" }, { code: 6062; msg: "deposit crosses the token's deposit limit"; name: "BankDepositLimit" }, { code: 6063; msg: "delegates can only withdraw to the owner's associated token account"; name: "DelegateWithdrawOnlyToOwnerAta" }, { code: 6064; msg: "delegates can only withdraw if they close the token position"; name: "DelegateWithdrawMustClosePosition" }, { code: 6065; msg: "delegates can only withdraw small amounts"; name: "DelegateWithdrawSmall" }, { code: 6066; msg: "The provided CLMM oracle is not valid"; name: "InvalidCLMMOracle" }, { code: 6067; msg: "invalid usdc/usd feed provided for the CLMM oracle"; name: "InvalidFeedForCLMMOracle" }, { code: 6068; msg: "Pyth USDC/USD or SOL/USD feed not found (required by CLMM oracle)"; name: "MissingFeedForCLMMOracle" }, { code: 6069; msg: "the asset does not allow liquidation"; name: "TokenAssetLiquidationDisabled" }]; events: [{ fields: [{ index: false; name: "initHealth"; type: { defined: "I80F48" } }, { index: false; name: "maintHealth"; type: { defined: "I80F48" } }, { index: false; name: "equity"; type: { defined: "Equity" } }]; name: "MangoAccountData" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "basePosition"; type: "i64" }, { index: false; name: "quotePosition"; type: "i128" }, { index: false; name: "longSettledFunding"; type: "i128" }, { index: false; name: "shortSettledFunding"; type: "i128" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }]; name: "PerpBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "indexedPosition"; type: "i128" }, { index: false; name: "depositIndex"; type: "i128" }, { index: false; name: "borrowIndex"; type: "i128" }]; name: "TokenBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetail" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetailV2" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetailV3" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "signer"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "quantity"; type: "u64" }, { index: false; name: "price"; type: "i128" }]; name: "WithdrawLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "signer"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "quantity"; type: "u64" }, { index: false; name: "price"; type: "i128" }]; name: "DepositLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerOrderId"; type: "u128" }, { index: false; name: "makerFee"; type: "i128" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerOrderId"; type: "u128" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "i128" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }]; name: "FillLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerClientOrderId"; type: "u64" }, { index: false; name: "makerFee"; type: "f32" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "f32" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }]; name: "FillLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerClientOrderId"; type: "u64" }, { index: false; name: "makerFee"; type: "f32" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "f32" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }, { index: false; name: "makerClosedPnl"; type: "f64" }, { index: false; name: "takerClosedPnl"; type: "f64" }]; name: "FillLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "oracleSlot"; type: "u64" }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "feesAccrued"; type: "i128" }, { index: false; name: "feesSettled"; type: "i128" }, { index: false; name: "openInterest"; type: "i64" }, { index: false; name: "instantaneousFundingRate"; type: "i128" }]; name: "PerpUpdateFundingLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "oracleSlot"; type: "u64" }, { index: false; name: "oracleConfidence"; type: "i128" }, { index: false; name: "oracleType"; type: { defined: "OracleType" } }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "feesAccrued"; type: "i128" }, { index: false; name: "feesSettled"; type: "i128" }, { index: false; name: "openInterest"; type: "i64" }, { index: false; name: "instantaneousFundingRate"; type: "i128" }]; name: "PerpUpdateFundingLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "depositIndex"; type: "i128" }, { index: false; name: "borrowIndex"; type: "i128" }, { index: false; name: "avgUtilization"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "collectedFees"; type: "i128" }, { index: false; name: "loanFeeRate"; type: "i128" }, { index: false; name: "totalBorrows"; type: "i128" }, { index: false; name: "totalDeposits"; type: "i128" }, { index: false; name: "borrowRate"; type: "i128" }, { index: false; name: "depositRate"; type: "i128" }]; name: "UpdateIndexLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "rate0"; type: "i128" }, { index: false; name: "rate1"; type: "i128" }, { index: false; name: "maxRate"; type: "i128" }]; name: "UpdateRateLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "rate0"; type: "i128" }, { index: false; name: "util0"; type: "i128" }, { index: false; name: "rate1"; type: "i128" }, { index: false; name: "util1"; type: "i128" }, { index: false; name: "maxRate"; type: "i128" }, { index: false; name: "curveScaling"; type: "f64" }, { index: false; name: "targetUtilization"; type: "f32" }]; name: "UpdateRateLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransfer"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "bankruptcy"; type: "bool" }]; name: "TokenLiqWithTokenLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransferFromLiqee"; type: "i128" }, { index: false; name: "assetTransferToLiqor"; type: "i128" }, { index: false; name: "assetLiquidationFee"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "bankruptcy"; type: "bool" }]; name: "TokenLiqWithTokenLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "baseTotal"; type: "u64" }, { index: false; name: "baseFree"; type: "u64" }, { index: false; name: "quoteTotal"; type: "u64" }, { index: false; name: "quoteFree"; type: "u64" }, { index: false; name: "referrerRebatesAccrued"; type: "u64" }]; name: "Serum3OpenOrdersBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "baseTotal"; type: "u64" }, { index: false; name: "baseFree"; type: "u64" }, { index: false; name: "quoteTotal"; type: "u64" }, { index: false; name: "quoteFree"; type: "u64" }, { index: false; name: "referrerRebatesAccrued"; type: "u64" }]; name: "Serum3OpenOrdersBalanceLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "loanOriginationFee"; type: "i128" }, { index: false; name: "instruction"; type: { defined: "LoanOriginationFeeInstruction" } }]; name: "WithdrawLoanOriginationFeeLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "loanAmount"; type: "i128" }, { index: false; name: "loanOriginationFee"; type: "i128" }, { index: false; name: "instruction"; type: { defined: "LoanOriginationFeeInstruction" } }, { index: false; name: "price"; type: { option: "i128" } }]; name: "WithdrawLoanLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "initialLiabNative"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "insuranceTokenIndex"; type: "u16" }, { index: false; name: "insuranceTransfer"; type: "i128" }, { index: false; name: "socializedLoss"; type: "i128" }, { index: false; name: "startingLiabDepositIndex"; type: "i128" }, { index: false; name: "endingLiabDepositIndex"; type: "i128" }]; name: "TokenLiqBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "cumulativeDepositInterest"; type: "f64" }, { index: false; name: "cumulativeBorrowInterest"; type: "f64" }]; name: "DeactivateTokenPositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "cumulativeLongFunding"; type: "f64" }, { index: false; name: "cumulativeShortFunding"; type: "f64" }, { index: false; name: "makerVolume"; type: "u64" }, { index: false; name: "takerVolume"; type: "u64" }, { index: false; name: "perpSpotTransfers"; type: "i64" }]; name: "DeactivatePerpPositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mint"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "mintDecimals"; type: "u8" }, { index: false; name: "oracle"; type: "publicKey" }, { index: false; name: "mintInfo"; type: "publicKey" }]; name: "TokenMetaDataLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mint"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "mintDecimals"; type: "u8" }, { index: false; name: "oracle"; type: "publicKey" }, { index: false; name: "fallbackOracle"; type: "publicKey" }, { index: false; name: "mintInfo"; type: "publicKey" }]; name: "TokenMetaDataLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarket"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "baseDecimals"; type: "u8" }, { index: false; name: "baseLotSize"; type: "i64" }, { index: false; name: "quoteLotSize"; type: "i64" }, { index: false; name: "oracle"; type: "publicKey" }]; name: "PerpMarketMetaDataLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "serumMarket"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "serumProgram"; type: "publicKey" }, { index: false; name: "serumProgramExternal"; type: "publicKey" }]; name: "Serum3RegisterMarketLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "baseTransfer"; type: "i64" }, { index: false; name: "quoteTransfer"; type: "i128" }, { index: false; name: "pnlTransfer"; type: "i128" }, { index: false; name: "pnlSettleLimitTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpLiqBaseOrPositivePnlLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "baseTransferLiqee"; type: "i64" }, { index: false; name: "quoteTransferLiqee"; type: "i128" }, { index: false; name: "quoteTransferLiqor"; type: "i128" }, { index: false; name: "quotePlatformFee"; type: "i128" }, { index: false; name: "pnlTransfer"; type: "i128" }, { index: false; name: "pnlSettleLimitTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpLiqBaseOrPositivePnlLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "insuranceTransfer"; type: "i128" }, { index: false; name: "socializedLoss"; type: "i128" }, { index: false; name: "startingLongFunding"; type: "i128" }, { index: false; name: "startingShortFunding"; type: "i128" }, { index: false; name: "endingLongFunding"; type: "i128" }, { index: false; name: "endingShortFunding"; type: "i128" }]; name: "PerpLiqBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }]; name: "PerpLiqNegativePnlOrBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccountA"; type: "publicKey" }, { index: false; name: "mangoAccountB"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }, { index: false; name: "settler"; type: "publicKey" }, { index: false; name: "fee"; type: "i128" }]; name: "PerpSettlePnlLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }]; name: "PerpSettleFeesLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "buybackFees"; type: "i128" }, { index: false; name: "buybackMngo"; type: "i128" }, { index: false; name: "mngoBuybackPrice"; type: "i128" }, { index: false; name: "oraclePrice"; type: "i128" }]; name: "AccountBuybackFeesWithMngoLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "seqNum"; type: "u64" }]; name: "FilledPerpOrderLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "totalBaseLotsTaken"; type: "i64" }, { index: false; name: "totalBaseLotsDecremented"; type: "i64" }, { index: false; name: "totalQuoteLotsTaken"; type: "i64" }, { index: false; name: "totalQuoteLotsDecremented"; type: "i64" }, { index: false; name: "takerFeesPaid"; type: "i128" }, { index: false; name: "feePenalty"; type: "i128" }]; name: "PerpTakerTradeLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "accountA"; type: "publicKey" }, { index: false; name: "accountB"; type: "publicKey" }, { index: false; name: "baseTransfer"; type: "i64" }, { index: false; name: "quoteTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpForceClosePositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransfer"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "feeFactor"; type: "i128" }]; name: "TokenForceCloseBorrowsWithTokenLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransferFromLiqee"; type: "i128" }, { index: false; name: "assetTransferToLiqor"; type: "i128" }, { index: false; name: "assetLiquidationFee"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "feeFactor"; type: "i128" }]; name: "TokenForceCloseBorrowsWithTokenLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }]; name: "TokenConditionalSwapCreateLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }]; name: "TokenConditionalSwapCreateLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }, { index: false; name: "tcsType"; type: "u8" }, { index: false; name: "startTimestamp"; type: "u64" }, { index: false; name: "durationSeconds"; type: "u64" }]; name: "TokenConditionalSwapCreateLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }]; name: "TokenConditionalSwapTriggerLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }]; name: "TokenConditionalSwapTriggerLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }, { index: false; name: "tcsType"; type: "u8" }, { index: false; name: "startTimestamp"; type: "u64" }]; name: "TokenConditionalSwapTriggerLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }]; name: "TokenConditionalSwapCancelLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "caller"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "incentiveTokenIndex"; type: "u16" }, { index: false; name: "incentiveAmount"; type: "u64" }]; name: "TokenConditionalSwapStartLog" }]; instructions: [{ accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: true; name: "admin" }]; args: []; name: "adminTokenWithdrawFees" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: true; name: "admin" }]; args: []; name: "adminPerpWithdrawFees" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Group" }, { kind: "account"; path: "creator"; type: "publicKey" }, { kind: "arg"; path: "group_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "creator" }, { isMut: false; isSigner: false; name: "insuranceMint" }, { isMut: true; isSigner: false; name: "insuranceVault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "InsuranceVault" }, { kind: "account"; path: "group"; type: "publicKey" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "groupNum"; type: "u32" }, { name: "testing"; type: "u8" }, { name: "version"; type: "u8" }]; name: "groupCreate" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "adminOpt"; type: { option: "publicKey" } }, { name: "fastListingAdminOpt"; type: { option: "publicKey" } }, { name: "securityAdminOpt"; type: { option: "publicKey" } }, { name: "testingOpt"; type: { option: "u8" } }, { name: "versionOpt"; type: { option: "u8" } }, { name: "depositLimitQuoteOpt"; type: { option: "u64" } }, { name: "buybackFeesOpt"; type: { option: "bool" } }, { name: "buybackFeesBonusFactorOpt"; type: { option: "f32" } }, { name: "buybackFeesSwapMangoAccountOpt"; type: { option: "publicKey" } }, { name: "mngoTokenIndexOpt"; type: { option: "u16" } }, { name: "buybackFeesExpiryIntervalOpt"; type: { option: "u64" } }, { name: "allowedFastListingsPerIntervalOpt"; type: { option: "u16" } }]; name: "groupEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault", "admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "destination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }]; name: "groupWithdrawInsuranceFund" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "ixGate"; type: "u128" }]; name: "ixGateSet" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin", "insurance_vault"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "groupClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "mintInfo"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MintInfo" }, { kind: "account"; path: "group"; type: "publicKey" }, { account: "Mint"; kind: "account"; path: "mint"; type: "publicKey" }] } }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "fallbackOracle" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oracleConfig"; type: { defined: "OracleConfigParams" } }, { name: "interestRateParams"; type: { defined: "InterestRateParams" } }, { name: "loanFeeRate"; type: "f32" }, { name: "loanOriginationFeeRate"; type: "f32" }, { name: "maintAssetWeight"; type: "f32" }, { name: "initAssetWeight"; type: "f32" }, { name: "maintLiabWeight"; type: "f32" }, { name: "initLiabWeight"; type: "f32" }, { name: "liquidationFee"; type: "f32" }, { name: "stablePriceDelayIntervalSeconds"; type: "u32" }, { name: "stablePriceDelayGrowthLimit"; type: "f32" }, { name: "stablePriceGrowthLimit"; type: "f32" }, { name: "minVaultToDepositsRatio"; type: "f64" }, { name: "netBorrowLimitWindowSizeTs"; type: "u64" }, { name: "netBorrowLimitPerWindowQuote"; type: "i64" }, { name: "borrowWeightScaleStartQuote"; type: "f64" }, { name: "depositWeightScaleStartQuote"; type: "f64" }, { name: "reduceOnly"; type: "u8" }, { name: "tokenConditionalSwapTakerFeeRate"; type: "f32" }, { name: "tokenConditionalSwapMakerFeeRate"; type: "f32" }, { name: "flashLoanSwapFeeRate"; type: "f32" }, { name: "interestCurveScaling"; type: "f32" }, { name: "interestTargetUtilization"; type: "f32" }, { name: "groupInsuranceFund"; type: "bool" }, { name: "depositLimit"; type: "u64" }, { name: "zeroUtilRate"; type: "f32" }, { name: "platformLiquidationFee"; type: "f32" }, { name: "disableAssetLiquidation"; type: "bool" }]; name: "tokenRegister" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "mintInfo"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MintInfo" }, { kind: "account"; path: "group"; type: "publicKey" }, { account: "Mint"; kind: "account"; path: "mint"; type: "publicKey" }] } }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "fallbackOracle" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "name"; type: "string" }]; name: "tokenRegisterTrustless" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group"] }, { docs: ["The oracle account is optional and only used when reset_stable_price is set.", ""]; isMut: false; isSigner: false; name: "oracle" }, { docs: ["The fallback oracle account is optional and only used when set_fallback_oracle is true.", ""]; isMut: false; isSigner: false; name: "fallbackOracle" }]; args: [{ name: "oracleOpt"; type: { option: "publicKey" } }, { name: "oracleConfigOpt"; type: { option: { defined: "OracleConfigParams" } } }, { name: "groupInsuranceFundOpt"; type: { option: "bool" } }, { name: "interestRateParamsOpt"; type: { option: { defined: "InterestRateParams" } } }, { name: "loanFeeRateOpt"; type: { option: "f32" } }, { name: "loanOriginationFeeRateOpt"; type: { option: "f32" } }, { name: "maintAssetWeightOpt"; type: { option: "f32" } }, { name: "initAssetWeightOpt"; type: { option: "f32" } }, { name: "maintLiabWeightOpt"; type: { option: "f32" } }, { name: "initLiabWeightOpt"; type: { option: "f32" } }, { name: "liquidationFeeOpt"; type: { option: "f32" } }, { name: "stablePriceDelayIntervalSecondsOpt"; type: { option: "u32" } }, { name: "stablePriceDelayGrowthLimitOpt"; type: { option: "f32" } }, { name: "stablePriceGrowthLimitOpt"; type: { option: "f32" } }, { name: "minVaultToDepositsRatioOpt"; type: { option: "f64" } }, { name: "netBorrowLimitPerWindowQuoteOpt"; type: { option: "i64" } }, { name: "netBorrowLimitWindowSizeTsOpt"; type: { option: "u64" } }, { name: "borrowWeightScaleStartQuoteOpt"; type: { option: "f64" } }, { name: "depositWeightScaleStartQuoteOpt"; type: { option: "f64" } }, { name: "resetStablePrice"; type: "bool" }, { name: "resetNetBorrowLimit"; type: "bool" }, { name: "reduceOnlyOpt"; type: { option: "u8" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "tokenConditionalSwapTakerFeeRateOpt"; type: { option: "f32" } }, { name: "tokenConditionalSwapMakerFeeRateOpt"; type: { option: "f32" } }, { name: "flashLoanSwapFeeRateOpt"; type: { option: "f32" } }, { name: "interestCurveScalingOpt"; type: { option: "f32" } }, { name: "interestTargetUtilizationOpt"; type: { option: "f32" } }, { name: "maintWeightShiftStartOpt"; type: { option: "u64" } }, { name: "maintWeightShiftEndOpt"; type: { option: "u64" } }, { name: "maintWeightShiftAssetTargetOpt"; type: { option: "f32" } }, { name: "maintWeightShiftLiabTargetOpt"; type: { option: "f32" } }, { name: "maintWeightShiftAbort"; type: "bool" }, { name: "setFallbackOracle"; type: "bool" }, { name: "depositLimitOpt"; type: { option: "u64" } }, { name: "zeroUtilRateOpt"; type: { option: "f32" } }, { name: "platformLiquidationFeeOpt"; type: { option: "f32" } }, { name: "disableAssetLiquidationOpt"; type: { option: "bool" } }]; name: "tokenEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: false; isSigner: false; name: "existingBank"; relations: ["group", "mint"] }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "arg"; path: "bank_num"; type: "u32" }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "arg"; path: "bank_num"; type: "u32" }] } }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group", "mint"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "bankNum"; type: "u32" }]; name: "tokenAddBank" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "dustVault" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "tokenDeregister" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "mintInfo"; relations: ["oracle", "group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "instructions" }]; args: []; name: "tokenUpdateIndexAndRate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MangoAccount" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "owner"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "accountNum"; type: "u32" }, { name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "name"; type: "string" }]; name: "accountCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MangoAccount" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "owner"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "accountNum"; type: "u32" }, { name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "tokenConditionalSwapCount"; type: "u8" }, { name: "name"; type: "string" }]; name: "accountCreateV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }]; name: "accountExpand" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "tokenConditionalSwapCount"; type: "u8" }]; name: "accountExpandV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: []; name: "accountSizeMigration" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }]; args: [{ name: "nameOpt"; type: { option: "string" } }, { name: "delegateOpt"; type: { option: "publicKey" } }, { name: "temporaryDelegateOpt"; type: { option: "publicKey" } }, { name: "temporaryDelegateExpiryOpt"; type: { option: "u64" } }]; name: "accountEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "freeze"; type: "bool" }]; name: "accountToggleFreeze" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "forceClose"; type: "bool" }]; name: "accountClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "daoAccount"; relations: ["group"] }, { isMut: true; isSigner: false; name: "mngoBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "mngoOracle" }, { isMut: true; isSigner: false; name: "feesBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "feesOracle" }]; args: [{ name: "maxBuybackUsd"; type: "u64" }]; name: "accountBuybackFeesWithMngo" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: true; name: "oracle" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "price"; type: { defined: "I80F48" } }]; name: "stubOracleCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "stubOracleClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }]; args: [{ name: "price"; type: { defined: "I80F48" } }]; name: "stubOracleSet" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }]; args: [{ name: "price"; type: { defined: "I80F48" } }, { name: "lastUpdateSlot"; type: "u64" }, { name: "deviation"; type: { defined: "I80F48" } }]; name: "stubOracleSetTest" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: true; name: "tokenAuthority" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "reduceOnly"; type: "bool" }]; name: "tokenDeposit" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: true; name: "tokenAuthority" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "reduceOnly"; type: "bool" }]; name: "tokenDepositIntoExisting" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "allowBorrow"; type: "bool" }]; name: "tokenWithdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }]; args: [{ name: "loanAmounts"; type: { vec: "u64" } }]; name: "flashLoanBegin" }, { accounts: [{ isMut: false; isSigner: false; name: "account" }, { isMut: true; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "inputMint" }, { isMut: false; isSigner: false; name: "outputMint" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "associatedTokenProgram" }, { docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }]; args: [{ name: "loanAmount"; type: "u64" }]; docs: ["A version of flash_loan_begin that's specialized for swaps and needs fewer", "bytes in the transaction"]; name: "flashLoanSwapBegin" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "flashLoanEnd" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "numLoans"; type: "u8" }, { name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "flashLoanEndV2" }, { accounts: [{ docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }, { isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }]; args: []; name: "healthRegionBegin" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }]; args: []; name: "healthRegionEnd" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { docs: ["group admin or fast listing admin, checked at #1"]; isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "serumMarket"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3Market" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "serum_market_external"; type: "publicKey" }] } }, { isMut: true; isSigner: false; name: "indexReservation"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3Index" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "market_index"; type: "u16" }] } }, { isMut: false; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "marketIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oraclePriceBand"; type: "f32" }]; docs: ["", "Serum", ""]; name: "serum3RegisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "market"; relations: ["group"] }]; args: [{ name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "oraclePriceBandOpt"; type: { option: "f32" } }]; name: "serum3EditMarket" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "serumMarket"; relations: ["group"] }, { isMut: true; isSigner: false; name: "indexReservation"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "serum3DeregisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "openOrders"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3OO" }, { kind: "account"; path: "account"; type: "publicKey" }, { kind: "account"; path: "serum_market"; type: "publicKey" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: []; name: "serum3CreateOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: true; isSigner: false; name: "solDestination" }]; args: []; name: "serum3CloseOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: { defined: "Serum3SelfTradeBehavior" } }, { name: "orderType"; type: { defined: "Serum3OrderType" } }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "serum3PlaceOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: { defined: "Serum3SelfTradeBehavior" } }, { name: "orderType"; type: { defined: "Serum3OrderType" } }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; docs: ["requires the receiver_bank in the health account list to be writable"]; name: "serum3PlaceOrderV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "orderId"; type: "u128" }]; name: "serum3CancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "clientOrderId"; type: "u64" }]; name: "serum3CancelOrderByClientOrderId" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "limit"; type: "u8" }]; name: "serum3CancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; docs: ["Deprecated instruction that used to settles all free funds from the OpenOrders account", "into the MangoAccount.", "", "Any serum \"referrer rebates\" (ui fees) are considered Mango fees."]; name: "serum3SettleFunds" }, { accounts: [{ accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; name: "v1" }, { accounts: [{ isMut: false; isSigner: false; name: "quoteOracle" }, { isMut: false; isSigner: false; name: "baseOracle" }]; name: "v2" }]; args: [{ name: "feesToDao"; type: "bool" }]; docs: ["Like Serum3SettleFunds, but `fees_to_dao` determines if referrer rebates are considered fees", "or are credited to the MangoAccount."]; name: "serum3SettleFundsV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "limit"; type: "u8" }]; name: "serum3LiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "liqTokenWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: false; isSigner: false; name: "liabMintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "liqTokenBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "tokenLiqWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: "u64" }]; name: "tokenForceCloseBorrowsWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: false; isSigner: false; name: "liabMintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "tokenLiqBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "perpMarket"; pda: { seeds: [{ kind: "const"; type: "string"; value: "PerpMarket" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "perp_market_index"; type: "u16" }] } }, { docs: ["Accounts are initialised by client,", "anchor discriminator is set first when ix exits,"]; isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "perpMarketIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oracleConfig"; type: { defined: "OracleConfigParams" } }, { name: "baseDecimals"; type: "u8" }, { name: "quoteLotSize"; type: "i64" }, { name: "baseLotSize"; type: "i64" }, { name: "maintBaseAssetWeight"; type: "f32" }, { name: "initBaseAssetWeight"; type: "f32" }, { name: "maintBaseLiabWeight"; type: "f32" }, { name: "initBaseLiabWeight"; type: "f32" }, { name: "maintOverallAssetWeight"; type: "f32" }, { name: "initOverallAssetWeight"; type: "f32" }, { name: "baseLiquidationFee"; type: "f32" }, { name: "makerFee"; type: "f32" }, { name: "takerFee"; type: "f32" }, { name: "minFunding"; type: "f32" }, { name: "maxFunding"; type: "f32" }, { name: "impactQuantity"; type: "i64" }, { name: "groupInsuranceFund"; type: "bool" }, { name: "feePenalty"; type: "f32" }, { name: "settleFeeFlat"; type: "f32" }, { name: "settleFeeAmountThreshold"; type: "f32" }, { name: "settleFeeFractionLowHealth"; type: "f32" }, { name: "settleTokenIndex"; type: "u16" }, { name: "settlePnlLimitFactor"; type: "f32" }, { name: "settlePnlLimitWindowSizeTs"; type: "u64" }, { name: "positivePnlLiquidationFee"; type: "f32" }, { name: "platformLiquidationFee"; type: "f32" }]; docs: ["", "Perps", ""]; name: "perpCreateMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group"] }, { docs: ["The oracle account is optional and only used when reset_stable_price is set.", ""]; isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "oracleOpt"; type: { option: "publicKey" } }, { name: "oracleConfigOpt"; type: { option: { defined: "OracleConfigParams" } } }, { name: "baseDecimalsOpt"; type: { option: "u8" } }, { name: "maintBaseAssetWeightOpt"; type: { option: "f32" } }, { name: "initBaseAssetWeightOpt"; type: { option: "f32" } }, { name: "maintBaseLiabWeightOpt"; type: { option: "f32" } }, { name: "initBaseLiabWeightOpt"; type: { option: "f32" } }, { name: "maintOverallAssetWeightOpt"; type: { option: "f32" } }, { name: "initOverallAssetWeightOpt"; type: { option: "f32" } }, { name: "baseLiquidationFeeOpt"; type: { option: "f32" } }, { name: "makerFeeOpt"; type: { option: "f32" } }, { name: "takerFeeOpt"; type: { option: "f32" } }, { name: "minFundingOpt"; type: { option: "f32" } }, { name: "maxFundingOpt"; type: { option: "f32" } }, { name: "impactQuantityOpt"; type: { option: "i64" } }, { name: "groupInsuranceFundOpt"; type: { option: "bool" } }, { name: "feePenaltyOpt"; type: { option: "f32" } }, { name: "settleFeeFlatOpt"; type: { option: "f32" } }, { name: "settleFeeAmountThresholdOpt"; type: { option: "f32" } }, { name: "settleFeeFractionLowHealthOpt"; type: { option: "f32" } }, { name: "stablePriceDelayIntervalSecondsOpt"; type: { option: "u32" } }, { name: "stablePriceDelayGrowthLimitOpt"; type: { option: "f32" } }, { name: "stablePriceGrowthLimitOpt"; type: { option: "f32" } }, { name: "settlePnlLimitFactorOpt"; type: { option: "f32" } }, { name: "settlePnlLimitWindowSizeTsOpt"; type: { option: "u64" } }, { name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "resetStablePrice"; type: "bool" }, { name: "positivePnlLiquidationFeeOpt"; type: { option: "f32" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "platformLiquidationFeeOpt"; type: { option: "f32" } }]; name: "perpEditMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "perpCloseMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "perpMarket"; relations: ["group"] }]; args: []; name: "perpDeactivatePosition" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceLots"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }]; name: "perpPlaceOrder"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceLots"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "selfTradeBehavior"; type: { defined: "SelfTradeBehavior" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }]; name: "perpPlaceOrderV2"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceOffsetLots"; type: "i64" }, { name: "pegLimit"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }, { name: "maxOracleStalenessSlots"; type: "i32" }]; name: "perpPlaceOrderPegged"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceOffsetLots"; type: "i64" }, { name: "pegLimit"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "selfTradeBehavior"; type: { defined: "SelfTradeBehavior" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }, { name: "maxOracleStalenessSlots"; type: "i32" }]; name: "perpPlaceOrderPeggedV2"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "orderId"; type: "u128" }]; name: "perpCancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "clientOrderId"; type: "u64" }]; name: "perpCancelOrderByClientOrderId" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "perpCancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "sideOption"; type: { option: { defined: "Side" } } }, { name: "limit"; type: "u8" }]; name: "perpCancelAllOrdersBySide" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "event_queue"] }, { isMut: true; isSigner: false; name: "eventQueue" }]; args: [{ name: "limit"; type: "u64" }]; name: "perpConsumeEvents" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: false; isSigner: false; name: "oracle" }]; args: []; name: "perpUpdateFunding" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "settler"; relations: ["group"] }, { isMut: false; isSigner: true; name: "settlerOwner" }, { isMut: false; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "accountA"; relations: ["group"] }, { isMut: true; isSigner: false; name: "accountB"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: []; name: "perpSettlePnl" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "accountA"; relations: ["group"] }, { isMut: true; isSigner: false; name: "accountB"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }]; args: []; name: "perpForceClosePosition" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: [{ name: "maxSettleAmount"; type: "u64" }]; name: "perpSettleFees" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: [{ name: "maxBaseTransfer"; type: "i64" }, { name: "maxPnlTransfer"; type: "u64" }]; name: "perpLiqBaseOrPositivePnl" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "perpLiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: "u64" }]; name: "perpLiqNegativePnlOrBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "insuranceBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "insuranceBankVault" }, { isMut: false; isSigner: false; name: "insuranceOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: "u64" }]; name: "perpLiqNegativePnlOrBankruptcyV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "pricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }]; name: "tokenConditionalSwapCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "pricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "intention"; type: { defined: "TokenConditionalSwapIntention" } }]; name: "tokenConditionalSwapCreateV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "maxPricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "intention"; type: { defined: "TokenConditionalSwapIntention" } }, { name: "durationSeconds"; type: "u64" }]; name: "tokenConditionalSwapCreatePremiumAuction" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceStart"; type: "f64" }, { name: "priceEnd"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "startTimestamp"; type: "u64" }, { name: "durationSeconds"; type: "u64" }]; name: "tokenConditionalSwapCreateLinearAuction" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { docs: ["The bank's token_index is checked at #1"]; isMut: true; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }]; name: "tokenConditionalSwapCancel" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }, { name: "maxBuyTokenToLiqee"; type: "u64" }, { name: "maxSellTokenToLiqor"; type: "u64" }]; name: "tokenConditionalSwapTrigger" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }, { name: "maxBuyTokenToLiqee"; type: "u64" }, { name: "maxSellTokenToLiqor"; type: "u64" }, { name: "minBuyToken"; type: "u64" }, { name: "minTakerPrice"; type: "f32" }]; name: "tokenConditionalSwapTriggerV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }]; name: "tokenConditionalSwapStart" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "addressLookupTable" }]; args: [{ name: "index"; type: "u8" }]; name: "altSet" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: true; name: "payer" }, { isMut: true; isSigner: false; name: "addressLookupTable" }]; args: [{ name: "index"; type: "u8" }, { name: "newAddresses"; type: { vec: "publicKey" } }]; name: "altExtend" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "account"; relations: ["group"] }]; args: []; docs: ["Warning, this instruction is for testing purposes only!"]; name: "computeAccountData" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openbookV2Market"; pda: { seeds: [{ kind: "const"; type: "string"; value: "OpenbookV2Market" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "openbook_v2_market_external"; type: "publicKey" }] } }, { isMut: true; isSigner: false; name: "indexReservation"; pda: { seeds: [{ kind: "const"; type: "string"; value: "OpenbookV2Index" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "market_index"; type: "u16" }] } }, { isMut: false; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "marketIndex"; type: "u16" }, { name: "name"; type: "string" }]; docs: ["", "OpenbookV2", ""]; name: "openbookV2RegisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "market"; relations: ["group"] }]; args: [{ name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "forceCloseOpt"; type: { option: "bool" } }]; name: "openbookV2EditMarket" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "openbookV2Market"; relations: ["group"] }, { isMut: true; isSigner: false; name: "indexReservation"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "openbookV2DeregisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openOrders"; pda: { programId: { kind: "account"; path: "openbook_v2_program"; type: "publicKey" }; seeds: [{ kind: "const"; type: "string"; value: "OpenOrders" }, { kind: "account"; path: "openbook_v2_market"; type: "publicKey" }, { kind: "account"; path: "openbook_v2_market_external"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "accountNum"; type: "u32" }]; name: "openbookV2CreateOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: true; isSigner: false; name: "solDestination" }]; args: []; name: "openbookV2CloseOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market" }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: "u8" }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: "u8" }, { name: "orderType"; type: "u8" }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "openbookV2PlaceOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: "u8" }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: "u8" }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "openbookV2PlaceTakerOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "side"; type: "u8" }, { name: "orderId"; type: "u128" }]; name: "openbookV2CancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "quoteOracle" }, { isMut: false; isSigner: false; name: "baseOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "feesToDao"; type: "bool" }]; name: "openbookV2SettleFunds" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "limit"; type: "u8" }]; name: "openbookV2LiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "openbookV2CancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "dummy" }]; args: []; docs: ["", "benchmark", ""]; name: "benchmark" }]; name: "mango_v4"; types: [{ name: "InterestRateParams"; type: { fields: [{ name: "util0"; type: "f32" }, { name: "rate0"; type: "f32" }, { name: "util1"; type: "f32" }, { name: "rate1"; type: "f32" }, { name: "maxRate"; type: "f32" }, { name: "adjustmentFactor"; type: "f32" }]; kind: "struct" } }, { name: "Equity"; type: { fields: [{ name: "tokens"; type: { vec: { defined: "TokenEquity" } } }, { name: "perps"; type: { vec: { defined: "PerpEquity" } } }]; kind: "struct" } }, { name: "TokenEquity"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { name: "value"; type: { defined: "I80F48" } }]; kind: "struct" } }, { name: "PerpEquity"; type: { fields: [{ name: "perpMarketIndex"; type: "u16" }, { name: "value"; type: { defined: "I80F48" } }]; kind: "struct" } }, { name: "FlashLoanTokenDetail"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { name: "changeAmount"; type: "i128" }, { name: "loan"; type: "i128" }, { name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }]; kind: "struct" } }, { name: "FlashLoanTokenDetailV2"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { docs: ["The amount by which the user's token position changed at the end", "", "So if the user repaid the approved_amount in full, it'd be 0.", "", "Does NOT include the loan_origination_fee or deposit_fee, so the true", "change is `change_amount - loan_origination_fee - deposit_fee`."]; name: "changeAmount"; type: "i128" }, { docs: ["The amount that was a loan (<= approved_amount, depends on user's deposits)"]; name: "loan"; type: "i128" }, { docs: ["The fee paid on the loan, not included in `loan` or `change_amount`"]; name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }, { docs: ["Deposit fee paid for positive change_amount.", "", "Not factored into change_amount."]; name: "depositFee"; type: "i128" }, { docs: ["The amount that was transfered out to the user"]; name: "approvedAmount"; type: "u64" }]; kind: "struct" } }, { name: "FlashLoanTokenDetailV3"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { docs: ["The amount by which the user's token position changed at the end", "", "So if the user repaid the approved_amount in full, it'd be 0.", "", "Does NOT include the loan_origination_fee or deposit_fee, so the true", "change is `change_amount - loan_origination_fee - deposit_fee`."]; name: "changeAmount"; type: "i128" }, { docs: ["The amount that was a loan (<= approved_amount, depends on user's deposits)"]; name: "loan"; type: "i128" }, { docs: ["The fee paid on the loan, not included in `loan` or `change_amount`"]; name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }, { docs: ["Swap fee paid on the in token of a swap.", "", "Not factored into change_amount."]; name: "swapFee"; type: "i128" }, { docs: ["The amount that was transfered out to the user"]; name: "approvedAmount"; type: "u64" }]; kind: "struct" } }, { name: "TokenPosition"; type: { fields: [{ docs: ["The deposit_index (if positive) or borrow_index (if negative) scaled position"]; name: "indexedPosition"; type: { defined: "I80F48" } }, { docs: ["index into Group.tokens"]; name: "tokenIndex"; type: "u16" }, { docs: ["incremented when a market requires this position to stay alive"]; name: "inUseCount"; type: "u16" }, { name: "padding"; type: { array: ["u8", 4] } }, { name: "previousIndex"; type: { defined: "I80F48" } }, { name: "cumulativeDepositInterest"; type: "f64" }, { name: "cumulativeBorrowInterest"; type: "f64" }, { name: "reserved"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { name: "Serum3Orders"; type: { fields: [{ name: "openOrders"; type: "publicKey" }, { docs: ["Tracks the amount of borrows that have flowed into the serum open orders account.", "These borrows did not have the loan origination fee applied, and that may happen", "later (in serum3_settle_funds) if we can guarantee that the funds were used.", "In particular a place-on-book, cancel, settle should not cost fees."]; name: "baseBorrowsWithoutFee"; type: "u64" }, { name: "quoteBorrowsWithoutFee"; type: "u64" }, { name: "marketIndex"; type: "u16" }, { docs: ["Store the base/quote token index, so health computations don't need", "to get passed the static SerumMarket to find which tokens a market", "uses and look up the correct oracles."]; name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { docs: ["Track something like the highest open bid / lowest open ask, in native/native units.", "", "Tracking it exactly isn't possible since we don't see fills. So instead track", "the min/max of the _placed_ bids and asks.", "", "The value is reset in serum3_place_order when a new order is placed without an", "existing one on the book.", "", "0 is a special \"unset\" state."]; name: "highestPlacedBidInv"; type: "f64" }, { name: "lowestPlacedAsk"; type: "f64" }, { docs: ["An overestimate of the amount of tokens that might flow out of the open orders account.", "", "The bank still considers these amounts user deposits (see Bank::potential_serum_tokens)", "and that value needs to be updated in conjunction with these numbers.", "", "This estimation is based on the amount of tokens in the open orders account", "(see update_bank_potential_tokens() in serum3_place_order and settle)"]; name: "potentialBaseTokens"; type: "u64" }, { name: "potentialQuoteTokens"; type: "u64" }, { docs: ["Track lowest bid/highest ask, same way as for highest bid/lowest ask.", "", "0 is a special \"unset\" state."]; name: "lowestPlacedBidInv"; type: "f64" }, { name: "highestPlacedAsk"; type: "f64" }, { name: "reserved"; type: { array: ["u8", 16] } }]; kind: "struct" } }, { name: "PerpPosition"; type: { fields: [{ name: "marketIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { docs: ["Index of the current settle pnl limit window"]; name: "settlePnlLimitWindow"; type: "u32" }, { docs: ["Amount of realized trade pnl and unrealized pnl that was already settled this window.", "", "Will be negative when negative pnl was settled.", "", "Note that this will be adjusted for bookkeeping reasons when the realized_trade settle", "limitchanges and is not useable for actually tracking how much pnl was settled", "on balance."]; name: "settlePnlLimitSettledInCurrentWindowNative"; type: "i64" }, { docs: ["Active position size, measured in base lots"]; name: "basePositionLots"; type: "i64" }, { docs: ["Active position in oracle quote native. At the same time this is 1:1 a settle_token native amount.", "", "Example: Say there's a perp market on the BTC/USD price using SOL for settlement. The user buys", "one long contract for $20k, then base = 1, quote = -20k. The price goes to $21k. Now their", "unsettled pnl is (1 * 21k - 20k) __SOL__ = 1000 SOL. This is because the perp contract arbitrarily", "decides that each unit of price difference creates 1 SOL worth of settlement.", "(yes, causing 1 SOL of settlement for each $1 price change implies a lot of extra leverage; likely", "there should be an extra configurable scaling factor before we use this for cases like that)"]; name: "quotePositionNative"; type: { defined: "I80F48" } }, { docs: ["Tracks what the position is to calculate average entry & break even price"]; name: "quoteRunningNative"; type: "i64" }, { docs: ["Already settled long funding"]; name: "longSettledFunding"; type: { defined: "I80F48" } }, { docs: ["Already settled short funding"]; name: "shortSettledFunding"; type: { defined: "I80F48" } }, { docs: ["Base lots in open bids"]; name: "bidsBaseLots"; type: "i64" }, { docs: ["Base lots in open asks"]; name: "asksBaseLots"; type: "i64" }, { docs: ["Amount of base lots on the EventQueue waiting to be processed"]; name: "takerBaseLots"; type: "i64" }, { docs: ["Amount of quote lots on the EventQueue waiting to be processed"]; name: "takerQuoteLots"; type: "i64" }, { docs: ["Cumulative long funding in quote native units.", "If the user paid $1 in funding for a long position, this would be 1e6.", "Beware of the sign!", "", "(Display only)"]; name: "cumulativeLongFunding"; type: "f64" }, { docs: ["Cumulative short funding in quote native units", "If the user paid $1 in funding for a short position, this would be -1e6.", "", "(Display only)"]; name: "cumulativeShortFunding"; type: "f64" }, { docs: ["Cumulative maker volume in quote native units", "", "(Display only)"]; name: "makerVolume"; type: "u64" }, { docs: ["Cumulative taker volume in quote native units", "", "(Display only)"]; name: "takerVolume"; type: "u64" }, { docs: ["Cumulative number of quote native units transfered from the perp position", "to the settle token spot position.", "", "For example, if the user settled $1 of positive pnl into their USDC spot", "position, this would be 1e6.", "", "(Display only)"]; name: "perpSpotTransfers"; type: "i64" }, { docs: ["The native average entry price for the base lots of the current position.", "Reset to 0 when the base position reaches or crosses 0."]; name: "avgEntryPricePerBaseLot"; type: "f64" }, { docs: ["Deprecated field: Amount of pnl that was realized by bringing the base position closer to 0."]; name: "deprecatedRealizedTradePnlNative"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl that can be settled once.", "", "- The value is signed: a negative number means negative pnl can be settled.", "- A settlement in the right direction will decrease this amount.", "", "Typically added for fees, funding and liquidation."]; name: "oneshotSettlePnlAllowance"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl that can be settled in each settle window.", "", "- Unsigned, the settlement can happen in both directions. Value is >= 0.", "- Previously stored a similar value that was signed, so in migration cases", "this value can be negative and should be .abs()ed.", "- If this value exceeds the current stable-upnl, it should be decreased,", "see apply_recurring_settle_pnl_allowance_constraint()", "", "When the base position is reduced, the settle limit contribution from the reduced", "base position is materialized into this value. When the base position increases,", "some of the allowance is taken away.", "", "This also gets increased when a liquidator takes over pnl."]; name: "recurringSettlePnlAllowance"; type: "i64" }, { docs: ["Trade pnl, fees, funding that were added over the current position's lifetime.", "", "Reset when the position changes sign or goes to zero.", "Not decreased by settling.", "", "This is tracked for display purposes: this value plus the difference between entry", "price and current price of the base position is the overall pnl."]; name: "realizedPnlForPositionNative"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 88] } }]; kind: "struct" } }, { name: "PerpOpenOrder"; type: { fields: [{ name: "sideAndTree"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 1] } }, { name: "market"; type: "u16" }, { name: "padding2"; type: { array: ["u8", 4] } }, { name: "clientId"; type: "u64" }, { name: "id"; type: "u128" }, { name: "quantity"; type: "i64" }, { name: "reserved"; type: { array: ["u8", 56] } }]; kind: "struct" } }, { name: "MangoAccountFixed"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "owner"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 32] } }, { name: "delegate"; type: "publicKey" }, { name: "accountNum"; type: "u32" }, { name: "beingLiquidated"; type: "u8" }, { name: "inHealthRegion"; type: "u8" }, { name: "bump"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { name: "netDeposits"; type: "i64" }, { name: "perpSpotTransfers"; type: "i64" }, { name: "healthRegionBeginInitHealth"; type: "i64" }, { name: "frozenUntil"; type: "u64" }, { name: "buybackFeesAccruedCurrent"; type: "u64" }, { name: "buybackFeesAccruedPrevious"; type: "u64" }, { name: "buybackFeesExpiryTimestamp"; type: "u64" }, { name: "nextTokenConditionalSwapId"; type: "u64" }, { name: "temporaryDelegate"; type: "publicKey" }, { name: "temporaryDelegateExpiry"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 160] } }]; kind: "struct" } }, { name: "OracleConfig"; type: { fields: [{ name: "confFilter"; type: { defined: "I80F48" } }, { name: "maxStalenessSlots"; type: "i64" }, { name: "reserved"; type: { array: ["u8", 72] } }]; kind: "struct" } }, { name: "OracleConfigParams"; type: { fields: [{ name: "confFilter"; type: "f32" }, { name: "maxStalenessSlots"; type: { option: "u32" } }]; kind: "struct" } }, { docs: ["InnerNodes and LeafNodes compose the binary tree of orders.", "", "Each InnerNode has exactly two children, which are either InnerNodes themselves,", "or LeafNodes. The children share the top `prefix_len` bits of `key`. The left", "child has a 0 in the next bit, and the right a 1."]; name: "InnerNode"; type: { fields: [{ name: "tag"; type: "u8" }, { name: "padding"; type: { array: ["u8", 3] } }, { docs: ["number of highest `key` bits that all children share", "e.g. if it's 2, the two highest bits of `key` will be the same on all children"]; name: "prefixLen"; type: "u32" }, { docs: ["only the top `prefix_len` bits of `key` are relevant"]; name: "key"; type: "u128" }, { docs: ["indexes into `BookSide::nodes`"]; name: "children"; type: { array: ["u32", 2] } }, { docs: ["The earliest expiry timestamp for the left and right subtrees.", "", "Needed to be able to find and remove expired orders without having to", "iterate through the whole bookside."]; name: "childEarliestExpiry"; type: { array: ["u64", 2] } }, { name: "reserved"; type: { array: ["u8", 72] } }]; kind: "struct" } }, { docs: ["LeafNodes represent an order in the binary tree"]; name: "LeafNode"; type: { fields: [{ docs: ["NodeTag"]; name: "tag"; type: "u8" }, { docs: ["Index into the owning MangoAccount's PerpOpenOrders"]; name: "ownerSlot"; type: "u8" }, { docs: ["PostOrderType, this was added for TradingView move order"]; name: "orderType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { docs: ["Time in seconds after `timestamp` at which the order expires.", "A value of 0 means no expiry."]; name: "timeInForce"; type: "u16" }, { name: "padding2"; type: { array: ["u8", 2] } }, { docs: ["The binary tree key, see new_node_key()"]; name: "key"; type: "u128" }, { docs: ["Address of the owning MangoAccount"]; name: "owner"; type: "publicKey" }, { docs: ["Number of base lots to buy or sell, always >=1"]; name: "quantity"; type: "i64" }, { docs: ["The time the order was placed"]; name: "timestamp"; type: "u64" }, { docs: ["If the effective price of an oracle pegged order exceeds this limit,", "it will be considered invalid and may be removed.", "", "Only applicable in the oracle_pegged OrderTree"]; name: "pegLimit"; type: "i64" }, { docs: ["User defined id for this order, used in FillEvents"]; name: "clientOrderId"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 32] } }]; kind: "struct" } }, { name: "AnyNode"; type: { fields: [{ name: "tag"; type: "u8" }, { name: "data"; type: { array: ["u8", 119] } }]; kind: "struct" } }, { name: "OrderTreeRoot"; type: { fields: [{ name: "maybeNode"; type: "u32" }, { name: "leafCount"; type: "u32" }]; kind: "struct" } }, { docs: ["A binary tree on AnyNode::key()", "", "The key encodes the price in the top 64 bits."]; name: "OrderTreeNodes"; type: { fields: [{ name: "orderTreeType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 3] } }, { name: "bumpIndex"; type: "u32" }, { name: "freeListLen"; type: "u32" }, { name: "freeListHead"; type: "u32" }, { name: "reserved"; type: { array: ["u8", 512] } }, { name: "nodes"; type: { array: [{ defined: "AnyNode" }, 1024] } }]; kind: "struct" } }, { name: "EventQueueHeader"; type: { fields: [{ name: "head"; type: "u32" }, { name: "count"; type: "u32" }, { name: "seqNum"; type: "u64" }]; kind: "struct" } }, { name: "AnyEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 207] } }]; kind: "struct" } }, { name: "FillEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "takerSide"; type: "u8" }, { name: "makerOut"; type: "u8" }, { name: "makerSlot"; type: "u8" }, { name: "padding"; type: { array: ["u8", 4] } }, { name: "timestamp"; type: "u64" }, { name: "seqNum"; type: "u64" }, { name: "maker"; type: "publicKey" }, { name: "padding2"; type: { array: ["u8", 32] } }, { name: "makerTimestamp"; type: "u64" }, { name: "taker"; type: "publicKey" }, { name: "padding3"; type: { array: ["u8", 16] } }, { name: "takerClientOrderId"; type: "u64" }, { name: "makerOrderId"; type: "u128" }, { name: "price"; type: "i64" }, { name: "quantity"; type: "i64" }, { name: "makerClientOrderId"; type: "u64" }, { name: "makerFee"; type: "f32" }, { name: "takerFee"; type: "f32" }, { name: "reserved"; type: { array: ["u8", 8] } }]; kind: "struct" } }, { name: "OutEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "side"; type: "u8" }, { name: "ownerSlot"; type: "u8" }, { name: "padding0"; type: { array: ["u8", 5] } }, { name: "timestamp"; type: "u64" }, { name: "seqNum"; type: "u64" }, { name: "owner"; type: "publicKey" }, { name: "quantity"; type: "i64" }, { name: "orderId"; type: "u128" }, { name: "padding1"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { docs: ["Maintains a \"stable_price\" based on the oracle price.", "", "The stable price follows the oracle price, but its relative rate of", "change is limited (to `stable_growth_limit`) and futher reduced if", "the oracle price is far from the `delay_price`.", "", "Conceptually the `delay_price` is itself a time delayed", "(`24 * delay_interval_seconds`, assume 24h) and relative rate of change limited", "function of the oracle price. It is implemented as averaging the oracle", "price over every `delay_interval_seconds` (assume 1h) and then applying the", "`delay_growth_limit` between intervals."]; name: "StablePriceModel"; type: { fields: [{ docs: ["Current stable price to use in health"]; name: "stablePrice"; type: "f64" }, { name: "lastUpdateTimestamp"; type: "u64" }, { docs: ["Stored delay_price for each delay_interval.", "If we want the delay_price to be 24h delayed, we would store one for each hour.", "This is used in a cyclical way: We use the maximally-delayed value at delay_interval_index", "and once enough time passes to move to the next delay interval, that gets overwritten and", "we use the next one."]; name: "delayPrices"; type: { array: ["f64", 24] } }, { docs: ["The delay price is based on an average over each delay_interval. The contributions", "to the average are summed up here."]; name: "delayAccumulatorPrice"; type: "f64" }, { docs: ["Accumulating the total time for the above average."]; name: "delayAccumulatorTime"; type: "u32" }, { docs: ["Length of a delay_interval"]; name: "delayIntervalSeconds"; type: "u32" }, { docs: ["Maximal relative difference between two delay_price in consecutive intervals."]; name: "delayGrowthLimit"; type: "f32" }, { docs: ["Maximal per-second relative difference of the stable price.", "It gets further reduced if stable and delay price disagree."]; name: "stableGrowthLimit"; type: "f32" }, { docs: ["The delay_interval_index that update() was last called on."]; name: "lastDelayIntervalIndex"; type: "u8" }, { docs: ["If set to 1, the stable price will reset on the next non-zero price it sees."]; name: "resetOnNonzeroPrice"; type: "u8" }, { name: "padding"; type: { array: ["u8", 6] } }, { name: "reserved"; type: { array: ["u8", 48] } }]; kind: "struct" } }, { name: "TokenConditionalSwap"; type: { fields: [{ name: "id"; type: "u64" }, { docs: ["maximum amount of native tokens to buy or sell"]; name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { docs: ["how many native tokens were already bought/sold"]; name: "bought"; type: "u64" }, { name: "sold"; type: "u64" }, { docs: ["timestamp until which the conditional swap is valid"]; name: "expiryTimestamp"; type: "u64" }, { docs: ["The lower or starting price:", "- For FixedPremium or PremiumAuctions, it's the lower end of the price range:", "the tcs can only be triggered if the oracle price exceeds this value.", "- For LinearAuctions it's the starting price that's offered at start_timestamp.", "", "The price is always in \"sell_token per buy_token\" units, which can be computed", "by dividing the buy token price by the sell token price.", "", "For FixedPremium or PremiumAuctions:", "", "The price must exceed this threshold to allow execution.", "", "This threshold is compared to the \"sell_token per buy_token\" oracle price.", "If that price is >= lower_limit and <= upper_limit the tcs may be executable.", "", "Example: Stop loss to get out of a SOL long: The user bought SOL at 20 USDC/SOL", "and wants to stop loss at 18 USDC/SOL. They'd set buy_token=USDC, sell_token=SOL", "so the reference price is in SOL/USDC units. Set price_lower_limit=toNative(1/18)", "and price_upper_limit=toNative(1/10). Also set allow_borrows=false.", "", "Example: Want to buy SOL with USDC if the price falls below 22 USDC/SOL.", "buy_token=SOL, sell_token=USDC, reference price is in USDC/SOL units. Set", "price_upper_limit=toNative(22), price_lower_limit=0."]; name: "priceLowerLimit"; type: "f64" }, { docs: ["Parallel to price_lower_limit, but an upper limit / auction end price."]; name: "priceUpperLimit"; type: "f64" }, { docs: ["The premium to pay over oracle price to incentivize execution."]; name: "pricePremiumRate"; type: "f64" }, { docs: ["The taker receives only premium_price * (1 - taker_fee_rate)"]; name: "takerFeeRate"; type: "f32" }, { docs: ["The maker has to pay premium_price * (1 + maker_fee_rate)"]; name: "makerFeeRate"; type: "f32" }, { docs: ["indexes of tokens for the swap"]; name: "buyTokenIndex"; type: "u16" }, { name: "sellTokenIndex"; type: "u16" }, { docs: ["If this struct is in use. (tcs are stored in a static-length array)"]; name: "isConfigured"; type: "u8" }, { docs: ["may token purchases create deposits? (often users just want to get out of a borrow)"]; name: "allowCreatingDeposits"; type: "u8" }, { docs: ["may token selling create borrows? (often users just want to get out of a long)"]; name: "allowCreatingBorrows"; type: "u8" }, { docs: ["The stored prices are always \"sell token per buy token\", but if the user", "used \"buy token per sell token\" when creating the tcs order, we should continue", "to show them prices in that way.", "", "Stores a TokenConditionalSwapDisplayPriceStyle enum value"]; name: "displayPriceStyle"; type: "u8" }, { docs: ["The intention the user had when placing this order, display-only", "", "Stores a TokenConditionalSwapIntention enum value"]; name: "intention"; type: "u8" }, { docs: ["Stores a TokenConditionalSwapType enum value"]; name: "tcsType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 6] } }, { docs: ["In seconds since epoch. 0 means not-started.", "", "FixedPremium: Time of first trigger call. No other effect.", "PremiumAuction: Time of start or first trigger call. Can continue to trigger once started.", "LinearAuction: Set during creation, auction starts with price_lower_limit at this timestamp."]; name: "startTimestamp"; type: "u64" }, { docs: ["Duration of the auction mechanism", "", "FixedPremium: ignored", "PremiumAuction: time after start that the premium needs to scale to price_premium_rate", "LinearAuction: time after start to go from price_lower_limit to price_upper_limit"]; name: "durationSeconds"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 88] } }]; kind: "struct" } }, { docs: ["Nothing in Rust shall use these types. They only exist so that the Anchor IDL", "knows about them and typescript can deserialize it."]; name: "TokenIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "Serum3MarketIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "PerpMarketIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "I80F48"; type: { fields: [{ name: "val"; type: "i128" }]; kind: "struct" } }, { name: "FlashLoanType"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "Swap" }] } }, { docs: ["Copy paste a bunch of enums so that we could AnchorSerialize & AnchorDeserialize them"]; name: "Serum3SelfTradeBehavior"; type: { kind: "enum"; variants: [{ name: "DecrementTake" }, { name: "CancelProvide" }, { name: "AbortTransaction" }] } }, { name: "Serum3OrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "ImmediateOrCancel" }, { name: "PostOnly" }] } }, { name: "Serum3Side"; type: { kind: "enum"; variants: [{ name: "Bid" }, { name: "Ask" }] } }, { docs: ["There are three types of health:", "- initial health (\"init\"): users can only open new positions if it's >= 0", "- maintenance health (\"maint\"): users get liquidated if it's < 0", "- liquidation end health: once liquidation started (see being_liquidated), it", "only stops once this is >= 0", "", "The ordering is", "init health <= liquidation end health <= maint health", "", "The different health types are realized by using different weights and prices:", "- init health: init weights with scaling, stable-price adjusted prices", "- liq end health: init weights without scaling, oracle prices", "- maint health: maint weights, oracle prices", ""]; name: "HealthType"; type: { kind: "enum"; variants: [{ name: "Init" }, { name: "Maint" }, { name: "LiquidationEnd" }] } }, { name: "LoanOriginationFeeInstruction"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "LiqTokenBankruptcy" }, { name: "LiqTokenWithToken" }, { name: "Serum3LiqForceCancelOrders" }, { name: "Serum3PlaceOrder" }, { name: "Serum3SettleFunds" }, { name: "TokenWithdraw" }, { name: "TokenConditionalSwapTrigger" }] } }, { docs: ["Enum for lookup into ix gate", "note:", "total ix files 56,", "ix files included 48,", "ix files not included 8,", "- Benchmark,", "- ComputeAccountData,", "- GroupCreate", "- GroupEdit", "- IxGateSet,", "- PerpZeroOut,", "- PerpEditMarket,", "- TokenEdit,"]; name: "IxGate"; type: { kind: "enum"; variants: [{ name: "AccountClose" }, { name: "AccountCreate" }, { name: "AccountEdit" }, { name: "AccountExpand" }, { name: "AccountToggleFreeze" }, { name: "AltExtend" }, { name: "AltSet" }, { name: "FlashLoan" }, { name: "GroupClose" }, { name: "GroupCreate" }, { name: "HealthRegion" }, { name: "PerpCancelAllOrders" }, { name: "PerpCancelAllOrdersBySide" }, { name: "PerpCancelOrder" }, { name: "PerpCancelOrderByClientOrderId" }, { name: "PerpCloseMarket" }, { name: "PerpConsumeEvents" }, { name: "PerpCreateMarket" }, { name: "PerpDeactivatePosition" }, { name: "PerpLiqBaseOrPositivePnl" }, { name: "PerpLiqForceCancelOrders" }, { name: "PerpLiqNegativePnlOrBankruptcy" }, { name: "PerpPlaceOrder" }, { name: "PerpSettleFees" }, { name: "PerpSettlePnl" }, { name: "PerpUpdateFunding" }, { name: "Serum3CancelAllOrders" }, { name: "Serum3CancelOrder" }, { name: "Serum3CloseOpenOrders" }, { name: "Serum3CreateOpenOrders" }, { name: "Serum3DeregisterMarket" }, { name: "Serum3EditMarket" }, { name: "Serum3LiqForceCancelOrders" }, { name: "Serum3PlaceOrder" }, { name: "Serum3RegisterMarket" }, { name: "Serum3SettleFunds" }, { name: "StubOracleClose" }, { name: "StubOracleCreate" }, { name: "StubOracleSet" }, { name: "TokenAddBank" }, { name: "TokenDeposit" }, { name: "TokenDeregister" }, { name: "TokenLiqBankruptcy" }, { name: "TokenLiqWithToken" }, { name: "TokenRegister" }, { name: "TokenRegisterTrustless" }, { name: "TokenUpdateIndexAndRate" }, { name: "TokenWithdraw" }, { name: "AccountBuybackFeesWithMngo" }, { name: "TokenForceCloseBorrowsWithToken" }, { name: "PerpForceClosePosition" }, { name: "GroupWithdrawInsuranceFund" }, { name: "TokenConditionalSwapCreate" }, { name: "TokenConditionalSwapTrigger" }, { name: "TokenConditionalSwapCancel" }, { name: "OpenbookV2CancelOrder" }, { name: "OpenbookV2CloseOpenOrders" }, { name: "OpenbookV2CreateOpenOrders" }, { name: "OpenbookV2DeregisterMarket" }, { name: "OpenbookV2EditMarket" }, { name: "OpenbookV2LiqForceCancelOrders" }, { name: "OpenbookV2PlaceOrder" }, { name: "OpenbookV2PlaceTakeOrder" }, { name: "OpenbookV2RegisterMarket" }, { name: "OpenbookV2SettleFunds" }, { name: "AdminTokenWithdrawFees" }, { name: "AdminPerpWithdrawFees" }, { name: "AccountSizeMigration" }, { name: "TokenConditionalSwapStart" }, { name: "TokenConditionalSwapCreatePremiumAuction" }, { name: "TokenConditionalSwapCreateLinearAuction" }, { name: "Serum3PlaceOrderV2" }] } }, { name: "CheckLiquidatable"; type: { kind: "enum"; variants: [{ name: "NotLiquidatable" }, { name: "Liquidatable" }, { name: "BecameNotLiquidatable" }] } }, { name: "OracleType"; type: { kind: "enum"; variants: [{ name: "Pyth" }, { name: "Stub" }, { name: "SwitchboardV1" }, { name: "SwitchboardV2" }, { name: "OrcaCLMM" }] } }, { name: "OrderState"; type: { kind: "enum"; variants: [{ name: "Valid" }, { name: "Invalid" }, { name: "Skipped" }] } }, { name: "BookSideOrderTree"; type: { kind: "enum"; variants: [{ name: "Fixed" }, { name: "OraclePegged" }] } }, { name: "NodeTag"; type: { kind: "enum"; variants: [{ name: "Uninitialized" }, { name: "InnerNode" }, { name: "LeafNode" }, { name: "FreeNode" }, { name: "LastFreeNode" }] } }, { name: "PlaceOrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "ImmediateOrCancel" }, { name: "PostOnly" }, { name: "Market" }, { name: "PostOnlySlide" }] } }, { name: "PostOrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "PostOnly" }, { name: "PostOnlySlide" }] } }, { docs: ["Self trade behavior controls how taker orders interact with resting limit orders of the same account.", "This setting has no influence on placing a resting or oracle pegged limit order that does not match", "immediately, instead it's the responsibility of the user to correctly configure his taker orders."]; name: "SelfTradeBehavior"; type: { kind: "enum"; variants: [{ name: "DecrementTake" }, { name: "CancelProvide" }, { name: "AbortTransaction" }] } }, { name: "Side"; type: { kind: "enum"; variants: [{ name: "Bid" }, { name: "Ask" }] } }, { docs: ["SideAndOrderTree is a storage optimization, so we don't need two bytes for the data"]; name: "SideAndOrderTree"; type: { kind: "enum"; variants: [{ name: "BidFixed" }, { name: "AskFixed" }, { name: "BidOraclePegged" }, { name: "AskOraclePegged" }] } }, { name: "OrderParams"; type: { kind: "enum"; variants: [{ name: "Market" }, { fields: [{ name: "price_lots"; type: "i64" }]; name: "ImmediateOrCancel" }, { fields: [{ name: "price_lots"; type: "i64" }, { name: "order_type"; type: { defined: "PostOrderType" } }]; name: "Fixed" }, { fields: [{ name: "price_offset_lots"; type: "i64" }, { name: "order_type"; type: { defined: "PostOrderType" } }, { name: "peg_limit"; type: "i64" }, { name: "max_oracle_staleness_slots"; type: "i32" }]; name: "OraclePegged" }] } }, { name: "OrderTreeType"; type: { kind: "enum"; variants: [{ name: "Bids" }, { name: "Asks" }] } }, { name: "EventType"; type: { kind: "enum"; variants: [{ name: "Fill" }, { name: "Out" }, { name: "Liquidate" }] } }, { name: "TokenConditionalSwapDisplayPriceStyle"; type: { kind: "enum"; variants: [{ name: "SellTokenPerBuyToken" }, { name: "BuyTokenPerSellToken" }] } }, { name: "TokenConditionalSwapIntention"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "StopLoss" }, { name: "TakeProfit" }] } }, { name: "TokenConditionalSwapType"; type: { kind: "enum"; variants: [{ name: "FixedPremium" }, { name: "PremiumAuction" }, { name: "LinearAuction" }] } }]; version: "0.22.0" }

                      Type declaration

                      • accounts: [{ name: "bank"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 16] } }, { name: "mint"; type: "publicKey" }, { name: "vault"; type: "publicKey" }, { name: "oracle"; type: "publicKey" }, { name: "oracleConfig"; type: { defined: "OracleConfig" } }, { name: "stablePriceModel"; type: { defined: "StablePriceModel" } }, { docs: ["the index used to scale the value of an IndexedPosition", "TODO: should always be >= 0, add checks?"]; name: "depositIndex"; type: { defined: "I80F48" } }, { name: "borrowIndex"; type: { defined: "I80F48" } }, { docs: ["deposits/borrows for this bank", "", "Note that these may become negative. It's perfectly fine for users to borrow one one bank", "(increasing indexed_borrows there) and paying back on another (possibly decreasing indexed_borrows", "below zero).", "", "The vault amount is not deducable from these values.", "", "These become meaningful when summed over all banks (like in update_index_and_rate)."]; name: "indexedDeposits"; type: { defined: "I80F48" } }, { name: "indexedBorrows"; type: { defined: "I80F48" } }, { name: "indexLastUpdated"; type: "u64" }, { name: "bankRateLastUpdated"; type: "u64" }, { name: "avgUtilization"; type: { defined: "I80F48" } }, { name: "adjustmentFactor"; type: { defined: "I80F48" } }, { docs: ["The unscaled borrow interest curve is defined as continuous piecewise linear with the points:", "", "- 0% util: zero_util_rate", "- util0% util: rate0", "- util1% util: rate1", "- 100% util: max_rate", "", "The final rate is this unscaled curve multiplied by interest_curve_scaling."]; name: "util0"; type: { defined: "I80F48" } }, { name: "rate0"; type: { defined: "I80F48" } }, { name: "util1"; type: { defined: "I80F48" } }, { name: "rate1"; type: { defined: "I80F48" } }, { docs: ["the 100% utilization rate", "", "This isn't the max_rate, since this still gets scaled by interest_curve_scaling,", "which is >=1."]; name: "maxRate"; type: { defined: "I80F48" } }, { docs: ["Fees collected over the lifetime of the bank", "", "See fees_withdrawn for how much of the fees was withdrawn.", "See collected_liquidation_fees for the (included) subtotal for liquidation related fees."]; name: "collectedFeesNative"; type: { defined: "I80F48" } }, { name: "loanOriginationFeeRate"; type: { defined: "I80F48" } }, { name: "loanFeeRate"; type: { defined: "I80F48" } }, { name: "maintAssetWeight"; type: { defined: "I80F48" } }, { name: "initAssetWeight"; type: { defined: "I80F48" } }, { name: "maintLiabWeight"; type: { defined: "I80F48" } }, { name: "initLiabWeight"; type: { defined: "I80F48" } }, { docs: ["Liquidation fee that goes to the liqor.", "", "Liquidation always involves two tokens, and the sum of the two configured fees is used.", "", "A fraction of the price, like 0.05 for a 5% fee during liquidation.", "", "See also platform_liquidation_fee."]; name: "liquidationFee"; type: { defined: "I80F48" } }, { name: "dust"; type: { defined: "I80F48" } }, { name: "flashLoanTokenAccountInitial"; type: "u64" }, { name: "flashLoanApprovedAmount"; type: "u64" }, { name: "tokenIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "mintDecimals"; type: "u8" }, { name: "bankNum"; type: "u32" }, { docs: ["The maximum utilization allowed when borrowing is 1-this value", "WARNING: Outdated name, kept for IDL compatibility"]; name: "minVaultToDepositsRatio"; type: "f64" }, { docs: ["Size in seconds of a net borrows window"]; name: "netBorrowLimitWindowSizeTs"; type: "u64" }, { docs: ["Timestamp at which the last net borrows window started"]; name: "lastNetBorrowsWindowStartTs"; type: "u64" }, { docs: ["Net borrow limit per window in quote native; set to -1 to disable."]; name: "netBorrowLimitPerWindowQuote"; type: "i64" }, { docs: ["Sum of all deposits and borrows in the last window, in native units."]; name: "netBorrowsInWindow"; type: "i64" }, { docs: ["Soft borrow limit in native quote", "", "Once the borrows on the bank exceed this quote value, init_liab_weight is scaled up.", "Set to f64::MAX to disable.", "", "See scaled_init_liab_weight()."]; name: "borrowWeightScaleStartQuote"; type: "f64" }, { docs: ["Limit for collateral of deposits in native quote", "", "Once the deposits in the bank exceed this quote value, init_asset_weight is scaled", "down to keep the total collateral value constant.", "Set to f64::MAX to disable.", "", "See scaled_init_asset_weight()."]; name: "depositWeightScaleStartQuote"; type: "f64" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { docs: ["If set to 1, deposits cannot be liquidated when an account is liquidatable.", "That means bankrupt accounts may still have assets of this type deposited."]; name: "disableAssetLiquidation"; type: "u8" }, { name: "padding"; type: { array: ["u8", 5] } }, { name: "feesWithdrawn"; type: "u64" }, { docs: ["Fees for the token conditional swap feature"]; name: "tokenConditionalSwapTakerFeeRate"; type: "f32" }, { name: "tokenConditionalSwapMakerFeeRate"; type: "f32" }, { name: "flashLoanSwapFeeRate"; type: "f32" }, { docs: ["Target utilization: If actual utilization is higher, scale up interest.", "If it's lower, scale down interest (if possible)"]; name: "interestTargetUtilization"; type: "f32" }, { docs: ["Current interest curve scaling, always >= 1.0", "", "Except when first migrating to having this field, then 0.0"]; name: "interestCurveScaling"; type: "f64" }, { docs: ["Largest amount of tokens that might be added the the bank based on", "serum open order execution."]; name: "potentialSerumTokens"; type: "u64" }, { docs: ["Start timestamp in seconds at which maint weights should start to change away", "from maint_asset_weight, maint_liab_weight towards _asset_target and _liab_target.", "If _start and _end and _duration_inv are 0, no shift is configured."]; name: "maintWeightShiftStart"; type: "u64" }, { docs: ["End timestamp in seconds until which the maint weights should reach the configured targets."]; name: "maintWeightShiftEnd"; type: "u64" }, { docs: ["Cache of the inverse of maint_weight_shift_end - maint_weight_shift_start,", "or zero if no shift is configured"]; name: "maintWeightShiftDurationInv"; type: { defined: "I80F48" } }, { docs: ["Maint asset weight to reach at _shift_end."]; name: "maintWeightShiftAssetTarget"; type: { defined: "I80F48" } }, { name: "maintWeightShiftLiabTarget"; type: { defined: "I80F48" } }, { docs: ["Oracle that may be used if the main oracle is stale or not confident enough.", "If this is Pubkey::default(), no fallback is available."]; name: "fallbackOracle"; type: "publicKey" }, { docs: ["zero means none, in token native"]; name: "depositLimit"; type: "u64" }, { docs: ["The unscaled borrow interest curve point for zero utilization.", "", "See util0, rate0, util1, rate1, max_rate"]; name: "zeroUtilRate"; type: { defined: "I80F48" } }, { docs: ["Additional to liquidation_fee, but goes to the group owner instead of the liqor"]; name: "platformLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Platform fees that were collected during liquidation (in native tokens)", "", "See also collected_fees_native and fees_withdrawn."]; name: "collectedLiquidationFees"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 1920] } }]; kind: "struct" } }, { name: "group"; type: { fields: [{ name: "creator"; type: "publicKey" }, { name: "groupNum"; type: "u32" }, { name: "admin"; type: "publicKey" }, { name: "fastListingAdmin"; type: "publicKey" }, { name: "mngoTokenIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { name: "insuranceVault"; type: "publicKey" }, { name: "insuranceMint"; type: "publicKey" }, { name: "bump"; type: "u8" }, { name: "testing"; type: "u8" }, { name: "version"; type: "u8" }, { name: "buybackFees"; type: "u8" }, { name: "buybackFeesMngoBonusFactor"; type: "f32" }, { name: "addressLookupTables"; type: { array: ["publicKey", 20] } }, { name: "securityAdmin"; type: "publicKey" }, { name: "depositLimitQuote"; type: "u64" }, { name: "ixGate"; type: "u128" }, { name: "buybackFeesSwapMangoAccount"; type: "publicKey" }, { docs: ["Number of seconds after which fees that could be used with the fees buyback feature expire.", "", "The actual expiry is staggered such that the fees users accumulate are always", "available for at least this interval - but may be available for up to twice this time.", "", "When set to 0, there's no expiry of buyback fees."]; name: "buybackFeesExpiryInterval"; type: "u64" }, { docs: ["Fast-listings are limited per week, this is the start of the current fast-listing interval", "in seconds since epoch"]; name: "fastListingIntervalStart"; type: "u64" }, { docs: ["Number of fast listings that happened this interval"]; name: "fastListingsInInterval"; type: "u16" }, { docs: ["Number of fast listings that are allowed per interval"]; name: "allowedFastListingsPerInterval"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 1812] } }]; kind: "struct" } }, { name: "mangoAccount"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "owner"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 32] } }, { name: "delegate"; type: "publicKey" }, { name: "accountNum"; type: "u32" }, { docs: ["Tracks that this account should be liquidated until init_health >= 0.", "", "Normally accounts can not be liquidated while maint_health >= 0. But when an account", "reaches maint_health < 0, liquidators will call a liquidation instruction and thereby", "set this flag. Now the account may be liquidated until init_health >= 0.", "", "Many actions should be disabled while the account is being liquidated, even if", "its maint health has recovered to positive. Creating new open orders would, for example,", "confuse liquidators."]; name: "beingLiquidated"; type: "u8" }, { docs: ["The account is currently inside a health region marked by HealthRegionBegin...HealthRegionEnd.", "", "Must never be set after a transaction ends."]; name: "inHealthRegion"; type: "u8" }, { name: "bump"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { name: "netDeposits"; type: "i64" }, { name: "perpSpotTransfers"; type: "i64" }, { docs: ["Init health as calculated during HealthReginBegin, rounded up."]; name: "healthRegionBeginInitHealth"; type: "i64" }, { name: "frozenUntil"; type: "u64" }, { docs: ["Fees usable with the \"fees buyback\" feature.", "This tracks the ones that accrued in the current expiry interval."]; name: "buybackFeesAccruedCurrent"; type: "u64" }, { docs: ["Fees buyback amount from the previous expiry interval."]; name: "buybackFeesAccruedPrevious"; type: "u64" }, { docs: ["End timestamp of the current expiry interval of the buyback fees amount."]; name: "buybackFeesExpiryTimestamp"; type: "u64" }, { docs: ["Next id to use when adding a token condition swap"]; name: "nextTokenConditionalSwapId"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 200] } }, { name: "headerVersion"; type: "u8" }, { name: "padding3"; type: { array: ["u8", 7] } }, { name: "padding4"; type: "u32" }, { name: "tokens"; type: { vec: { defined: "TokenPosition" } } }, { name: "padding5"; type: "u32" }, { name: "serum3"; type: { vec: { defined: "Serum3Orders" } } }, { name: "padding6"; type: "u32" }, { name: "perps"; type: { vec: { defined: "PerpPosition" } } }, { name: "padding7"; type: "u32" }, { name: "perpOpenOrders"; type: { vec: { defined: "PerpOpenOrder" } } }, { name: "padding8"; type: "u32" }, { name: "tokenConditionalSwaps"; type: { vec: { defined: "TokenConditionalSwap" } } }, { name: "reservedDynamic"; type: { array: ["u8", 64] } }]; kind: "struct" } }, { name: "mintInfo"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "tokenIndex"; type: "u16" }, { name: "groupInsuranceFund"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 5] } }, { name: "mint"; type: "publicKey" }, { name: "banks"; type: { array: ["publicKey", 6] } }, { name: "vaults"; type: { array: ["publicKey", 6] } }, { name: "oracle"; type: "publicKey" }, { name: "registrationTime"; type: "u64" }, { name: "fallbackOracle"; type: "publicKey" }, { name: "reserved"; type: { array: ["u8", 2528] } }]; kind: "struct" } }, { name: "openbookV2Market"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 2] } }, { name: "name"; type: { array: ["u8", 16] } }, { name: "openbookV2Program"; type: "publicKey" }, { name: "openbookV2MarketExternal"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "padding2"; type: { array: ["u8", 5] } }, { name: "registrationTime"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 512] } }]; kind: "struct" } }, { name: "openbookV2MarketIndexReservation"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 38] } }]; kind: "struct" } }, { name: "stubOracle"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "mint"; type: "publicKey" }, { name: "price"; type: { defined: "I80F48" } }, { name: "lastUpdateTs"; type: "i64" }, { name: "lastUpdateSlot"; type: "u64" }, { name: "deviation"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 104] } }]; kind: "struct" } }, { name: "bookSide"; type: { fields: [{ name: "roots"; type: { array: [{ defined: "OrderTreeRoot" }, 2] } }, { name: "reservedRoots"; type: { array: [{ defined: "OrderTreeRoot" }, 4] } }, { name: "reserved"; type: { array: ["u8", 256] } }, { name: "nodes"; type: { defined: "OrderTreeNodes" } }]; kind: "struct" } }, { name: "eventQueue"; type: { fields: [{ name: "header"; type: { defined: "EventQueueHeader" } }, { name: "buf"; type: { array: [{ defined: "AnyEvent" }, 488] } }, { name: "reserved"; type: { array: ["u8", 64] } }]; kind: "struct" } }, { name: "perpMarket"; type: { fields: [{ name: "group"; type: "publicKey" }, { docs: ["Token index that settlements happen in.", "", "Currently required to be 0, USDC. In the future settlement", "may be allowed to happen in other tokens."]; name: "settleTokenIndex"; type: "u16" }, { docs: ["Index of this perp market. Other data, like the MangoAccount's PerpPosition", "reference this market via this index. Unique for this group's perp markets."]; name: "perpMarketIndex"; type: "u16" }, { docs: ["Field used to contain the trusted_market flag and is now unused."]; name: "blocked1"; type: "u8" }, { docs: ["Is this market covered by the group insurance fund?"]; name: "groupInsuranceFund"; type: "u8" }, { docs: ["PDA bump"]; name: "bump"; type: "u8" }, { docs: ["Number of decimals used for the base token.", "", "Used to convert the oracle's price into a native/native price."]; name: "baseDecimals"; type: "u8" }, { docs: ["Name. Trailing zero bytes are ignored."]; name: "name"; type: { array: ["u8", 16] } }, { docs: ["Address of the BookSide account for bids"]; name: "bids"; type: "publicKey" }, { docs: ["Address of the BookSide account for asks"]; name: "asks"; type: "publicKey" }, { docs: ["Address of the EventQueue account"]; name: "eventQueue"; type: "publicKey" }, { docs: ["Oracle account address"]; name: "oracle"; type: "publicKey" }, { docs: ["Oracle configuration"]; name: "oracleConfig"; type: { defined: "OracleConfig" } }, { docs: ["Maintains a stable price based on the oracle price that is less volatile."]; name: "stablePriceModel"; type: { defined: "StablePriceModel" } }, { docs: ["Number of quote native in a quote lot. Must be a power of 10.", "", "Primarily useful for increasing the tick size on the market: A lot price", "of 1 becomes a native price of quote_lot_size/base_lot_size becomes a", "ui price of quote_lot_size*base_decimals/base_lot_size/quote_decimals."]; name: "quoteLotSize"; type: "i64" }, { docs: ["Number of base native in a base lot. Must be a power of 10.", "", "Example: If base decimals for the underlying asset is 6, base lot size", "is 100 and and base position lots is 10_000 then base position native is", "1_000_000 and base position ui is 1."]; name: "baseLotSize"; type: "i64" }, { docs: ["These weights apply to the base position. The quote position has", "no explicit weight (but may be covered by the overall pnl asset weight)."]; name: "maintBaseAssetWeight"; type: { defined: "I80F48" } }, { name: "initBaseAssetWeight"; type: { defined: "I80F48" } }, { name: "maintBaseLiabWeight"; type: { defined: "I80F48" } }, { name: "initBaseLiabWeight"; type: { defined: "I80F48" } }, { docs: ["Number of base lots currently active in the market. Always >= 0.", "", "Since this counts positive base lots and negative base lots, the more relevant", "number of open base lot pairs is half this value."]; name: "openInterest"; type: "i64" }, { docs: ["Total number of orders seen"]; name: "seqNum"; type: "u64" }, { docs: ["Timestamp in seconds that the market was registered at."]; name: "registrationTime"; type: "u64" }, { docs: ["Minimal funding rate per day, must be <= 0."]; name: "minFunding"; type: { defined: "I80F48" } }, { docs: ["Maximal funding rate per day, must be >= 0."]; name: "maxFunding"; type: { defined: "I80F48" } }, { docs: ["For funding, get the impact price this many base lots deep into the book."]; name: "impactQuantity"; type: "i64" }, { docs: ["Current long funding value. Increasing it means that every long base lot", "needs to pay that amount of quote native in funding.", "", "PerpPosition uses and tracks it settle funding. Updated by the perp", "keeper instruction."]; name: "longFunding"; type: { defined: "I80F48" } }, { docs: ["See long_funding."]; name: "shortFunding"; type: { defined: "I80F48" } }, { docs: ["timestamp that funding was last updated in"]; name: "fundingLastUpdated"; type: "u64" }, { docs: ["Fees", "Fee for base position liquidation"]; name: "baseLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Fee when matching maker orders. May be negative."]; name: "makerFee"; type: { defined: "I80F48" } }, { docs: ["Fee for taker orders, may not be negative."]; name: "takerFee"; type: { defined: "I80F48" } }, { docs: ["Fees accrued in native quote currency", "these are increased when new fees are paid and decreased when perp_settle_fees is called"]; name: "feesAccrued"; type: { defined: "I80F48" } }, { docs: ["Fees settled in native quote currency", "these are increased when perp_settle_fees is called, and never decreased"]; name: "feesSettled"; type: { defined: "I80F48" } }, { docs: ["Fee (in quote native) to charge for ioc orders"]; name: "feePenalty"; type: "f32" }, { docs: ["In native units of settlement token, given to each settle call above the", "settle_fee_amount_threshold if settling at least 1% of perp base pos value."]; name: "settleFeeFlat"; type: "f32" }, { docs: ["Pnl settlement amount needed to be eligible for the flat fee."]; name: "settleFeeAmountThreshold"; type: "f32" }, { docs: ["Fraction of pnl to pay out as fee if +pnl account has low health.", "(limited to 2x settle_fee_flat)"]; name: "settleFeeFractionLowHealth"; type: "f32" }, { docs: ["Controls the strictness of the settle limit.", "Set to a negative value to disable the limit.", "", "This factor applies to the settle limit in two ways", "- for the unrealized pnl settle limit, the factor is multiplied with the stable perp base value", "(i.e. limit_factor * base_native * stable_price)", "- when increasing the realized pnl settle limit (stored per PerpPosition), the factor is", "multiplied with the stable value of the perp pnl being realized", "(i.e. limit_factor * reduced_native * stable_price)", "", "See also PerpPosition::settle_pnl_limit_realized_trade"]; name: "settlePnlLimitFactor"; type: "f32" }, { name: "padding3"; type: { array: ["u8", 4] } }, { docs: ["Window size in seconds for the perp settlement limit"]; name: "settlePnlLimitWindowSizeTs"; type: "u64" }, { docs: ["If true, users may no longer increase their market exposure. Only actions", "that reduce their position are still allowed."]; name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding4"; type: { array: ["u8", 6] } }, { docs: ["Weights for full perp market health, if positive"]; name: "maintOverallAssetWeight"; type: { defined: "I80F48" } }, { name: "initOverallAssetWeight"; type: { defined: "I80F48" } }, { name: "positivePnlLiquidationFee"; type: { defined: "I80F48" } }, { name: "feesWithdrawn"; type: "u64" }, { docs: ["Additional to liquidation_fee, but goes to the group owner instead of the liqor"]; name: "platformLiquidationFee"; type: { defined: "I80F48" } }, { docs: ["Platform fees that were accrued during liquidation (in native tokens)", "", "These fees are also added to fees_accrued, this is just for bookkeeping the total", "liquidation fees that happened. So never decreases (different to fees_accrued)."]; name: "accruedLiquidationFees"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 1848] } }]; kind: "struct" } }, { name: "serum3Market"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "reduceOnly"; type: "u8" }, { name: "forceClose"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 2] } }, { name: "name"; type: { array: ["u8", 16] } }, { name: "serumProgram"; type: "publicKey" }, { name: "serumMarketExternal"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "bump"; type: "u8" }, { name: "padding2"; type: { array: ["u8", 1] } }, { docs: ["Limit orders must be <= oracle * (1+band) and >= oracle / (1+band)", "", "Zero value is the default due to migration and disables the limit,", "same as f32::MAX."]; name: "oraclePriceBand"; type: "f32" }, { name: "registrationTime"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { name: "serum3MarketIndexReservation"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "marketIndex"; type: "u16" }, { name: "reserved"; type: { array: ["u8", 38] } }]; kind: "struct" } }]
                      • errors: [{ code: 6000; msg: ""; name: "SomeError" }, { code: 6001; msg: ""; name: "NotImplementedError" }, { code: 6002; msg: "checked math error"; name: "MathError" }, { code: 6003; msg: ""; name: "UnexpectedOracle" }, { code: 6004; msg: "oracle type cannot be determined"; name: "UnknownOracleType" }, { code: 6005; msg: ""; name: "InvalidFlashLoanTargetCpiProgram" }, { code: 6006; msg: "health must be positive"; name: "HealthMustBePositive" }, { code: 6007; msg: "health must be positive or not decrease"; name: "HealthMustBePositiveOrIncrease" }, { code: 6008; msg: "health must be negative"; name: "HealthMustBeNegative" }, { code: 6009; msg: "the account is bankrupt"; name: "IsBankrupt" }, { code: 6010; msg: "the account is not bankrupt"; name: "IsNotBankrupt" }, { code: 6011; msg: "no free token position index"; name: "NoFreeTokenPositionIndex" }, { code: 6012; msg: "no free serum3 open orders index"; name: "NoFreeSerum3OpenOrdersIndex" }, { code: 6013; msg: "no free perp position index"; name: "NoFreePerpPositionIndex" }, { code: 6014; msg: "serum3 open orders exist already"; name: "Serum3OpenOrdersExistAlready" }, { code: 6015; msg: "bank vault has insufficent funds"; name: "InsufficentBankVaultFunds" }, { code: 6016; msg: "account is currently being liquidated"; name: "BeingLiquidated" }, { code: 6017; msg: "invalid bank"; name: "InvalidBank" }, { code: 6018; msg: "account profitability is mismatched"; name: "ProfitabilityMismatch" }, { code: 6019; msg: "cannot settle with self"; name: "CannotSettleWithSelf" }, { code: 6020; msg: "perp position does not exist"; name: "PerpPositionDoesNotExist" }, { code: 6021; msg: "max settle amount must be greater than zero"; name: "MaxSettleAmountMustBeGreaterThanZero" }, { code: 6022; msg: "the perp position has open orders or unprocessed fill events"; name: "HasOpenPerpOrders" }, { code: 6023; msg: "an oracle does not reach the confidence threshold"; name: "OracleConfidence" }, { code: 6024; msg: "an oracle is stale"; name: "OracleStale" }, { code: 6025; msg: "settlement amount must always be positive"; name: "SettlementAmountMustBePositive" }, { code: 6026; msg: "bank utilization has reached limit"; name: "BankBorrowLimitReached" }, { code: 6027; msg: "bank net borrows has reached limit - this is an intermittent error - the limit will reset regularly"; name: "BankNetBorrowsLimitReached" }, { code: 6028; msg: "token position does not exist"; name: "TokenPositionDoesNotExist" }, { code: 6029; msg: "token deposits into accounts that are being liquidated must bring their health above the init threshold"; name: "DepositsIntoLiquidatingMustRecover" }, { code: 6030; msg: "token is in reduce only mode"; name: "TokenInReduceOnlyMode" }, { code: 6031; msg: "market is in reduce only mode"; name: "MarketInReduceOnlyMode" }, { code: 6032; msg: "group is halted"; name: "GroupIsHalted" }, { code: 6033; msg: "the perp position has non-zero base lots"; name: "PerpHasBaseLots" }, { code: 6034; msg: "there are open or unsettled serum3 orders"; name: "HasOpenOrUnsettledSerum3Orders" }, { code: 6035; msg: "has liquidatable token position"; name: "HasLiquidatableTokenPosition" }, { code: 6036; msg: "has liquidatable perp base position"; name: "HasLiquidatablePerpBasePosition" }, { code: 6037; msg: "has liquidatable positive perp pnl"; name: "HasLiquidatablePositivePerpPnl" }, { code: 6038; msg: "account is frozen"; name: "AccountIsFrozen" }, { code: 6039; msg: "Init Asset Weight can't be negative"; name: "InitAssetWeightCantBeNegative" }, { code: 6040; msg: "has open perp taker fills"; name: "HasOpenPerpTakerFills" }, { code: 6041; msg: "deposit crosses the current group deposit limit"; name: "DepositLimit" }, { code: 6042; msg: "instruction is disabled"; name: "IxIsDisabled" }, { code: 6043; msg: "no liquidatable perp base position"; name: "NoLiquidatablePerpBasePosition" }, { code: 6044; msg: "perp order id not found on the orderbook"; name: "PerpOrderIdNotFound" }, { code: 6045; msg: "HealthRegions allow only specific instructions between Begin and End"; name: "HealthRegionBadInnerInstruction" }, { code: 6046; msg: "token is in force close"; name: "TokenInForceClose" }, { code: 6047; msg: "incorrect number of health accounts"; name: "InvalidHealthAccountCount" }, { code: 6048; msg: "would self trade"; name: "WouldSelfTrade" }, { code: 6049; msg: "token conditional swap oracle price is not in execution range"; name: "TokenConditionalSwapPriceNotInRange" }, { code: 6050; msg: "token conditional swap is expired"; name: "TokenConditionalSwapExpired" }, { code: 6051; msg: "token conditional swap is not available yet"; name: "TokenConditionalSwapNotStarted" }, { code: 6052; msg: "token conditional swap was already started"; name: "TokenConditionalSwapAlreadyStarted" }, { code: 6053; msg: "token conditional swap it not set"; name: "TokenConditionalSwapNotSet" }, { code: 6054; msg: "token conditional swap trigger did not reach min_buy_token"; name: "TokenConditionalSwapMinBuyTokenNotReached" }, { code: 6055; msg: "token conditional swap cannot pay incentive"; name: "TokenConditionalSwapCantPayIncentive" }, { code: 6056; msg: "token conditional swap taker price is too low"; name: "TokenConditionalSwapTakerPriceTooLow" }, { code: 6057; msg: "token conditional swap index and id don't match"; name: "TokenConditionalSwapIndexIdMismatch" }, { code: 6058; msg: "token conditional swap volume is too small compared to the cost of starting it"; name: "TokenConditionalSwapTooSmallForStartIncentive" }, { code: 6059; msg: "token conditional swap type cannot be started"; name: "TokenConditionalSwapTypeNotStartable" }, { code: 6060; msg: "a bank in the health account list should be writable but is not"; name: "HealthAccountBankNotWritable" }, { code: 6061; msg: "the market does not allow limit orders too far from the current oracle value"; name: "Serum3PriceBandExceeded" }, { code: 6062; msg: "deposit crosses the token's deposit limit"; name: "BankDepositLimit" }, { code: 6063; msg: "delegates can only withdraw to the owner's associated token account"; name: "DelegateWithdrawOnlyToOwnerAta" }, { code: 6064; msg: "delegates can only withdraw if they close the token position"; name: "DelegateWithdrawMustClosePosition" }, { code: 6065; msg: "delegates can only withdraw small amounts"; name: "DelegateWithdrawSmall" }, { code: 6066; msg: "The provided CLMM oracle is not valid"; name: "InvalidCLMMOracle" }, { code: 6067; msg: "invalid usdc/usd feed provided for the CLMM oracle"; name: "InvalidFeedForCLMMOracle" }, { code: 6068; msg: "Pyth USDC/USD or SOL/USD feed not found (required by CLMM oracle)"; name: "MissingFeedForCLMMOracle" }, { code: 6069; msg: "the asset does not allow liquidation"; name: "TokenAssetLiquidationDisabled" }]
                      • events: [{ fields: [{ index: false; name: "initHealth"; type: { defined: "I80F48" } }, { index: false; name: "maintHealth"; type: { defined: "I80F48" } }, { index: false; name: "equity"; type: { defined: "Equity" } }]; name: "MangoAccountData" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "basePosition"; type: "i64" }, { index: false; name: "quotePosition"; type: "i128" }, { index: false; name: "longSettledFunding"; type: "i128" }, { index: false; name: "shortSettledFunding"; type: "i128" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }]; name: "PerpBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "indexedPosition"; type: "i128" }, { index: false; name: "depositIndex"; type: "i128" }, { index: false; name: "borrowIndex"; type: "i128" }]; name: "TokenBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetail" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetailV2" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenLoanDetails"; type: { vec: { defined: "FlashLoanTokenDetailV3" } } }, { index: false; name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "FlashLoanLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "signer"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "quantity"; type: "u64" }, { index: false; name: "price"; type: "i128" }]; name: "WithdrawLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "signer"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "quantity"; type: "u64" }, { index: false; name: "price"; type: "i128" }]; name: "DepositLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerOrderId"; type: "u128" }, { index: false; name: "makerFee"; type: "i128" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerOrderId"; type: "u128" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "i128" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }]; name: "FillLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerClientOrderId"; type: "u64" }, { index: false; name: "makerFee"; type: "f32" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "f32" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }]; name: "FillLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "makerSlot"; type: "u8" }, { index: false; name: "makerOut"; type: "bool" }, { index: false; name: "timestamp"; type: "u64" }, { index: false; name: "seqNum"; type: "u64" }, { index: false; name: "maker"; type: "publicKey" }, { index: false; name: "makerClientOrderId"; type: "u64" }, { index: false; name: "makerFee"; type: "f32" }, { index: false; name: "makerTimestamp"; type: "u64" }, { index: false; name: "taker"; type: "publicKey" }, { index: false; name: "takerClientOrderId"; type: "u64" }, { index: false; name: "takerFee"; type: "f32" }, { index: false; name: "price"; type: "i64" }, { index: false; name: "quantity"; type: "i64" }, { index: false; name: "makerClosedPnl"; type: "f64" }, { index: false; name: "takerClosedPnl"; type: "f64" }]; name: "FillLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "oracleSlot"; type: "u64" }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "feesAccrued"; type: "i128" }, { index: false; name: "feesSettled"; type: "i128" }, { index: false; name: "openInterest"; type: "i64" }, { index: false; name: "instantaneousFundingRate"; type: "i128" }]; name: "PerpUpdateFundingLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "longFunding"; type: "i128" }, { index: false; name: "shortFunding"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "oracleSlot"; type: "u64" }, { index: false; name: "oracleConfidence"; type: "i128" }, { index: false; name: "oracleType"; type: { defined: "OracleType" } }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "feesAccrued"; type: "i128" }, { index: false; name: "feesSettled"; type: "i128" }, { index: false; name: "openInterest"; type: "i64" }, { index: false; name: "instantaneousFundingRate"; type: "i128" }]; name: "PerpUpdateFundingLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "depositIndex"; type: "i128" }, { index: false; name: "borrowIndex"; type: "i128" }, { index: false; name: "avgUtilization"; type: "i128" }, { index: false; name: "price"; type: "i128" }, { index: false; name: "stablePrice"; type: "i128" }, { index: false; name: "collectedFees"; type: "i128" }, { index: false; name: "loanFeeRate"; type: "i128" }, { index: false; name: "totalBorrows"; type: "i128" }, { index: false; name: "totalDeposits"; type: "i128" }, { index: false; name: "borrowRate"; type: "i128" }, { index: false; name: "depositRate"; type: "i128" }]; name: "UpdateIndexLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "rate0"; type: "i128" }, { index: false; name: "rate1"; type: "i128" }, { index: false; name: "maxRate"; type: "i128" }]; name: "UpdateRateLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "rate0"; type: "i128" }, { index: false; name: "util0"; type: "i128" }, { index: false; name: "rate1"; type: "i128" }, { index: false; name: "util1"; type: "i128" }, { index: false; name: "maxRate"; type: "i128" }, { index: false; name: "curveScaling"; type: "f64" }, { index: false; name: "targetUtilization"; type: "f32" }]; name: "UpdateRateLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransfer"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "bankruptcy"; type: "bool" }]; name: "TokenLiqWithTokenLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransferFromLiqee"; type: "i128" }, { index: false; name: "assetTransferToLiqor"; type: "i128" }, { index: false; name: "assetLiquidationFee"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "bankruptcy"; type: "bool" }]; name: "TokenLiqWithTokenLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "baseTotal"; type: "u64" }, { index: false; name: "baseFree"; type: "u64" }, { index: false; name: "quoteTotal"; type: "u64" }, { index: false; name: "quoteFree"; type: "u64" }, { index: false; name: "referrerRebatesAccrued"; type: "u64" }]; name: "Serum3OpenOrdersBalanceLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "baseTotal"; type: "u64" }, { index: false; name: "baseFree"; type: "u64" }, { index: false; name: "quoteTotal"; type: "u64" }, { index: false; name: "quoteFree"; type: "u64" }, { index: false; name: "referrerRebatesAccrued"; type: "u64" }]; name: "Serum3OpenOrdersBalanceLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "loanOriginationFee"; type: "i128" }, { index: false; name: "instruction"; type: { defined: "LoanOriginationFeeInstruction" } }]; name: "WithdrawLoanOriginationFeeLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "loanAmount"; type: "i128" }, { index: false; name: "loanOriginationFee"; type: "i128" }, { index: false; name: "instruction"; type: { defined: "LoanOriginationFeeInstruction" } }, { index: false; name: "price"; type: { option: "i128" } }]; name: "WithdrawLoanLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "initialLiabNative"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "insuranceTokenIndex"; type: "u16" }, { index: false; name: "insuranceTransfer"; type: "i128" }, { index: false; name: "socializedLoss"; type: "i128" }, { index: false; name: "startingLiabDepositIndex"; type: "i128" }, { index: false; name: "endingLiabDepositIndex"; type: "i128" }]; name: "TokenLiqBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "cumulativeDepositInterest"; type: "f64" }, { index: false; name: "cumulativeBorrowInterest"; type: "f64" }]; name: "DeactivateTokenPositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "cumulativeLongFunding"; type: "f64" }, { index: false; name: "cumulativeShortFunding"; type: "f64" }, { index: false; name: "makerVolume"; type: "u64" }, { index: false; name: "takerVolume"; type: "u64" }, { index: false; name: "perpSpotTransfers"; type: "i64" }]; name: "DeactivatePerpPositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mint"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "mintDecimals"; type: "u8" }, { index: false; name: "oracle"; type: "publicKey" }, { index: false; name: "mintInfo"; type: "publicKey" }]; name: "TokenMetaDataLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mint"; type: "publicKey" }, { index: false; name: "tokenIndex"; type: "u16" }, { index: false; name: "mintDecimals"; type: "u8" }, { index: false; name: "oracle"; type: "publicKey" }, { index: false; name: "fallbackOracle"; type: "publicKey" }, { index: false; name: "mintInfo"; type: "publicKey" }]; name: "TokenMetaDataLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarket"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "baseDecimals"; type: "u8" }, { index: false; name: "baseLotSize"; type: "i64" }, { index: false; name: "quoteLotSize"; type: "i64" }, { index: false; name: "oracle"; type: "publicKey" }]; name: "PerpMarketMetaDataLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "serumMarket"; type: "publicKey" }, { index: false; name: "marketIndex"; type: "u16" }, { index: false; name: "baseTokenIndex"; type: "u16" }, { index: false; name: "quoteTokenIndex"; type: "u16" }, { index: false; name: "serumProgram"; type: "publicKey" }, { index: false; name: "serumProgramExternal"; type: "publicKey" }]; name: "Serum3RegisterMarketLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "baseTransfer"; type: "i64" }, { index: false; name: "quoteTransfer"; type: "i128" }, { index: false; name: "pnlTransfer"; type: "i128" }, { index: false; name: "pnlSettleLimitTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpLiqBaseOrPositivePnlLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "baseTransferLiqee"; type: "i64" }, { index: false; name: "quoteTransferLiqee"; type: "i128" }, { index: false; name: "quoteTransferLiqor"; type: "i128" }, { index: false; name: "quotePlatformFee"; type: "i128" }, { index: false; name: "pnlTransfer"; type: "i128" }, { index: false; name: "pnlSettleLimitTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpLiqBaseOrPositivePnlLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "insuranceTransfer"; type: "i128" }, { index: false; name: "socializedLoss"; type: "i128" }, { index: false; name: "startingLongFunding"; type: "i128" }, { index: false; name: "startingShortFunding"; type: "i128" }, { index: false; name: "endingLongFunding"; type: "i128" }, { index: false; name: "endingShortFunding"; type: "i128" }]; name: "PerpLiqBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }]; name: "PerpLiqNegativePnlOrBankruptcyLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccountA"; type: "publicKey" }, { index: false; name: "mangoAccountB"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }, { index: false; name: "settler"; type: "publicKey" }, { index: false; name: "fee"; type: "i128" }]; name: "PerpSettlePnlLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "settlement"; type: "i128" }]; name: "PerpSettleFeesLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "buybackFees"; type: "i128" }, { index: false; name: "buybackMngo"; type: "i128" }, { index: false; name: "mngoBuybackPrice"; type: "i128" }, { index: false; name: "oraclePrice"; type: "i128" }]; name: "AccountBuybackFeesWithMngoLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "seqNum"; type: "u64" }]; name: "FilledPerpOrderLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "takerSide"; type: "u8" }, { index: false; name: "totalBaseLotsTaken"; type: "i64" }, { index: false; name: "totalBaseLotsDecremented"; type: "i64" }, { index: false; name: "totalQuoteLotsTaken"; type: "i64" }, { index: false; name: "totalQuoteLotsDecremented"; type: "i64" }, { index: false; name: "takerFeesPaid"; type: "i128" }, { index: false; name: "feePenalty"; type: "i128" }]; name: "PerpTakerTradeLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "perpMarketIndex"; type: "u16" }, { index: false; name: "accountA"; type: "publicKey" }, { index: false; name: "accountB"; type: "publicKey" }, { index: false; name: "baseTransfer"; type: "i64" }, { index: false; name: "quoteTransfer"; type: "i128" }, { index: false; name: "price"; type: "i128" }]; name: "PerpForceClosePositionLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransfer"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "feeFactor"; type: "i128" }]; name: "TokenForceCloseBorrowsWithTokenLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "assetTokenIndex"; type: "u16" }, { index: false; name: "liabTokenIndex"; type: "u16" }, { index: false; name: "assetTransferFromLiqee"; type: "i128" }, { index: false; name: "assetTransferToLiqor"; type: "i128" }, { index: false; name: "assetLiquidationFee"; type: "i128" }, { index: false; name: "liabTransfer"; type: "i128" }, { index: false; name: "assetPrice"; type: "i128" }, { index: false; name: "liabPrice"; type: "i128" }, { index: false; name: "feeFactor"; type: "i128" }]; name: "TokenForceCloseBorrowsWithTokenLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }]; name: "TokenConditionalSwapCreateLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }]; name: "TokenConditionalSwapCreateLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }, { index: false; name: "maxBuy"; type: "u64" }, { index: false; name: "maxSell"; type: "u64" }, { index: false; name: "expiryTimestamp"; type: "u64" }, { index: false; name: "priceLowerLimit"; type: "f64" }, { index: false; name: "priceUpperLimit"; type: "f64" }, { index: false; name: "pricePremiumRate"; type: "f64" }, { index: false; name: "takerFeeRate"; type: "f32" }, { index: false; name: "makerFeeRate"; type: "f32" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "allowCreatingDeposits"; type: "bool" }, { index: false; name: "allowCreatingBorrows"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }, { index: false; name: "tcsType"; type: "u8" }, { index: false; name: "startTimestamp"; type: "u64" }, { index: false; name: "durationSeconds"; type: "u64" }]; name: "TokenConditionalSwapCreateLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }]; name: "TokenConditionalSwapTriggerLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }]; name: "TokenConditionalSwapTriggerLogV2" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "liqee"; type: "publicKey" }, { index: false; name: "liqor"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "buyTokenIndex"; type: "u16" }, { index: false; name: "sellTokenIndex"; type: "u16" }, { index: false; name: "buyAmount"; type: "u64" }, { index: false; name: "sellAmount"; type: "u64" }, { index: false; name: "makerFee"; type: "u64" }, { index: false; name: "takerFee"; type: "u64" }, { index: false; name: "buyTokenPrice"; type: "i128" }, { index: false; name: "sellTokenPrice"; type: "i128" }, { index: false; name: "closed"; type: "bool" }, { index: false; name: "displayPriceStyle"; type: "u8" }, { index: false; name: "intention"; type: "u8" }, { index: false; name: "tcsType"; type: "u8" }, { index: false; name: "startTimestamp"; type: "u64" }]; name: "TokenConditionalSwapTriggerLogV3" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "id"; type: "u64" }]; name: "TokenConditionalSwapCancelLog" }, { fields: [{ index: false; name: "mangoGroup"; type: "publicKey" }, { index: false; name: "mangoAccount"; type: "publicKey" }, { index: false; name: "caller"; type: "publicKey" }, { index: false; name: "tokenConditionalSwapId"; type: "u64" }, { index: false; name: "incentiveTokenIndex"; type: "u16" }, { index: false; name: "incentiveAmount"; type: "u64" }]; name: "TokenConditionalSwapStartLog" }]
                      • instructions: [{ accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: true; name: "admin" }]; args: []; name: "adminTokenWithdrawFees" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: true; name: "admin" }]; args: []; name: "adminPerpWithdrawFees" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Group" }, { kind: "account"; path: "creator"; type: "publicKey" }, { kind: "arg"; path: "group_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "creator" }, { isMut: false; isSigner: false; name: "insuranceMint" }, { isMut: true; isSigner: false; name: "insuranceVault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "InsuranceVault" }, { kind: "account"; path: "group"; type: "publicKey" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "groupNum"; type: "u32" }, { name: "testing"; type: "u8" }, { name: "version"; type: "u8" }]; name: "groupCreate" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "adminOpt"; type: { option: "publicKey" } }, { name: "fastListingAdminOpt"; type: { option: "publicKey" } }, { name: "securityAdminOpt"; type: { option: "publicKey" } }, { name: "testingOpt"; type: { option: "u8" } }, { name: "versionOpt"; type: { option: "u8" } }, { name: "depositLimitQuoteOpt"; type: { option: "u64" } }, { name: "buybackFeesOpt"; type: { option: "bool" } }, { name: "buybackFeesBonusFactorOpt"; type: { option: "f32" } }, { name: "buybackFeesSwapMangoAccountOpt"; type: { option: "publicKey" } }, { name: "mngoTokenIndexOpt"; type: { option: "u16" } }, { name: "buybackFeesExpiryIntervalOpt"; type: { option: "u64" } }, { name: "allowedFastListingsPerIntervalOpt"; type: { option: "u16" } }]; name: "groupEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault", "admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "destination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }]; name: "groupWithdrawInsuranceFund" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "ixGate"; type: "u128" }]; name: "ixGateSet" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin", "insurance_vault"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "groupClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "mintInfo"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MintInfo" }, { kind: "account"; path: "group"; type: "publicKey" }, { account: "Mint"; kind: "account"; path: "mint"; type: "publicKey" }] } }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "fallbackOracle" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oracleConfig"; type: { defined: "OracleConfigParams" } }, { name: "interestRateParams"; type: { defined: "InterestRateParams" } }, { name: "loanFeeRate"; type: "f32" }, { name: "loanOriginationFeeRate"; type: "f32" }, { name: "maintAssetWeight"; type: "f32" }, { name: "initAssetWeight"; type: "f32" }, { name: "maintLiabWeight"; type: "f32" }, { name: "initLiabWeight"; type: "f32" }, { name: "liquidationFee"; type: "f32" }, { name: "stablePriceDelayIntervalSeconds"; type: "u32" }, { name: "stablePriceDelayGrowthLimit"; type: "f32" }, { name: "stablePriceGrowthLimit"; type: "f32" }, { name: "minVaultToDepositsRatio"; type: "f64" }, { name: "netBorrowLimitWindowSizeTs"; type: "u64" }, { name: "netBorrowLimitPerWindowQuote"; type: "i64" }, { name: "borrowWeightScaleStartQuote"; type: "f64" }, { name: "depositWeightScaleStartQuote"; type: "f64" }, { name: "reduceOnly"; type: "u8" }, { name: "tokenConditionalSwapTakerFeeRate"; type: "f32" }, { name: "tokenConditionalSwapMakerFeeRate"; type: "f32" }, { name: "flashLoanSwapFeeRate"; type: "f32" }, { name: "interestCurveScaling"; type: "f32" }, { name: "interestTargetUtilization"; type: "f32" }, { name: "groupInsuranceFund"; type: "bool" }, { name: "depositLimit"; type: "u64" }, { name: "zeroUtilRate"; type: "f32" }, { name: "platformLiquidationFee"; type: "f32" }, { name: "disableAssetLiquidation"; type: "bool" }]; name: "tokenRegister" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "const"; type: "u32"; value: 0 }] } }, { isMut: true; isSigner: false; name: "mintInfo"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MintInfo" }, { kind: "account"; path: "group"; type: "publicKey" }, { account: "Mint"; kind: "account"; path: "mint"; type: "publicKey" }] } }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "fallbackOracle" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "name"; type: "string" }]; name: "tokenRegisterTrustless" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group"] }, { docs: ["The oracle account is optional and only used when reset_stable_price is set.", ""]; isMut: false; isSigner: false; name: "oracle" }, { docs: ["The fallback oracle account is optional and only used when set_fallback_oracle is true.", ""]; isMut: false; isSigner: false; name: "fallbackOracle" }]; args: [{ name: "oracleOpt"; type: { option: "publicKey" } }, { name: "oracleConfigOpt"; type: { option: { defined: "OracleConfigParams" } } }, { name: "groupInsuranceFundOpt"; type: { option: "bool" } }, { name: "interestRateParamsOpt"; type: { option: { defined: "InterestRateParams" } } }, { name: "loanFeeRateOpt"; type: { option: "f32" } }, { name: "loanOriginationFeeRateOpt"; type: { option: "f32" } }, { name: "maintAssetWeightOpt"; type: { option: "f32" } }, { name: "initAssetWeightOpt"; type: { option: "f32" } }, { name: "maintLiabWeightOpt"; type: { option: "f32" } }, { name: "initLiabWeightOpt"; type: { option: "f32" } }, { name: "liquidationFeeOpt"; type: { option: "f32" } }, { name: "stablePriceDelayIntervalSecondsOpt"; type: { option: "u32" } }, { name: "stablePriceDelayGrowthLimitOpt"; type: { option: "f32" } }, { name: "stablePriceGrowthLimitOpt"; type: { option: "f32" } }, { name: "minVaultToDepositsRatioOpt"; type: { option: "f64" } }, { name: "netBorrowLimitPerWindowQuoteOpt"; type: { option: "i64" } }, { name: "netBorrowLimitWindowSizeTsOpt"; type: { option: "u64" } }, { name: "borrowWeightScaleStartQuoteOpt"; type: { option: "f64" } }, { name: "depositWeightScaleStartQuoteOpt"; type: { option: "f64" } }, { name: "resetStablePrice"; type: "bool" }, { name: "resetNetBorrowLimit"; type: "bool" }, { name: "reduceOnlyOpt"; type: { option: "u8" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "tokenConditionalSwapTakerFeeRateOpt"; type: { option: "f32" } }, { name: "tokenConditionalSwapMakerFeeRateOpt"; type: { option: "f32" } }, { name: "flashLoanSwapFeeRateOpt"; type: { option: "f32" } }, { name: "interestCurveScalingOpt"; type: { option: "f32" } }, { name: "interestTargetUtilizationOpt"; type: { option: "f32" } }, { name: "maintWeightShiftStartOpt"; type: { option: "u64" } }, { name: "maintWeightShiftEndOpt"; type: { option: "u64" } }, { name: "maintWeightShiftAssetTargetOpt"; type: { option: "f32" } }, { name: "maintWeightShiftLiabTargetOpt"; type: { option: "f32" } }, { name: "maintWeightShiftAbort"; type: "bool" }, { name: "setFallbackOracle"; type: "bool" }, { name: "depositLimitOpt"; type: { option: "u64" } }, { name: "zeroUtilRateOpt"; type: { option: "f32" } }, { name: "platformLiquidationFeeOpt"; type: { option: "f32" } }, { name: "disableAssetLiquidationOpt"; type: { option: "bool" } }]; name: "tokenEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: false; isSigner: false; name: "existingBank"; relations: ["group", "mint"] }, { isMut: true; isSigner: false; name: "bank"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Bank" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "arg"; path: "bank_num"; type: "u32" }] } }, { isMut: true; isSigner: false; name: "vault"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Vault" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "token_index"; type: "u16" }, { kind: "arg"; path: "bank_num"; type: "u32" }] } }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group", "mint"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "tokenIndex"; type: "u16" }, { name: "bankNum"; type: "u32" }]; name: "tokenAddBank" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "mintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "dustVault" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "tokenDeregister" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "mintInfo"; relations: ["oracle", "group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: false; isSigner: false; name: "instructions" }]; args: []; name: "tokenUpdateIndexAndRate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MangoAccount" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "owner"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "accountNum"; type: "u32" }, { name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "name"; type: "string" }]; name: "accountCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; pda: { seeds: [{ kind: "const"; type: "string"; value: "MangoAccount" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "owner"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "accountNum"; type: "u32" }, { name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "tokenConditionalSwapCount"; type: "u8" }, { name: "name"; type: "string" }]; name: "accountCreateV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }]; name: "accountExpand" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "tokenCount"; type: "u8" }, { name: "serum3Count"; type: "u8" }, { name: "perpCount"; type: "u8" }, { name: "perpOoCount"; type: "u8" }, { name: "tokenConditionalSwapCount"; type: "u8" }]; name: "accountExpandV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: []; name: "accountSizeMigration" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }]; args: [{ name: "nameOpt"; type: { option: "string" } }, { name: "delegateOpt"; type: { option: "publicKey" } }, { name: "temporaryDelegateOpt"; type: { option: "publicKey" } }, { name: "temporaryDelegateExpiryOpt"; type: { option: "u64" } }]; name: "accountEdit" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "admin" }]; args: [{ name: "freeze"; type: "bool" }]; name: "accountToggleFreeze" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group", "owner"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "forceClose"; type: "bool" }]; name: "accountClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "daoAccount"; relations: ["group"] }, { isMut: true; isSigner: false; name: "mngoBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "mngoOracle" }, { isMut: true; isSigner: false; name: "feesBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "feesOracle" }]; args: [{ name: "maxBuybackUsd"; type: "u64" }]; name: "accountBuybackFeesWithMngo" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: true; isSigner: true; name: "oracle" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "mint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "price"; type: { defined: "I80F48" } }]; name: "stubOracleCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "stubOracleClose" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }]; args: [{ name: "price"; type: { defined: "I80F48" } }]; name: "stubOracleSet" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "oracle"; relations: ["group"] }]; args: [{ name: "price"; type: { defined: "I80F48" } }, { name: "lastUpdateSlot"; type: "u64" }, { name: "deviation"; type: { defined: "I80F48" } }]; name: "stubOracleSetTest" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: true; name: "tokenAuthority" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "reduceOnly"; type: "bool" }]; name: "tokenDeposit" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: true; name: "tokenAuthority" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "reduceOnly"; type: "bool" }]; name: "tokenDepositIntoExisting" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "bank"; relations: ["group", "vault", "oracle"] }, { isMut: true; isSigner: false; name: "vault" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "tokenAccount" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "amount"; type: "u64" }, { name: "allowBorrow"; type: "bool" }]; name: "tokenWithdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }]; args: [{ name: "loanAmounts"; type: { vec: "u64" } }]; name: "flashLoanBegin" }, { accounts: [{ isMut: false; isSigner: false; name: "account" }, { isMut: true; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "inputMint" }, { isMut: false; isSigner: false; name: "outputMint" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "tokenProgram" }, { isMut: false; isSigner: false; name: "associatedTokenProgram" }, { docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }]; args: [{ name: "loanAmount"; type: "u64" }]; docs: ["A version of flash_loan_begin that's specialized for swaps and needs fewer", "bytes in the transaction"]; name: "flashLoanSwapBegin" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "flashLoanEnd" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "numLoans"; type: "u8" }, { name: "flashLoanType"; type: { defined: "FlashLoanType" } }]; name: "flashLoanEndV2" }, { accounts: [{ docs: ["Instructions Sysvar for instruction introspection"]; isMut: false; isSigner: false; name: "instructions" }, { isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }]; args: []; name: "healthRegionBegin" }, { accounts: [{ isMut: true; isSigner: false; name: "account" }]; args: []; name: "healthRegionEnd" }, { accounts: [{ isMut: true; isSigner: false; name: "group" }, { docs: ["group admin or fast listing admin, checked at #1"]; isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "serumMarket"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3Market" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "serum_market_external"; type: "publicKey" }] } }, { isMut: true; isSigner: false; name: "indexReservation"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3Index" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "market_index"; type: "u16" }] } }, { isMut: false; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "marketIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oraclePriceBand"; type: "f32" }]; docs: ["", "Serum", ""]; name: "serum3RegisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "market"; relations: ["group"] }]; args: [{ name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "oraclePriceBandOpt"; type: { option: "f32" } }]; name: "serum3EditMarket" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "serumMarket"; relations: ["group"] }, { isMut: true; isSigner: false; name: "indexReservation"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "serum3DeregisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "openOrders"; pda: { seeds: [{ kind: "const"; type: "string"; value: "Serum3OO" }, { kind: "account"; path: "account"; type: "publicKey" }, { kind: "account"; path: "serum_market"; type: "publicKey" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: []; name: "serum3CreateOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: false; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: true; isSigner: false; name: "solDestination" }]; args: []; name: "serum3CloseOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: { defined: "Serum3SelfTradeBehavior" } }, { name: "orderType"; type: { defined: "Serum3OrderType" } }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "serum3PlaceOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: { defined: "Serum3SelfTradeBehavior" } }, { name: "orderType"; type: { defined: "Serum3OrderType" } }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; docs: ["requires the receiver_bank in the health account list to be writable"]; name: "serum3PlaceOrderV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "side"; type: { defined: "Serum3Side" } }, { name: "orderId"; type: "u128" }]; name: "serum3CancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "clientOrderId"; type: "u64" }]; name: "serum3CancelOrderByClientOrderId" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }]; args: [{ name: "limit"; type: "u8" }]; name: "serum3CancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; docs: ["Deprecated instruction that used to settles all free funds from the OpenOrders account", "into the MangoAccount.", "", "Any serum \"referrer rebates\" (ui fees) are considered Mango fees."]; name: "serum3SettleFunds" }, { accounts: [{ accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; name: "v1" }, { accounts: [{ isMut: false; isSigner: false; name: "quoteOracle" }, { isMut: false; isSigner: false; name: "baseOracle" }]; name: "v2" }]; args: [{ name: "feesToDao"; type: "bool" }]; docs: ["Like Serum3SettleFunds, but `fees_to_dao` determines if referrer rebates are considered fees", "or are credited to the MangoAccount."]; name: "serum3SettleFundsV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "serumMarket"; relations: ["group", "serum_program", "serum_market_external"] }, { isMut: false; isSigner: false; name: "serumProgram" }, { isMut: true; isSigner: false; name: "serumMarketExternal" }, { isMut: true; isSigner: false; name: "marketBids" }, { isMut: true; isSigner: false; name: "marketAsks" }, { isMut: true; isSigner: false; name: "marketEventQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "limit"; type: "u8" }]; name: "serum3LiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "liqTokenWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: false; isSigner: false; name: "liabMintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "liqTokenBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "tokenLiqWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }]; args: [{ name: "assetTokenIndex"; type: "u16" }, { name: "liabTokenIndex"; type: "u16" }, { name: "maxLiabTransfer"; type: "u64" }]; name: "tokenForceCloseBorrowsWithToken" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: false; isSigner: false; name: "liabMintInfo"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: { defined: "I80F48" } }]; name: "tokenLiqBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "perpMarket"; pda: { seeds: [{ kind: "const"; type: "string"; value: "PerpMarket" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "perp_market_index"; type: "u16" }] } }, { docs: ["Accounts are initialised by client,", "anchor discriminator is set first when ix exits,"]; isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "perpMarketIndex"; type: "u16" }, { name: "name"; type: "string" }, { name: "oracleConfig"; type: { defined: "OracleConfigParams" } }, { name: "baseDecimals"; type: "u8" }, { name: "quoteLotSize"; type: "i64" }, { name: "baseLotSize"; type: "i64" }, { name: "maintBaseAssetWeight"; type: "f32" }, { name: "initBaseAssetWeight"; type: "f32" }, { name: "maintBaseLiabWeight"; type: "f32" }, { name: "initBaseLiabWeight"; type: "f32" }, { name: "maintOverallAssetWeight"; type: "f32" }, { name: "initOverallAssetWeight"; type: "f32" }, { name: "baseLiquidationFee"; type: "f32" }, { name: "makerFee"; type: "f32" }, { name: "takerFee"; type: "f32" }, { name: "minFunding"; type: "f32" }, { name: "maxFunding"; type: "f32" }, { name: "impactQuantity"; type: "i64" }, { name: "groupInsuranceFund"; type: "bool" }, { name: "feePenalty"; type: "f32" }, { name: "settleFeeFlat"; type: "f32" }, { name: "settleFeeAmountThreshold"; type: "f32" }, { name: "settleFeeFractionLowHealth"; type: "f32" }, { name: "settleTokenIndex"; type: "u16" }, { name: "settlePnlLimitFactor"; type: "f32" }, { name: "settlePnlLimitWindowSizeTs"; type: "u64" }, { name: "positivePnlLiquidationFee"; type: "f32" }, { name: "platformLiquidationFee"; type: "f32" }]; docs: ["", "Perps", ""]; name: "perpCreateMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group"] }, { docs: ["The oracle account is optional and only used when reset_stable_price is set.", ""]; isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "oracleOpt"; type: { option: "publicKey" } }, { name: "oracleConfigOpt"; type: { option: { defined: "OracleConfigParams" } } }, { name: "baseDecimalsOpt"; type: { option: "u8" } }, { name: "maintBaseAssetWeightOpt"; type: { option: "f32" } }, { name: "initBaseAssetWeightOpt"; type: { option: "f32" } }, { name: "maintBaseLiabWeightOpt"; type: { option: "f32" } }, { name: "initBaseLiabWeightOpt"; type: { option: "f32" } }, { name: "maintOverallAssetWeightOpt"; type: { option: "f32" } }, { name: "initOverallAssetWeightOpt"; type: { option: "f32" } }, { name: "baseLiquidationFeeOpt"; type: { option: "f32" } }, { name: "makerFeeOpt"; type: { option: "f32" } }, { name: "takerFeeOpt"; type: { option: "f32" } }, { name: "minFundingOpt"; type: { option: "f32" } }, { name: "maxFundingOpt"; type: { option: "f32" } }, { name: "impactQuantityOpt"; type: { option: "i64" } }, { name: "groupInsuranceFundOpt"; type: { option: "bool" } }, { name: "feePenaltyOpt"; type: { option: "f32" } }, { name: "settleFeeFlatOpt"; type: { option: "f32" } }, { name: "settleFeeAmountThresholdOpt"; type: { option: "f32" } }, { name: "settleFeeFractionLowHealthOpt"; type: { option: "f32" } }, { name: "stablePriceDelayIntervalSecondsOpt"; type: { option: "u32" } }, { name: "stablePriceDelayGrowthLimitOpt"; type: { option: "f32" } }, { name: "stablePriceGrowthLimitOpt"; type: { option: "f32" } }, { name: "settlePnlLimitFactorOpt"; type: { option: "f32" } }, { name: "settlePnlLimitWindowSizeTsOpt"; type: { option: "u64" } }, { name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "resetStablePrice"; type: "bool" }, { name: "positivePnlLiquidationFeeOpt"; type: { option: "f32" } }, { name: "nameOpt"; type: { option: "string" } }, { name: "forceCloseOpt"; type: { option: "bool" } }, { name: "platformLiquidationFeeOpt"; type: { option: "f32" } }]; name: "perpEditMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "perpCloseMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: false; isSigner: false; name: "perpMarket"; relations: ["group"] }]; args: []; name: "perpDeactivatePosition" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceLots"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }]; name: "perpPlaceOrder"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceLots"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "selfTradeBehavior"; type: { defined: "SelfTradeBehavior" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }]; name: "perpPlaceOrderV2"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceOffsetLots"; type: "i64" }, { name: "pegLimit"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }, { name: "maxOracleStalenessSlots"; type: "i32" }]; name: "perpPlaceOrderPegged"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "event_queue", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventQueue" }, { isMut: false; isSigner: false; name: "oracle" }]; args: [{ name: "side"; type: { defined: "Side" } }, { name: "priceOffsetLots"; type: "i64" }, { name: "pegLimit"; type: "i64" }, { name: "maxBaseLots"; type: "i64" }, { name: "maxQuoteLots"; type: "i64" }, { name: "clientOrderId"; type: "u64" }, { name: "orderType"; type: { defined: "PlaceOrderType" } }, { name: "selfTradeBehavior"; type: { defined: "SelfTradeBehavior" } }, { name: "reduceOnly"; type: "bool" }, { name: "expiryTimestamp"; type: "u64" }, { name: "limit"; type: "u8" }, { name: "maxOracleStalenessSlots"; type: "i32" }]; name: "perpPlaceOrderPeggedV2"; returns: { option: "u128" } }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "orderId"; type: "u128" }]; name: "perpCancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "clientOrderId"; type: "u64" }]; name: "perpCancelOrderByClientOrderId" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "perpCancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "sideOption"; type: { option: { defined: "Side" } } }, { name: "limit"; type: "u8" }]; name: "perpCancelAllOrdersBySide" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "event_queue"] }, { isMut: true; isSigner: false; name: "eventQueue" }]; args: [{ name: "limit"; type: "u64" }]; name: "perpConsumeEvents" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks", "oracle"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: false; isSigner: false; name: "oracle" }]; args: []; name: "perpUpdateFunding" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "settler"; relations: ["group"] }, { isMut: false; isSigner: true; name: "settlerOwner" }, { isMut: false; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "accountA"; relations: ["group"] }, { isMut: true; isSigner: false; name: "accountB"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: []; name: "perpSettlePnl" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "accountA"; relations: ["group"] }, { isMut: true; isSigner: false; name: "accountB"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }]; args: []; name: "perpForceClosePosition" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: [{ name: "maxSettleAmount"; type: "u64" }]; name: "perpSettleFees" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }]; args: [{ name: "maxBaseTransfer"; type: "i64" }, { name: "maxPnlTransfer"; type: "u64" }]; name: "perpLiqBaseOrPositivePnl" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "perpLiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: "u64" }]; name: "perpLiqNegativePnlOrBankruptcy" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["insurance_vault"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorOwner" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "perpMarket"; relations: ["group", "oracle"] }, { isMut: false; isSigner: false; name: "oracle" }, { isMut: true; isSigner: false; name: "settleBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "settleVault" }, { isMut: false; isSigner: false; name: "settleOracle" }, { isMut: true; isSigner: false; name: "insuranceVault" }, { isMut: true; isSigner: false; name: "insuranceBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "insuranceBankVault" }, { isMut: false; isSigner: false; name: "insuranceOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxLiabTransfer"; type: "u64" }]; name: "perpLiqNegativePnlOrBankruptcyV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "pricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }]; name: "tokenConditionalSwapCreate" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "pricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "intention"; type: { defined: "TokenConditionalSwapIntention" } }]; name: "tokenConditionalSwapCreateV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceLowerLimit"; type: "f64" }, { name: "priceUpperLimit"; type: "f64" }, { name: "maxPricePremiumRate"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "intention"; type: { defined: "TokenConditionalSwapIntention" } }, { name: "durationSeconds"; type: "u64" }]; name: "tokenConditionalSwapCreatePremiumAuction" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { name: "expiryTimestamp"; type: "u64" }, { name: "priceStart"; type: "f64" }, { name: "priceEnd"; type: "f64" }, { name: "allowCreatingDeposits"; type: "bool" }, { name: "allowCreatingBorrows"; type: "bool" }, { name: "displayPriceStyle"; type: { defined: "TokenConditionalSwapDisplayPriceStyle" } }, { name: "startTimestamp"; type: "u64" }, { name: "durationSeconds"; type: "u64" }]; name: "tokenConditionalSwapCreateLinearAuction" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { docs: ["The bank's token_index is checked at #1"]; isMut: true; isSigner: false; name: "buyBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "sellBank"; relations: ["group"] }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }]; name: "tokenConditionalSwapCancel" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }, { name: "maxBuyTokenToLiqee"; type: "u64" }, { name: "maxSellTokenToLiqor"; type: "u64" }]; name: "tokenConditionalSwapTrigger" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }, { name: "maxBuyTokenToLiqee"; type: "u64" }, { name: "maxSellTokenToLiqor"; type: "u64" }, { name: "minBuyToken"; type: "u64" }, { name: "minTakerPrice"; type: "f32" }]; name: "tokenConditionalSwapTriggerV2" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "liqee"; relations: ["group"] }, { isMut: true; isSigner: false; name: "liqor"; relations: ["group"] }, { isMut: false; isSigner: true; name: "liqorAuthority" }]; args: [{ name: "tokenConditionalSwapIndex"; type: "u8" }, { name: "tokenConditionalSwapId"; type: "u64" }]; name: "tokenConditionalSwapStart" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "addressLookupTable" }]; args: [{ name: "index"; type: "u8" }]; name: "altSet" }, { accounts: [{ isMut: false; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: true; name: "payer" }, { isMut: true; isSigner: false; name: "addressLookupTable" }]; args: [{ name: "index"; type: "u8" }, { name: "newAddresses"; type: { vec: "publicKey" } }]; name: "altExtend" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: false; name: "account"; relations: ["group"] }]; args: []; docs: ["Warning, this instruction is for testing purposes only!"]; name: "computeAccountData" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openbookV2Market"; pda: { seeds: [{ kind: "const"; type: "string"; value: "OpenbookV2Market" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "account"; path: "openbook_v2_market_external"; type: "publicKey" }] } }, { isMut: true; isSigner: false; name: "indexReservation"; pda: { seeds: [{ kind: "const"; type: "string"; value: "OpenbookV2Index" }, { kind: "account"; path: "group"; type: "publicKey" }, { kind: "arg"; path: "market_index"; type: "u16" }] } }, { isMut: false; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: false; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "marketIndex"; type: "u16" }, { name: "name"; type: "string" }]; docs: ["", "OpenbookV2", ""]; name: "openbookV2RegisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "market"; relations: ["group"] }]; args: [{ name: "reduceOnlyOpt"; type: { option: "bool" } }, { name: "forceCloseOpt"; type: { option: "bool" } }]; name: "openbookV2EditMarket" }, { accounts: [{ isMut: true; isSigner: false; name: "group"; relations: ["admin"] }, { isMut: false; isSigner: true; name: "admin" }, { isMut: true; isSigner: false; name: "openbookV2Market"; relations: ["group"] }, { isMut: true; isSigner: false; name: "indexReservation"; relations: ["group"] }, { isMut: true; isSigner: false; name: "solDestination" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "openbookV2DeregisterMarket" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openOrders"; pda: { programId: { kind: "account"; path: "openbook_v2_program"; type: "publicKey" }; seeds: [{ kind: "const"; type: "string"; value: "OpenOrders" }, { kind: "account"; path: "openbook_v2_market"; type: "publicKey" }, { kind: "account"; path: "openbook_v2_market_external"; type: "publicKey" }, { kind: "arg"; path: "account_num"; type: "u32" }] } }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "systemProgram" }, { isMut: false; isSigner: false; name: "rent" }]; args: [{ name: "accountNum"; type: "u32" }]; name: "openbookV2CreateOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: true; isSigner: false; name: "solDestination" }]; args: []; name: "openbookV2CloseOpenOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market" }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: "u8" }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: "u8" }, { name: "orderType"; type: "u8" }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "openbookV2PlaceOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketRequestQueue" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { docs: ["The bank that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerBank"; relations: ["group"] }, { docs: ["The bank vault that pays for the order, if necessary"]; isMut: true; isSigner: false; name: "payerVault" }, { isMut: false; isSigner: false; name: "payerOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "side"; type: "u8" }, { name: "limitPrice"; type: "u64" }, { name: "maxBaseQty"; type: "u64" }, { name: "maxNativeQuoteQtyIncludingFees"; type: "u64" }, { name: "selfTradeBehavior"; type: "u8" }, { name: "clientOrderId"; type: "u64" }, { name: "limit"; type: "u16" }]; name: "openbookV2PlaceTakerOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "side"; type: "u8" }, { name: "orderId"; type: "u128" }]; name: "openbookV2CancelOrder" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: true; isSigner: false; name: "openbookV2MarketExternal" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { docs: ["needed for the automatic settle_funds call"]; isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "quoteOracle" }, { isMut: false; isSigner: false; name: "baseOracle" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "feesToDao"; type: "bool" }]; name: "openbookV2SettleFunds" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks", "event_heap"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }, { isMut: true; isSigner: false; name: "eventHeap" }, { isMut: true; isSigner: false; name: "marketBaseVault" }, { isMut: true; isSigner: false; name: "marketQuoteVault" }, { isMut: false; isSigner: false; name: "marketVaultSigner" }, { isMut: true; isSigner: false; name: "quoteBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "quoteVault" }, { isMut: true; isSigner: false; name: "baseBank"; relations: ["group"] }, { isMut: true; isSigner: false; name: "baseVault" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "limit"; type: "u8" }]; name: "openbookV2LiqForceCancelOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "group" }, { isMut: true; isSigner: false; name: "account"; relations: ["group"] }, { isMut: false; isSigner: true; name: "authority" }, { isMut: true; isSigner: false; name: "openOrders" }, { isMut: false; isSigner: false; name: "openbookV2Market"; relations: ["group", "openbook_v2_program", "openbook_v2_market_external"] }, { isMut: false; isSigner: false; name: "openbookV2Program" }, { isMut: false; isSigner: false; name: "openbookV2MarketExternal"; relations: ["bids", "asks"] }, { isMut: true; isSigner: false; name: "bids" }, { isMut: true; isSigner: false; name: "asks" }]; args: [{ name: "limit"; type: "u8" }]; name: "openbookV2CancelAllOrders" }, { accounts: [{ isMut: false; isSigner: false; name: "dummy" }]; args: []; docs: ["", "benchmark", ""]; name: "benchmark" }]
                      • name: "mango_v4"
                      • types: [{ name: "InterestRateParams"; type: { fields: [{ name: "util0"; type: "f32" }, { name: "rate0"; type: "f32" }, { name: "util1"; type: "f32" }, { name: "rate1"; type: "f32" }, { name: "maxRate"; type: "f32" }, { name: "adjustmentFactor"; type: "f32" }]; kind: "struct" } }, { name: "Equity"; type: { fields: [{ name: "tokens"; type: { vec: { defined: "TokenEquity" } } }, { name: "perps"; type: { vec: { defined: "PerpEquity" } } }]; kind: "struct" } }, { name: "TokenEquity"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { name: "value"; type: { defined: "I80F48" } }]; kind: "struct" } }, { name: "PerpEquity"; type: { fields: [{ name: "perpMarketIndex"; type: "u16" }, { name: "value"; type: { defined: "I80F48" } }]; kind: "struct" } }, { name: "FlashLoanTokenDetail"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { name: "changeAmount"; type: "i128" }, { name: "loan"; type: "i128" }, { name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }]; kind: "struct" } }, { name: "FlashLoanTokenDetailV2"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { docs: ["The amount by which the user's token position changed at the end", "", "So if the user repaid the approved_amount in full, it'd be 0.", "", "Does NOT include the loan_origination_fee or deposit_fee, so the true", "change is `change_amount - loan_origination_fee - deposit_fee`."]; name: "changeAmount"; type: "i128" }, { docs: ["The amount that was a loan (<= approved_amount, depends on user's deposits)"]; name: "loan"; type: "i128" }, { docs: ["The fee paid on the loan, not included in `loan` or `change_amount`"]; name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }, { docs: ["Deposit fee paid for positive change_amount.", "", "Not factored into change_amount."]; name: "depositFee"; type: "i128" }, { docs: ["The amount that was transfered out to the user"]; name: "approvedAmount"; type: "u64" }]; kind: "struct" } }, { name: "FlashLoanTokenDetailV3"; type: { fields: [{ name: "tokenIndex"; type: "u16" }, { docs: ["The amount by which the user's token position changed at the end", "", "So if the user repaid the approved_amount in full, it'd be 0.", "", "Does NOT include the loan_origination_fee or deposit_fee, so the true", "change is `change_amount - loan_origination_fee - deposit_fee`."]; name: "changeAmount"; type: "i128" }, { docs: ["The amount that was a loan (<= approved_amount, depends on user's deposits)"]; name: "loan"; type: "i128" }, { docs: ["The fee paid on the loan, not included in `loan` or `change_amount`"]; name: "loanOriginationFee"; type: "i128" }, { name: "depositIndex"; type: "i128" }, { name: "borrowIndex"; type: "i128" }, { name: "price"; type: "i128" }, { docs: ["Swap fee paid on the in token of a swap.", "", "Not factored into change_amount."]; name: "swapFee"; type: "i128" }, { docs: ["The amount that was transfered out to the user"]; name: "approvedAmount"; type: "u64" }]; kind: "struct" } }, { name: "TokenPosition"; type: { fields: [{ docs: ["The deposit_index (if positive) or borrow_index (if negative) scaled position"]; name: "indexedPosition"; type: { defined: "I80F48" } }, { docs: ["index into Group.tokens"]; name: "tokenIndex"; type: "u16" }, { docs: ["incremented when a market requires this position to stay alive"]; name: "inUseCount"; type: "u16" }, { name: "padding"; type: { array: ["u8", 4] } }, { name: "previousIndex"; type: { defined: "I80F48" } }, { name: "cumulativeDepositInterest"; type: "f64" }, { name: "cumulativeBorrowInterest"; type: "f64" }, { name: "reserved"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { name: "Serum3Orders"; type: { fields: [{ name: "openOrders"; type: "publicKey" }, { docs: ["Tracks the amount of borrows that have flowed into the serum open orders account.", "These borrows did not have the loan origination fee applied, and that may happen", "later (in serum3_settle_funds) if we can guarantee that the funds were used.", "In particular a place-on-book, cancel, settle should not cost fees."]; name: "baseBorrowsWithoutFee"; type: "u64" }, { name: "quoteBorrowsWithoutFee"; type: "u64" }, { name: "marketIndex"; type: "u16" }, { docs: ["Store the base/quote token index, so health computations don't need", "to get passed the static SerumMarket to find which tokens a market", "uses and look up the correct oracles."]; name: "baseTokenIndex"; type: "u16" }, { name: "quoteTokenIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { docs: ["Track something like the highest open bid / lowest open ask, in native/native units.", "", "Tracking it exactly isn't possible since we don't see fills. So instead track", "the min/max of the _placed_ bids and asks.", "", "The value is reset in serum3_place_order when a new order is placed without an", "existing one on the book.", "", "0 is a special \"unset\" state."]; name: "highestPlacedBidInv"; type: "f64" }, { name: "lowestPlacedAsk"; type: "f64" }, { docs: ["An overestimate of the amount of tokens that might flow out of the open orders account.", "", "The bank still considers these amounts user deposits (see Bank::potential_serum_tokens)", "and that value needs to be updated in conjunction with these numbers.", "", "This estimation is based on the amount of tokens in the open orders account", "(see update_bank_potential_tokens() in serum3_place_order and settle)"]; name: "potentialBaseTokens"; type: "u64" }, { name: "potentialQuoteTokens"; type: "u64" }, { docs: ["Track lowest bid/highest ask, same way as for highest bid/lowest ask.", "", "0 is a special \"unset\" state."]; name: "lowestPlacedBidInv"; type: "f64" }, { name: "highestPlacedAsk"; type: "f64" }, { name: "reserved"; type: { array: ["u8", 16] } }]; kind: "struct" } }, { name: "PerpPosition"; type: { fields: [{ name: "marketIndex"; type: "u16" }, { name: "padding"; type: { array: ["u8", 2] } }, { docs: ["Index of the current settle pnl limit window"]; name: "settlePnlLimitWindow"; type: "u32" }, { docs: ["Amount of realized trade pnl and unrealized pnl that was already settled this window.", "", "Will be negative when negative pnl was settled.", "", "Note that this will be adjusted for bookkeeping reasons when the realized_trade settle", "limitchanges and is not useable for actually tracking how much pnl was settled", "on balance."]; name: "settlePnlLimitSettledInCurrentWindowNative"; type: "i64" }, { docs: ["Active position size, measured in base lots"]; name: "basePositionLots"; type: "i64" }, { docs: ["Active position in oracle quote native. At the same time this is 1:1 a settle_token native amount.", "", "Example: Say there's a perp market on the BTC/USD price using SOL for settlement. The user buys", "one long contract for $20k, then base = 1, quote = -20k. The price goes to $21k. Now their", "unsettled pnl is (1 * 21k - 20k) __SOL__ = 1000 SOL. This is because the perp contract arbitrarily", "decides that each unit of price difference creates 1 SOL worth of settlement.", "(yes, causing 1 SOL of settlement for each $1 price change implies a lot of extra leverage; likely", "there should be an extra configurable scaling factor before we use this for cases like that)"]; name: "quotePositionNative"; type: { defined: "I80F48" } }, { docs: ["Tracks what the position is to calculate average entry & break even price"]; name: "quoteRunningNative"; type: "i64" }, { docs: ["Already settled long funding"]; name: "longSettledFunding"; type: { defined: "I80F48" } }, { docs: ["Already settled short funding"]; name: "shortSettledFunding"; type: { defined: "I80F48" } }, { docs: ["Base lots in open bids"]; name: "bidsBaseLots"; type: "i64" }, { docs: ["Base lots in open asks"]; name: "asksBaseLots"; type: "i64" }, { docs: ["Amount of base lots on the EventQueue waiting to be processed"]; name: "takerBaseLots"; type: "i64" }, { docs: ["Amount of quote lots on the EventQueue waiting to be processed"]; name: "takerQuoteLots"; type: "i64" }, { docs: ["Cumulative long funding in quote native units.", "If the user paid $1 in funding for a long position, this would be 1e6.", "Beware of the sign!", "", "(Display only)"]; name: "cumulativeLongFunding"; type: "f64" }, { docs: ["Cumulative short funding in quote native units", "If the user paid $1 in funding for a short position, this would be -1e6.", "", "(Display only)"]; name: "cumulativeShortFunding"; type: "f64" }, { docs: ["Cumulative maker volume in quote native units", "", "(Display only)"]; name: "makerVolume"; type: "u64" }, { docs: ["Cumulative taker volume in quote native units", "", "(Display only)"]; name: "takerVolume"; type: "u64" }, { docs: ["Cumulative number of quote native units transfered from the perp position", "to the settle token spot position.", "", "For example, if the user settled $1 of positive pnl into their USDC spot", "position, this would be 1e6.", "", "(Display only)"]; name: "perpSpotTransfers"; type: "i64" }, { docs: ["The native average entry price for the base lots of the current position.", "Reset to 0 when the base position reaches or crosses 0."]; name: "avgEntryPricePerBaseLot"; type: "f64" }, { docs: ["Deprecated field: Amount of pnl that was realized by bringing the base position closer to 0."]; name: "deprecatedRealizedTradePnlNative"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl that can be settled once.", "", "- The value is signed: a negative number means negative pnl can be settled.", "- A settlement in the right direction will decrease this amount.", "", "Typically added for fees, funding and liquidation."]; name: "oneshotSettlePnlAllowance"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl that can be settled in each settle window.", "", "- Unsigned, the settlement can happen in both directions. Value is >= 0.", "- Previously stored a similar value that was signed, so in migration cases", "this value can be negative and should be .abs()ed.", "- If this value exceeds the current stable-upnl, it should be decreased,", "see apply_recurring_settle_pnl_allowance_constraint()", "", "When the base position is reduced, the settle limit contribution from the reduced", "base position is materialized into this value. When the base position increases,", "some of the allowance is taken away.", "", "This also gets increased when a liquidator takes over pnl."]; name: "recurringSettlePnlAllowance"; type: "i64" }, { docs: ["Trade pnl, fees, funding that were added over the current position's lifetime.", "", "Reset when the position changes sign or goes to zero.", "Not decreased by settling.", "", "This is tracked for display purposes: this value plus the difference between entry", "price and current price of the base position is the overall pnl."]; name: "realizedPnlForPositionNative"; type: { defined: "I80F48" } }, { name: "reserved"; type: { array: ["u8", 88] } }]; kind: "struct" } }, { name: "PerpOpenOrder"; type: { fields: [{ name: "sideAndTree"; type: "u8" }, { name: "padding1"; type: { array: ["u8", 1] } }, { name: "market"; type: "u16" }, { name: "padding2"; type: { array: ["u8", 4] } }, { name: "clientId"; type: "u64" }, { name: "id"; type: "u128" }, { name: "quantity"; type: "i64" }, { name: "reserved"; type: { array: ["u8", 56] } }]; kind: "struct" } }, { name: "MangoAccountFixed"; type: { fields: [{ name: "group"; type: "publicKey" }, { name: "owner"; type: "publicKey" }, { name: "name"; type: { array: ["u8", 32] } }, { name: "delegate"; type: "publicKey" }, { name: "accountNum"; type: "u32" }, { name: "beingLiquidated"; type: "u8" }, { name: "inHealthRegion"; type: "u8" }, { name: "bump"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { name: "netDeposits"; type: "i64" }, { name: "perpSpotTransfers"; type: "i64" }, { name: "healthRegionBeginInitHealth"; type: "i64" }, { name: "frozenUntil"; type: "u64" }, { name: "buybackFeesAccruedCurrent"; type: "u64" }, { name: "buybackFeesAccruedPrevious"; type: "u64" }, { name: "buybackFeesExpiryTimestamp"; type: "u64" }, { name: "nextTokenConditionalSwapId"; type: "u64" }, { name: "temporaryDelegate"; type: "publicKey" }, { name: "temporaryDelegateExpiry"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 160] } }]; kind: "struct" } }, { name: "OracleConfig"; type: { fields: [{ name: "confFilter"; type: { defined: "I80F48" } }, { name: "maxStalenessSlots"; type: "i64" }, { name: "reserved"; type: { array: ["u8", 72] } }]; kind: "struct" } }, { name: "OracleConfigParams"; type: { fields: [{ name: "confFilter"; type: "f32" }, { name: "maxStalenessSlots"; type: { option: "u32" } }]; kind: "struct" } }, { docs: ["InnerNodes and LeafNodes compose the binary tree of orders.", "", "Each InnerNode has exactly two children, which are either InnerNodes themselves,", "or LeafNodes. The children share the top `prefix_len` bits of `key`. The left", "child has a 0 in the next bit, and the right a 1."]; name: "InnerNode"; type: { fields: [{ name: "tag"; type: "u8" }, { name: "padding"; type: { array: ["u8", 3] } }, { docs: ["number of highest `key` bits that all children share", "e.g. if it's 2, the two highest bits of `key` will be the same on all children"]; name: "prefixLen"; type: "u32" }, { docs: ["only the top `prefix_len` bits of `key` are relevant"]; name: "key"; type: "u128" }, { docs: ["indexes into `BookSide::nodes`"]; name: "children"; type: { array: ["u32", 2] } }, { docs: ["The earliest expiry timestamp for the left and right subtrees.", "", "Needed to be able to find and remove expired orders without having to", "iterate through the whole bookside."]; name: "childEarliestExpiry"; type: { array: ["u64", 2] } }, { name: "reserved"; type: { array: ["u8", 72] } }]; kind: "struct" } }, { docs: ["LeafNodes represent an order in the binary tree"]; name: "LeafNode"; type: { fields: [{ docs: ["NodeTag"]; name: "tag"; type: "u8" }, { docs: ["Index into the owning MangoAccount's PerpOpenOrders"]; name: "ownerSlot"; type: "u8" }, { docs: ["PostOrderType, this was added for TradingView move order"]; name: "orderType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 1] } }, { docs: ["Time in seconds after `timestamp` at which the order expires.", "A value of 0 means no expiry."]; name: "timeInForce"; type: "u16" }, { name: "padding2"; type: { array: ["u8", 2] } }, { docs: ["The binary tree key, see new_node_key()"]; name: "key"; type: "u128" }, { docs: ["Address of the owning MangoAccount"]; name: "owner"; type: "publicKey" }, { docs: ["Number of base lots to buy or sell, always >=1"]; name: "quantity"; type: "i64" }, { docs: ["The time the order was placed"]; name: "timestamp"; type: "u64" }, { docs: ["If the effective price of an oracle pegged order exceeds this limit,", "it will be considered invalid and may be removed.", "", "Only applicable in the oracle_pegged OrderTree"]; name: "pegLimit"; type: "i64" }, { docs: ["User defined id for this order, used in FillEvents"]; name: "clientOrderId"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 32] } }]; kind: "struct" } }, { name: "AnyNode"; type: { fields: [{ name: "tag"; type: "u8" }, { name: "data"; type: { array: ["u8", 119] } }]; kind: "struct" } }, { name: "OrderTreeRoot"; type: { fields: [{ name: "maybeNode"; type: "u32" }, { name: "leafCount"; type: "u32" }]; kind: "struct" } }, { docs: ["A binary tree on AnyNode::key()", "", "The key encodes the price in the top 64 bits."]; name: "OrderTreeNodes"; type: { fields: [{ name: "orderTreeType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 3] } }, { name: "bumpIndex"; type: "u32" }, { name: "freeListLen"; type: "u32" }, { name: "freeListHead"; type: "u32" }, { name: "reserved"; type: { array: ["u8", 512] } }, { name: "nodes"; type: { array: [{ defined: "AnyNode" }, 1024] } }]; kind: "struct" } }, { name: "EventQueueHeader"; type: { fields: [{ name: "head"; type: "u32" }, { name: "count"; type: "u32" }, { name: "seqNum"; type: "u64" }]; kind: "struct" } }, { name: "AnyEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 207] } }]; kind: "struct" } }, { name: "FillEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "takerSide"; type: "u8" }, { name: "makerOut"; type: "u8" }, { name: "makerSlot"; type: "u8" }, { name: "padding"; type: { array: ["u8", 4] } }, { name: "timestamp"; type: "u64" }, { name: "seqNum"; type: "u64" }, { name: "maker"; type: "publicKey" }, { name: "padding2"; type: { array: ["u8", 32] } }, { name: "makerTimestamp"; type: "u64" }, { name: "taker"; type: "publicKey" }, { name: "padding3"; type: { array: ["u8", 16] } }, { name: "takerClientOrderId"; type: "u64" }, { name: "makerOrderId"; type: "u128" }, { name: "price"; type: "i64" }, { name: "quantity"; type: "i64" }, { name: "makerClientOrderId"; type: "u64" }, { name: "makerFee"; type: "f32" }, { name: "takerFee"; type: "f32" }, { name: "reserved"; type: { array: ["u8", 8] } }]; kind: "struct" } }, { name: "OutEvent"; type: { fields: [{ name: "eventType"; type: "u8" }, { name: "side"; type: "u8" }, { name: "ownerSlot"; type: "u8" }, { name: "padding0"; type: { array: ["u8", 5] } }, { name: "timestamp"; type: "u64" }, { name: "seqNum"; type: "u64" }, { name: "owner"; type: "publicKey" }, { name: "quantity"; type: "i64" }, { name: "orderId"; type: "u128" }, { name: "padding1"; type: { array: ["u8", 128] } }]; kind: "struct" } }, { docs: ["Maintains a \"stable_price\" based on the oracle price.", "", "The stable price follows the oracle price, but its relative rate of", "change is limited (to `stable_growth_limit`) and futher reduced if", "the oracle price is far from the `delay_price`.", "", "Conceptually the `delay_price` is itself a time delayed", "(`24 * delay_interval_seconds`, assume 24h) and relative rate of change limited", "function of the oracle price. It is implemented as averaging the oracle", "price over every `delay_interval_seconds` (assume 1h) and then applying the", "`delay_growth_limit` between intervals."]; name: "StablePriceModel"; type: { fields: [{ docs: ["Current stable price to use in health"]; name: "stablePrice"; type: "f64" }, { name: "lastUpdateTimestamp"; type: "u64" }, { docs: ["Stored delay_price for each delay_interval.", "If we want the delay_price to be 24h delayed, we would store one for each hour.", "This is used in a cyclical way: We use the maximally-delayed value at delay_interval_index", "and once enough time passes to move to the next delay interval, that gets overwritten and", "we use the next one."]; name: "delayPrices"; type: { array: ["f64", 24] } }, { docs: ["The delay price is based on an average over each delay_interval. The contributions", "to the average are summed up here."]; name: "delayAccumulatorPrice"; type: "f64" }, { docs: ["Accumulating the total time for the above average."]; name: "delayAccumulatorTime"; type: "u32" }, { docs: ["Length of a delay_interval"]; name: "delayIntervalSeconds"; type: "u32" }, { docs: ["Maximal relative difference between two delay_price in consecutive intervals."]; name: "delayGrowthLimit"; type: "f32" }, { docs: ["Maximal per-second relative difference of the stable price.", "It gets further reduced if stable and delay price disagree."]; name: "stableGrowthLimit"; type: "f32" }, { docs: ["The delay_interval_index that update() was last called on."]; name: "lastDelayIntervalIndex"; type: "u8" }, { docs: ["If set to 1, the stable price will reset on the next non-zero price it sees."]; name: "resetOnNonzeroPrice"; type: "u8" }, { name: "padding"; type: { array: ["u8", 6] } }, { name: "reserved"; type: { array: ["u8", 48] } }]; kind: "struct" } }, { name: "TokenConditionalSwap"; type: { fields: [{ name: "id"; type: "u64" }, { docs: ["maximum amount of native tokens to buy or sell"]; name: "maxBuy"; type: "u64" }, { name: "maxSell"; type: "u64" }, { docs: ["how many native tokens were already bought/sold"]; name: "bought"; type: "u64" }, { name: "sold"; type: "u64" }, { docs: ["timestamp until which the conditional swap is valid"]; name: "expiryTimestamp"; type: "u64" }, { docs: ["The lower or starting price:", "- For FixedPremium or PremiumAuctions, it's the lower end of the price range:", "the tcs can only be triggered if the oracle price exceeds this value.", "- For LinearAuctions it's the starting price that's offered at start_timestamp.", "", "The price is always in \"sell_token per buy_token\" units, which can be computed", "by dividing the buy token price by the sell token price.", "", "For FixedPremium or PremiumAuctions:", "", "The price must exceed this threshold to allow execution.", "", "This threshold is compared to the \"sell_token per buy_token\" oracle price.", "If that price is >= lower_limit and <= upper_limit the tcs may be executable.", "", "Example: Stop loss to get out of a SOL long: The user bought SOL at 20 USDC/SOL", "and wants to stop loss at 18 USDC/SOL. They'd set buy_token=USDC, sell_token=SOL", "so the reference price is in SOL/USDC units. Set price_lower_limit=toNative(1/18)", "and price_upper_limit=toNative(1/10). Also set allow_borrows=false.", "", "Example: Want to buy SOL with USDC if the price falls below 22 USDC/SOL.", "buy_token=SOL, sell_token=USDC, reference price is in USDC/SOL units. Set", "price_upper_limit=toNative(22), price_lower_limit=0."]; name: "priceLowerLimit"; type: "f64" }, { docs: ["Parallel to price_lower_limit, but an upper limit / auction end price."]; name: "priceUpperLimit"; type: "f64" }, { docs: ["The premium to pay over oracle price to incentivize execution."]; name: "pricePremiumRate"; type: "f64" }, { docs: ["The taker receives only premium_price * (1 - taker_fee_rate)"]; name: "takerFeeRate"; type: "f32" }, { docs: ["The maker has to pay premium_price * (1 + maker_fee_rate)"]; name: "makerFeeRate"; type: "f32" }, { docs: ["indexes of tokens for the swap"]; name: "buyTokenIndex"; type: "u16" }, { name: "sellTokenIndex"; type: "u16" }, { docs: ["If this struct is in use. (tcs are stored in a static-length array)"]; name: "isConfigured"; type: "u8" }, { docs: ["may token purchases create deposits? (often users just want to get out of a borrow)"]; name: "allowCreatingDeposits"; type: "u8" }, { docs: ["may token selling create borrows? (often users just want to get out of a long)"]; name: "allowCreatingBorrows"; type: "u8" }, { docs: ["The stored prices are always \"sell token per buy token\", but if the user", "used \"buy token per sell token\" when creating the tcs order, we should continue", "to show them prices in that way.", "", "Stores a TokenConditionalSwapDisplayPriceStyle enum value"]; name: "displayPriceStyle"; type: "u8" }, { docs: ["The intention the user had when placing this order, display-only", "", "Stores a TokenConditionalSwapIntention enum value"]; name: "intention"; type: "u8" }, { docs: ["Stores a TokenConditionalSwapType enum value"]; name: "tcsType"; type: "u8" }, { name: "padding"; type: { array: ["u8", 6] } }, { docs: ["In seconds since epoch. 0 means not-started.", "", "FixedPremium: Time of first trigger call. No other effect.", "PremiumAuction: Time of start or first trigger call. Can continue to trigger once started.", "LinearAuction: Set during creation, auction starts with price_lower_limit at this timestamp."]; name: "startTimestamp"; type: "u64" }, { docs: ["Duration of the auction mechanism", "", "FixedPremium: ignored", "PremiumAuction: time after start that the premium needs to scale to price_premium_rate", "LinearAuction: time after start to go from price_lower_limit to price_upper_limit"]; name: "durationSeconds"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 88] } }]; kind: "struct" } }, { docs: ["Nothing in Rust shall use these types. They only exist so that the Anchor IDL", "knows about them and typescript can deserialize it."]; name: "TokenIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "Serum3MarketIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "PerpMarketIndex"; type: { fields: [{ name: "val"; type: "u16" }]; kind: "struct" } }, { name: "I80F48"; type: { fields: [{ name: "val"; type: "i128" }]; kind: "struct" } }, { name: "FlashLoanType"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "Swap" }] } }, { docs: ["Copy paste a bunch of enums so that we could AnchorSerialize & AnchorDeserialize them"]; name: "Serum3SelfTradeBehavior"; type: { kind: "enum"; variants: [{ name: "DecrementTake" }, { name: "CancelProvide" }, { name: "AbortTransaction" }] } }, { name: "Serum3OrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "ImmediateOrCancel" }, { name: "PostOnly" }] } }, { name: "Serum3Side"; type: { kind: "enum"; variants: [{ name: "Bid" }, { name: "Ask" }] } }, { docs: ["There are three types of health:", "- initial health (\"init\"): users can only open new positions if it's >= 0", "- maintenance health (\"maint\"): users get liquidated if it's < 0", "- liquidation end health: once liquidation started (see being_liquidated), it", "only stops once this is >= 0", "", "The ordering is", "init health <= liquidation end health <= maint health", "", "The different health types are realized by using different weights and prices:", "- init health: init weights with scaling, stable-price adjusted prices", "- liq end health: init weights without scaling, oracle prices", "- maint health: maint weights, oracle prices", ""]; name: "HealthType"; type: { kind: "enum"; variants: [{ name: "Init" }, { name: "Maint" }, { name: "LiquidationEnd" }] } }, { name: "LoanOriginationFeeInstruction"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "LiqTokenBankruptcy" }, { name: "LiqTokenWithToken" }, { name: "Serum3LiqForceCancelOrders" }, { name: "Serum3PlaceOrder" }, { name: "Serum3SettleFunds" }, { name: "TokenWithdraw" }, { name: "TokenConditionalSwapTrigger" }] } }, { docs: ["Enum for lookup into ix gate", "note:", "total ix files 56,", "ix files included 48,", "ix files not included 8,", "- Benchmark,", "- ComputeAccountData,", "- GroupCreate", "- GroupEdit", "- IxGateSet,", "- PerpZeroOut,", "- PerpEditMarket,", "- TokenEdit,"]; name: "IxGate"; type: { kind: "enum"; variants: [{ name: "AccountClose" }, { name: "AccountCreate" }, { name: "AccountEdit" }, { name: "AccountExpand" }, { name: "AccountToggleFreeze" }, { name: "AltExtend" }, { name: "AltSet" }, { name: "FlashLoan" }, { name: "GroupClose" }, { name: "GroupCreate" }, { name: "HealthRegion" }, { name: "PerpCancelAllOrders" }, { name: "PerpCancelAllOrdersBySide" }, { name: "PerpCancelOrder" }, { name: "PerpCancelOrderByClientOrderId" }, { name: "PerpCloseMarket" }, { name: "PerpConsumeEvents" }, { name: "PerpCreateMarket" }, { name: "PerpDeactivatePosition" }, { name: "PerpLiqBaseOrPositivePnl" }, { name: "PerpLiqForceCancelOrders" }, { name: "PerpLiqNegativePnlOrBankruptcy" }, { name: "PerpPlaceOrder" }, { name: "PerpSettleFees" }, { name: "PerpSettlePnl" }, { name: "PerpUpdateFunding" }, { name: "Serum3CancelAllOrders" }, { name: "Serum3CancelOrder" }, { name: "Serum3CloseOpenOrders" }, { name: "Serum3CreateOpenOrders" }, { name: "Serum3DeregisterMarket" }, { name: "Serum3EditMarket" }, { name: "Serum3LiqForceCancelOrders" }, { name: "Serum3PlaceOrder" }, { name: "Serum3RegisterMarket" }, { name: "Serum3SettleFunds" }, { name: "StubOracleClose" }, { name: "StubOracleCreate" }, { name: "StubOracleSet" }, { name: "TokenAddBank" }, { name: "TokenDeposit" }, { name: "TokenDeregister" }, { name: "TokenLiqBankruptcy" }, { name: "TokenLiqWithToken" }, { name: "TokenRegister" }, { name: "TokenRegisterTrustless" }, { name: "TokenUpdateIndexAndRate" }, { name: "TokenWithdraw" }, { name: "AccountBuybackFeesWithMngo" }, { name: "TokenForceCloseBorrowsWithToken" }, { name: "PerpForceClosePosition" }, { name: "GroupWithdrawInsuranceFund" }, { name: "TokenConditionalSwapCreate" }, { name: "TokenConditionalSwapTrigger" }, { name: "TokenConditionalSwapCancel" }, { name: "OpenbookV2CancelOrder" }, { name: "OpenbookV2CloseOpenOrders" }, { name: "OpenbookV2CreateOpenOrders" }, { name: "OpenbookV2DeregisterMarket" }, { name: "OpenbookV2EditMarket" }, { name: "OpenbookV2LiqForceCancelOrders" }, { name: "OpenbookV2PlaceOrder" }, { name: "OpenbookV2PlaceTakeOrder" }, { name: "OpenbookV2RegisterMarket" }, { name: "OpenbookV2SettleFunds" }, { name: "AdminTokenWithdrawFees" }, { name: "AdminPerpWithdrawFees" }, { name: "AccountSizeMigration" }, { name: "TokenConditionalSwapStart" }, { name: "TokenConditionalSwapCreatePremiumAuction" }, { name: "TokenConditionalSwapCreateLinearAuction" }, { name: "Serum3PlaceOrderV2" }] } }, { name: "CheckLiquidatable"; type: { kind: "enum"; variants: [{ name: "NotLiquidatable" }, { name: "Liquidatable" }, { name: "BecameNotLiquidatable" }] } }, { name: "OracleType"; type: { kind: "enum"; variants: [{ name: "Pyth" }, { name: "Stub" }, { name: "SwitchboardV1" }, { name: "SwitchboardV2" }, { name: "OrcaCLMM" }] } }, { name: "OrderState"; type: { kind: "enum"; variants: [{ name: "Valid" }, { name: "Invalid" }, { name: "Skipped" }] } }, { name: "BookSideOrderTree"; type: { kind: "enum"; variants: [{ name: "Fixed" }, { name: "OraclePegged" }] } }, { name: "NodeTag"; type: { kind: "enum"; variants: [{ name: "Uninitialized" }, { name: "InnerNode" }, { name: "LeafNode" }, { name: "FreeNode" }, { name: "LastFreeNode" }] } }, { name: "PlaceOrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "ImmediateOrCancel" }, { name: "PostOnly" }, { name: "Market" }, { name: "PostOnlySlide" }] } }, { name: "PostOrderType"; type: { kind: "enum"; variants: [{ name: "Limit" }, { name: "PostOnly" }, { name: "PostOnlySlide" }] } }, { docs: ["Self trade behavior controls how taker orders interact with resting limit orders of the same account.", "This setting has no influence on placing a resting or oracle pegged limit order that does not match", "immediately, instead it's the responsibility of the user to correctly configure his taker orders."]; name: "SelfTradeBehavior"; type: { kind: "enum"; variants: [{ name: "DecrementTake" }, { name: "CancelProvide" }, { name: "AbortTransaction" }] } }, { name: "Side"; type: { kind: "enum"; variants: [{ name: "Bid" }, { name: "Ask" }] } }, { docs: ["SideAndOrderTree is a storage optimization, so we don't need two bytes for the data"]; name: "SideAndOrderTree"; type: { kind: "enum"; variants: [{ name: "BidFixed" }, { name: "AskFixed" }, { name: "BidOraclePegged" }, { name: "AskOraclePegged" }] } }, { name: "OrderParams"; type: { kind: "enum"; variants: [{ name: "Market" }, { fields: [{ name: "price_lots"; type: "i64" }]; name: "ImmediateOrCancel" }, { fields: [{ name: "price_lots"; type: "i64" }, { name: "order_type"; type: { defined: "PostOrderType" } }]; name: "Fixed" }, { fields: [{ name: "price_offset_lots"; type: "i64" }, { name: "order_type"; type: { defined: "PostOrderType" } }, { name: "peg_limit"; type: "i64" }, { name: "max_oracle_staleness_slots"; type: "i32" }]; name: "OraclePegged" }] } }, { name: "OrderTreeType"; type: { kind: "enum"; variants: [{ name: "Bids" }, { name: "Asks" }] } }, { name: "EventType"; type: { kind: "enum"; variants: [{ name: "Fill" }, { name: "Out" }, { name: "Liquidate" }] } }, { name: "TokenConditionalSwapDisplayPriceStyle"; type: { kind: "enum"; variants: [{ name: "SellTokenPerBuyToken" }, { name: "BuyTokenPerSellToken" }] } }, { name: "TokenConditionalSwapIntention"; type: { kind: "enum"; variants: [{ name: "Unknown" }, { name: "StopLoss" }, { name: "TakeProfit" }] } }, { name: "TokenConditionalSwapType"; type: { kind: "enum"; variants: [{ name: "FixedPremium" }, { name: "PremiumAuction" }, { name: "LinearAuction" }] } }]
                      • version: "0.22.0"
                      Modify<T, R>: Omit<T, keyof R> & R

                      Type parameters

                      • T

                      • R

                      OracleConfig: { confFilter: I80F48; maxStalenessSlots: BN }

                      Type declaration

                      • confFilter: I80F48
                      • maxStalenessSlots: BN
                      OracleConfigDto: { confFilter: I80F48Dto; maxStalenessSlots: BN }

                      Type declaration

                      ParsedFillEvent: Modify<FillEvent, { price: number; quantity: number }>
                      PerpMarketIndex: number & As<"perp-market-index">
                      PerpOrderSide: { bid: Record<string, never> } | { ask: Record<string, never> }
                      PerpOrderType: { limit: Record<string, never> } | { immediateOrCancel: Record<string, never> } | { postOnly: Record<string, never> } | { market: Record<string, never> } | { postOnlySlide: Record<string, never> }
                      PerpSelfTradeBehavior: { decrementTake: Record<string, never> } | { cancelProvide: Record<string, never> } | { abortTransaction: Record<string, never> }
                      PlatformFee: { feeAccount: string; feeBps: number }

                      Type declaration

                      • feeAccount: string
                      • feeBps: number
                      PriceImpact: { avg_price_impact_percent: number; max_price_impact_percent: number; min_price_impact_percent: number; p90: number; p95: number; side: "bid" | "ask"; symbol: string; target_amount: number }

                      Type declaration

                      • avg_price_impact_percent: number
                      • max_price_impact_percent: number
                      • min_price_impact_percent: number
                      • p90: number
                      • p95: number
                      • side: "bid" | "ask"
                      • symbol: string
                      • target_amount: number
                      QuoteMintToReferrer: Map<TokenMintAddress, string>
                      Routes: { bestRoute: RouteInfo | null; routes: RouteInfo[] }

                      Type declaration

                      SendTransactionOpts: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>
                      Serum3OrderType: { limit: Record<string, never> } | { immediateOrCancel: Record<string, never> } | { postOnly: Record<string, never> }
                      Serum3SelfTradeBehavior: { decrementTake: Record<string, never> } | { cancelProvide: Record<string, never> } | { abortTransaction: Record<string, never> }
                      Serum3Side: { bid: Record<string, never> } | { ask: Record<string, never> }
                      StablePriceModel: { delayAccumulatorPrice: number; delayAccumulatorTime: number; delayGrowthLimit: number; delayIntervalSeconds: number; delayPrices: number[]; lastDelayIntervalIndex: number; lastUpdateTimestamp: BN; stableGrowthLimit: number; stablePrice: number }

                      Type declaration

                      • delayAccumulatorPrice: number
                      • delayAccumulatorTime: number
                      • delayGrowthLimit: number
                      • delayIntervalSeconds: number
                      • delayPrices: number[]
                      • lastDelayIntervalIndex: number
                      • lastUpdateTimestamp: BN
                      • stableGrowthLimit: number
                      • stablePrice: number
                      Token: { address: string; chainId: number; decimals: number; extensions: { coingeckoId?: string }; logoURI: string; name: string; symbol: string; tags: string[] }

                      Type declaration

                      • address: string
                      • chainId: number
                      • decimals: number
                      • extensions: { coingeckoId?: string }
                        • Optional coingeckoId?: string
                      • logoURI: string
                      • name: string
                      • symbol: string
                      • tags: string[]
                      TokenConditionalSwapDisplayPriceStyle: { sellTokenPerBuyToken: Record<string, never> } | { buyTokenPerSellToken: Record<string, never> }
                      TokenConditionalSwapIntention: { unknown: Record<string, never> } | { stopLoss: Record<string, never> } | { takeProfit: Record<string, never> }
                      TokenIndex: number & As<"token-index">
                      TokenMintAddress: string

                      Variables

                      COMPUTE_BUDGET_PROGRAM_ID: PublicKey = ...
                      I64_MAX_BN: BN = ...
                      IDL: MangoV4 = ...
                      JUPITER: { V3: PublicKey; V4: PublicKey; V6: PublicKey } = ...

                      Type declaration

                      • V3: PublicKey
                      • V4: PublicKey
                      • V6: PublicKey
                      MANGO_ROUTER_API_URL: "https://api.mngo.cloud/router/v1" = 'https://api.mngo.cloud/router/v1'
                      MANGO_V4_ID: { devnet: PublicKey; mainnet-beta: PublicKey; testnet: PublicKey } = ...

                      Type declaration

                      • devnet: PublicKey
                      • mainnet-beta: PublicKey
                      • testnet: PublicKey
                      MANGO_V4_MAIN_GROUP: PublicKey = ...
                      MAX_RECENT_PRIORITY_FEE_ACCOUNTS: 128 = 128
                      NullPerpEditParams: PerpEditParams = ...
                      NullTokenEditParams: TokenEditParams = ...
                      OPENBOOK_PROGRAM_ID: { devnet: PublicKey; mainnet-beta: PublicKey } = ...

                      Type declaration

                      • devnet: PublicKey
                      • mainnet-beta: PublicKey
                      QUOTE_DECIMALS: 6 = 6
                      TrueIxGateParams: IxGateParams = ...
                      U64_MAX_BN: BN = ...
                      USDC_MINT: PublicKey = ...

                      Functions

                      • RUST_I64_MAX(): BN
                      • RUST_I64_MIN(): BN
                      • RUST_U64_MAX(): BN
                      • bpsToDecimal(bps: number): number
                      • buildFetch(): Promise<(input: RequestInfo | URL, init?: RequestInit) => Promise<Response>>
                      • buildIxGate(p: IxGateParams): BN
                      • buildVersionedTx(provider: AnchorProvider, ix: TransactionInstruction[], additionalSigners?: Signer[], alts?: AddressLookupTableAccount[]): Promise<VersionedTransaction>
                      • Parameters

                        • provider: AnchorProvider
                        • ix: TransactionInstruction[]
                        • additionalSigners: Signer[] = []
                        • alts: AddressLookupTableAccount[] = []

                        Returns Promise<VersionedTransaction>

                      • computePriceImpactOnJup(pis: PriceImpact[], usdcAmount: number, tokenName: string): number
                      • Returns price impact in bps i.e. 0 to 10,000 returns -1 if data is missing

                        -

                        Parameters

                        Returns number

                      • containsJupiterProgram(logMessages: string[]): boolean
                      • createAssociatedTokenAccountIdempotentInstruction(payer: PublicKey, owner: PublicKey, mint: PublicKey): Promise<TransactionInstruction>
                      • Parameters

                        • payer: PublicKey
                        • owner: PublicKey
                        • mint: PublicKey

                        Returns Promise<TransactionInstruction>

                      • createComputeBudgetIx(microLamports: number): TransactionInstruction
                      • fetchJupiterTransaction(connection: Connection, selectedRoute: RouteInfo, userPublicKey: PublicKey, slippage: number, inputMint: PublicKey, outputMint: PublicKey): Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>
                      • Parameters

                        • connection: Connection
                        • selectedRoute: RouteInfo
                        • userPublicKey: PublicKey
                        • slippage: number
                        • inputMint: PublicKey
                        • outputMint: PublicKey

                        Returns Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>

                      • fetchRoutes(inputMint: any, outputMint: any, amount?: string, slippage?: number, swapMode?: string, feeBps?: string, wallet?: PublicKey): Promise<Routes>
                      • Parameters

                        • inputMint: any
                        • outputMint: any
                        • amount: string = '0'
                        • slippage: number = 50
                        • swapMode: string = 'ExactIn'
                        • feeBps: string = '0'
                        • wallet: PublicKey = PublicKey.default

                        Returns Promise<Routes>

                      • getAssociatedTokenAddress(mint: PublicKey, owner: PublicKey, allowOwnerOffCurve?: boolean, programId?: PublicKey, associatedTokenProgramId?: PublicKey): Promise<PublicKey>
                      • containsJupiterProgram(logMessages: string[]): boolean
                      • createAssociatedTokenAccountIdempotentInstruction(payer: PublicKey, owner: PublicKey, mint: PublicKey): Promise<TransactionInstruction>
                      • Parameters

                        • payer: PublicKey
                        • owner: PublicKey
                        • mint: PublicKey

                        Returns Promise<TransactionInstruction>

                      • createComputeBudgetIx(microLamports: number): TransactionInstruction
                      • fetchJupiterTransaction(connection: Connection, selectedRoute: RouteInfo, userPublicKey: PublicKey, slippage: number, inputMint: PublicKey, outputMint: PublicKey): Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>
                      • Parameters

                        • connection: Connection
                        • selectedRoute: RouteInfo
                        • userPublicKey: PublicKey
                        • slippage: number
                        • inputMint: PublicKey
                        • outputMint: PublicKey

                        Returns Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>

                      • fetchRoutes(inputMint: any, outputMint: any, amount?: string, slippage?: number, swapMode?: string, feeBps?: string, wallet?: PublicKey): Promise<Routes>
                      • Parameters

                        • inputMint: any
                        • outputMint: any
                        • amount: string = '0'
                        • slippage: number = 50
                        • swapMode: string = 'ExactIn'
                        • feeBps: string = '0'
                        • wallet: PublicKey = PublicKey.default

                        Returns Promise<Routes>

                      • getAssociatedTokenAddress(mint: PublicKey, owner: PublicKey, allowOwnerOffCurve?: boolean, programId?: PublicKey, associatedTokenProgramId?: PublicKey): Promise<PublicKey>
                      • Get the address of the associated token account for a given mint and owner

                        Parameters

                        • mint: PublicKey

                          Token mint account

                          @@ -14,9 +14,9 @@ returns -1 if data is missing

                        • associatedTokenProgramId: PublicKey = ASSOCIATED_TOKEN_PROGRAM_ID

                          SPL Associated Token program account

                        Returns Promise<PublicKey>

                        Address of the associated token account

                        -
                      • getOnChainPriceForMints(mints: string[]): Promise<number[]>
                      • isOracleStaleOrUnconfident(nowSlot: number, maxStalenessSlots: number, oracleLastUpdatedSlot: undefined | number, deviation: undefined | I80F48, confFilter: I80F48, price: I80F48): boolean
                      • isPythOracle(accountInfo: AccountInfo<Buffer>): boolean
                      • isSwitchboardOracle(accountInfo: AccountInfo<Buffer>): boolean
                      • parseSwitchboardOracle(accountInfo: AccountInfo<Buffer>, connection: Connection): Promise<{ lastUpdatedSlot: number; price: number; uiDeviation: number }>
                      • Parameters

                        • accountInfo: AccountInfo<Buffer>
                        • connection: Connection

                        Returns Promise<{ lastUpdatedSlot: number; price: number; uiDeviation: number }>

                        ui price

                        -
                      • parseSwitchboardOracleV1(accountInfo: AccountInfo<Buffer>): { lastUpdatedSlot: number; price: number; uiDeviation: number }
                      • Parameters

                        • accountInfo: AccountInfo<Buffer>

                        Returns { lastUpdatedSlot: number; price: number; uiDeviation: number }

                        • lastUpdatedSlot: number
                        • price: number
                        • uiDeviation: number
                      • parseSwitchboardOracleV2(program: default, accountInfo: AccountInfo<Buffer>): { lastUpdatedSlot: number; price: number; uiDeviation: number }
                      • Parameters

                        • program: default
                        • accountInfo: AccountInfo<Buffer>

                        Returns { lastUpdatedSlot: number; price: number; uiDeviation: number }

                        • lastUpdatedSlot: number
                        • price: number
                        • uiDeviation: number
                      • parseTxForKnownErrors(connection: Connection, signature: string): Promise<TransactionErrors>
                      • percentageToDecimal(percentage: number): number
                      • prepareMangoRouterInstructions(selectedRoute: RouteInfo, inputMint: PublicKey, outputMint: PublicKey, userPublicKey: PublicKey): Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>
                      • Parameters

                        • selectedRoute: RouteInfo
                        • inputMint: PublicKey
                        • outputMint: PublicKey
                        • userPublicKey: PublicKey

                        Returns Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>

                      • roundTo5(number: any): number
                      • sendTransaction(provider: AnchorProvider, ixs: TransactionInstruction[], alts: AddressLookupTableAccount[], opts?: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignature>
                      • sendTransaction(provider: AnchorProvider, ixs: TransactionInstruction[], alts: AddressLookupTableAccount[], opts?: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignatureStatus>
                      • Parameters

                        • provider: AnchorProvider
                        • ixs: TransactionInstruction[]
                        • alts: AddressLookupTableAccount[]
                        • Optional opts: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                        Returns Promise<MangoSignature>

                      • Parameters

                        • provider: AnchorProvider
                        • ixs: TransactionInstruction[]
                        • alts: AddressLookupTableAccount[]
                        • Optional opts: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                        Returns Promise<MangoSignatureStatus>

                      • switchboardDecimalToBig(sbDecimal: { mantissa: BN; scale: number }): Big
                      • toNative(uiAmount: number, decimals: number): BN
                      • toNativeI80F48(uiAmount: number, decimals: number): I80F48
                      • toNativeI80F48ForQuote(uiAmount: number): I80F48
                      • toNativeSellPerBuyTokenPrice(price: number, sellBank: Bank, buyBank: Bank): number
                      • toUiDecimals(nativeAmount: number | BN | I80F48, decimals: number): number
                      • toUiDecimalsForQuote(nativeAmount: number | BN | I80F48): number
                      • toUiSellPerBuyTokenPrice(price: number, sellBank: Bank, buyBank: Bank): number

                      Legend

                      • Constructor
                      • Property
                      • Method
                      • Property
                      • Method
                      • Private property
                      • Private method
                      • Static property
                      • Static method

                      Settings

                      Theme

                      Generated using TypeDoc

                      \ No newline at end of file +

                      Parameters

                      Returns Promise<{ mangoAccount: PublicKey; perpPosition: PerpPosition }[]>

                    • getOnChainPriceForMints(mints: string[]): Promise<number[]>
                    • isOracleStaleOrUnconfident(nowSlot: number, maxStalenessSlots: number, oracleLastUpdatedSlot: undefined | number, deviation: undefined | I80F48, confFilter: I80F48, price: I80F48): boolean
                    • isPythOracle(accountInfo: AccountInfo<Buffer>): boolean
                    • isSwitchboardOracle(accountInfo: AccountInfo<Buffer>): boolean
                    • parseSwitchboardOracle(accountInfo: AccountInfo<Buffer>, connection: Connection): Promise<{ lastUpdatedSlot: number; price: number; uiDeviation: number }>
                    • Parameters

                      • accountInfo: AccountInfo<Buffer>
                      • connection: Connection

                      Returns Promise<{ lastUpdatedSlot: number; price: number; uiDeviation: number }>

                      ui price

                      +
                    • parseSwitchboardOracleV1(accountInfo: AccountInfo<Buffer>): { lastUpdatedSlot: number; price: number; uiDeviation: number }
                    • Parameters

                      • accountInfo: AccountInfo<Buffer>

                      Returns { lastUpdatedSlot: number; price: number; uiDeviation: number }

                      • lastUpdatedSlot: number
                      • price: number
                      • uiDeviation: number
                    • parseSwitchboardOracleV2(program: default, accountInfo: AccountInfo<Buffer>): { lastUpdatedSlot: number; price: number; uiDeviation: number }
                    • Parameters

                      • program: default
                      • accountInfo: AccountInfo<Buffer>

                      Returns { lastUpdatedSlot: number; price: number; uiDeviation: number }

                      • lastUpdatedSlot: number
                      • price: number
                      • uiDeviation: number
                    • parseTxForKnownErrors(connection: Connection, signature: string): Promise<TransactionErrors>
                    • percentageToDecimal(percentage: number): number
                    • prepareMangoRouterInstructions(selectedRoute: RouteInfo, inputMint: PublicKey, outputMint: PublicKey, userPublicKey: PublicKey): Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>
                    • Parameters

                      • selectedRoute: RouteInfo
                      • inputMint: PublicKey
                      • outputMint: PublicKey
                      • userPublicKey: PublicKey

                      Returns Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>

                    • roundTo5(number: any): number
                    • sendTransaction(provider: AnchorProvider, ixs: TransactionInstruction[], alts: AddressLookupTableAccount[], opts?: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignature>
                    • sendTransaction(provider: AnchorProvider, ixs: TransactionInstruction[], alts: AddressLookupTableAccount[], opts?: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>): Promise<MangoSignatureStatus>
                    • Parameters

                      • provider: AnchorProvider
                      • ixs: TransactionInstruction[]
                      • alts: AddressLookupTableAccount[]
                      • Optional opts: { confirmInBackground: true } & Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                      Returns Promise<MangoSignature>

                    • Parameters

                      • provider: AnchorProvider
                      • ixs: TransactionInstruction[]
                      • alts: AddressLookupTableAccount[]
                      • Optional opts: Partial<{ additionalSigners: Keypair[]; alts: AddressLookupTableAccount[]; confirmInBackground: boolean; estimateFee: boolean; latestBlockhash: Readonly<{ blockhash: string; lastValidBlockHeight: number }>; multipleConnections: Connection[]; preflightCommitment: Commitment; prioritizationFee: number; txConfirmationCommitment: Commitment; postSendTxCallback: any; postTxConfirmationCallback: any }>

                      Returns Promise<MangoSignatureStatus>

                    • switchboardDecimalToBig(sbDecimal: { mantissa: BN; scale: number }): Big
                    • toNative(uiAmount: number, decimals: number): BN
                    • toNativeI80F48(uiAmount: number, decimals: number): I80F48
                    • toNativeI80F48ForQuote(uiAmount: number): I80F48
                    • toNativeSellPerBuyTokenPrice(price: number, sellBank: Bank, buyBank: Bank): number
                    • toUiDecimals(nativeAmount: number | BN | I80F48, decimals: number): number
                    • toUiDecimalsForQuote(nativeAmount: number | BN | I80F48): number
                    • toUiSellPerBuyTokenPrice(price: number, sellBank: Bank, buyBank: Bank): number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/AccountEquity.html b/ts/client/interfaces/AccountEquity.html index 0528372c9..a1b0b492b 100644 --- a/ts/client/interfaces/AccountEquity.html +++ b/ts/client/interfaces/AccountEquity.html @@ -1 +1 @@ -AccountEquity | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • AccountEquity

                    Index

                    Properties

                    Properties

                    Account: { highlight: boolean; val: PublicKey }

                    Type declaration

                    • highlight: boolean
                    • val: PublicKey
                    Equity: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +AccountEquity | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • AccountEquity

                    Index

                    Properties

                    Properties

                    Account: { highlight: boolean; val: PublicKey }

                    Type declaration

                    • highlight: boolean
                    • val: PublicKey
                    Equity: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/BankForHealth.html b/ts/client/interfaces/BankForHealth.html index f1f6f68f9..d1cb06d40 100644 --- a/ts/client/interfaces/BankForHealth.html +++ b/ts/client/interfaces/BankForHealth.html @@ -1 +1 @@ -BankForHealth | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • BankForHealth

                    Implemented by

                    Index

                    Properties

                    borrowWeightScaleStartQuote: number
                    depositWeightScaleStartQuote: number
                    initAssetWeight: I80F48
                    initLiabWeight: I80F48
                    maintAssetWeight: I80F48
                    maintLiabWeight: I80F48
                    price: I80F48
                    stablePriceModel: StablePriceModel
                    tokenIndex: TokenIndex

                    Methods

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +BankForHealth | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • BankForHealth

                    Implemented by

                    Index

                    Properties

                    borrowWeightScaleStartQuote: number
                    depositWeightScaleStartQuote: number
                    initAssetWeight: I80F48
                    initLiabWeight: I80F48
                    maintAssetWeight: I80F48
                    maintLiabWeight: I80F48
                    price: I80F48
                    stablePriceModel: StablePriceModel
                    tokenIndex: TokenIndex

                    Methods

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/CumulativeFunding.html b/ts/client/interfaces/CumulativeFunding.html index 1208239ea..09c5826f7 100644 --- a/ts/client/interfaces/CumulativeFunding.html +++ b/ts/client/interfaces/CumulativeFunding.html @@ -1 +1 @@ -CumulativeFunding | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +CumulativeFunding | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/Event.html b/ts/client/interfaces/Event.html index 109815899..21db15ee6 100644 --- a/ts/client/interfaces/Event.html +++ b/ts/client/interfaces/Event.html @@ -1 +1 @@ -Event | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +Event | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/ExactOutSwapParams.html b/ts/client/interfaces/ExactOutSwapParams.html index b8e353d64..4ad390a72 100644 --- a/ts/client/interfaces/ExactOutSwapParams.html +++ b/ts/client/interfaces/ExactOutSwapParams.html @@ -1,3 +1,3 @@ -ExactOutSwapParams | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    Index

                    Properties

                    amount: number
                    +ExactOutSwapParams | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    Index

                    Properties

                    amount: number

                    amount is used for instruction and can be null when it is an intermediate swap, only the first swap has an amount

                    -
                    destinationMint: string
                    inAmount: number
                    openOrdersAddress?: string
                    overflowFeeAccount?: string
                    platformFee?: PlatformFee
                    quoteMintToReferrer?: QuoteMintToReferrer
                    slippageBps: number
                    sourceMint: string
                    swapMode: SwapMode
                    userDestinationTokenAccount: string
                    userSourceTokenAccount: string
                    userTransferAuthority: string

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +
                    destinationMint: string
                    inAmount: number
                    openOrdersAddress?: string
                    overflowFeeAccount?: string
                    platformFee?: PlatformFee
                    quoteMintToReferrer?: QuoteMintToReferrer
                    slippageBps: number
                    sourceMint: string
                    swapMode: SwapMode
                    userDestinationTokenAccount: string
                    userSourceTokenAccount: string
                    userTransferAuthority: string

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/Fee.html b/ts/client/interfaces/Fee.html index f287829bf..3c86d0ac3 100644 --- a/ts/client/interfaces/Fee.html +++ b/ts/client/interfaces/Fee.html @@ -1 +1 @@ -Fee | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +Fee | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/FillEvent.html b/ts/client/interfaces/FillEvent.html index 1de20bc40..a392d7007 100644 --- a/ts/client/interfaces/FillEvent.html +++ b/ts/client/interfaces/FillEvent.html @@ -1 +1 @@ -FillEvent | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    Index

                    Properties

                    eventType: number
                    maker: PublicKey
                    makerFee: number
                    makerOrderId: BN
                    makerOut: boolean
                    makerSlot: number
                    makerTimestamp: BN
                    price: number
                    quantity: number
                    seqNum: BN
                    taker: PublicKey
                    takerClientOrderId: BN
                    takerFee: number
                    takerOrderId: BN
                    takerSide: 0 | 1
                    timestamp: BN

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +FillEvent | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    Index

                    Properties

                    eventType: number
                    maker: PublicKey
                    makerFee: number
                    makerOrderId: BN
                    makerOut: boolean
                    makerSlot: number
                    makerTimestamp: BN
                    price: number
                    quantity: number
                    seqNum: BN
                    taker: PublicKey
                    takerClientOrderId: BN
                    takerFee: number
                    takerOrderId: BN
                    takerSide: 0 | 1
                    timestamp: BN

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/LiqorPriceImpact.html b/ts/client/interfaces/LiqorPriceImpact.html index 24535cf24..916e59afb 100644 --- a/ts/client/interfaces/LiqorPriceImpact.html +++ b/ts/client/interfaces/LiqorPriceImpact.html @@ -1 +1 @@ -LiqorPriceImpact | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • LiqorPriceImpact

                    Index

                    Properties

                    Assets: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Assets Slippage: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Coin: { highlight: boolean; val: string }

                    Type declaration

                    • highlight: boolean
                    • val: string
                    Future Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Jup Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Liabs: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Liabs Slippage: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Oracle Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    V4 Liq Fee: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +LiqorPriceImpact | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • LiqorPriceImpact

                    Index

                    Properties

                    Assets: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Assets Slippage: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Coin: { highlight: boolean; val: string }

                    Type declaration

                    • highlight: boolean
                    • val: string
                    Future Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Jup Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Liabs: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Liabs Slippage: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Oracle Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    V4 Liq Fee: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/LiquidateEvent.html b/ts/client/interfaces/LiquidateEvent.html index 9b8665c34..8bfa4bda0 100644 --- a/ts/client/interfaces/LiquidateEvent.html +++ b/ts/client/interfaces/LiquidateEvent.html @@ -1 +1 @@ -LiquidateEvent | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +LiquidateEvent | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/MangoSignature.html b/ts/client/interfaces/MangoSignature.html index ae5bb45c6..26e609be5 100644 --- a/ts/client/interfaces/MangoSignature.html +++ b/ts/client/interfaces/MangoSignature.html @@ -1 +1 @@ -MangoSignature | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +MangoSignature | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/MangoSignatureStatus.html b/ts/client/interfaces/MangoSignatureStatus.html index 0c031917e..547c42801 100644 --- a/ts/client/interfaces/MangoSignatureStatus.html +++ b/ts/client/interfaces/MangoSignatureStatus.html @@ -1 +1 @@ -MangoSignatureStatus | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • MangoSignatureStatus

                    Index

                    Properties

                    confirmationStatus?: TransactionConfirmationStatus
                    confirmations?: null | number
                    err: null | TransactionError
                    signature: string
                    slot: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +MangoSignatureStatus | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • MangoSignatureStatus

                    Index

                    Properties

                    confirmationStatus?: TransactionConfirmationStatus
                    confirmations?: null | number
                    err: null | TransactionError
                    signature: string
                    slot: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/MarketInfo.html b/ts/client/interfaces/MarketInfo.html index fe3fc6edb..e1d67bb71 100644 --- a/ts/client/interfaces/MarketInfo.html +++ b/ts/client/interfaces/MarketInfo.html @@ -1 +1 @@ -MarketInfo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +MarketInfo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/OutEvent.html b/ts/client/interfaces/OutEvent.html index e9f79cf41..280dc0956 100644 --- a/ts/client/interfaces/OutEvent.html +++ b/ts/client/interfaces/OutEvent.html @@ -1 +1 @@ -OutEvent | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +OutEvent | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/PerpPositionsToBeLiquidated.html b/ts/client/interfaces/PerpPositionsToBeLiquidated.html index 4cd8c385b..5a98d05e9 100644 --- a/ts/client/interfaces/PerpPositionsToBeLiquidated.html +++ b/ts/client/interfaces/PerpPositionsToBeLiquidated.html @@ -1 +1 @@ -PerpPositionsToBeLiquidated | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpPositionsToBeLiquidated

                    Index

                    Properties

                    Future Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Market: { highlight: boolean; val: string }

                    Type declaration

                    • highlight: boolean
                    • val: string
                    Notional Position: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +PerpPositionsToBeLiquidated | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • PerpPositionsToBeLiquidated

                    Index

                    Properties

                    Future Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Market: { highlight: boolean; val: string }

                    Type declaration

                    • highlight: boolean
                    • val: string
                    Notional Position: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number
                    Price: { highlight: boolean; val: number }

                    Type declaration

                    • highlight: boolean
                    • val: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/Quote.html b/ts/client/interfaces/Quote.html index bebec395b..7d9fca205 100644 --- a/ts/client/interfaces/Quote.html +++ b/ts/client/interfaces/Quote.html @@ -1 +1 @@ -Quote | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Quote

                    Index

                    Properties

                    feeAmount: number
                    feeMint: string
                    feePct: number
                    inAmount: number
                    minInAmount?: number
                    minOutAmount?: number
                    notEnoughLiquidity: boolean
                    outAmount: number
                    priceImpactPct: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +Quote | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Quote

                    Index

                    Properties

                    feeAmount: number
                    feeMint: string
                    feePct: number
                    inAmount: number
                    minInAmount?: number
                    minOutAmount?: number
                    notEnoughLiquidity: boolean
                    outAmount: number
                    priceImpactPct: number

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/QuoteParams.html b/ts/client/interfaces/QuoteParams.html index 71bb1b345..8b91fa5b9 100644 --- a/ts/client/interfaces/QuoteParams.html +++ b/ts/client/interfaces/QuoteParams.html @@ -1 +1 @@ -QuoteParams | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +QuoteParams | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/Risk.html b/ts/client/interfaces/Risk.html index a0dc880ad..8f781653c 100644 --- a/ts/client/interfaces/Risk.html +++ b/ts/client/interfaces/Risk.html @@ -1 +1 @@ -Risk | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Risk

                    Index

                    Properties

                    assetDrop: { data: LiqorPriceImpact[]; title: string }

                    Type declaration

                    assetRally: { data: LiqorPriceImpact[]; title: string }

                    Type declaration

                    liqorEquity: { data: AccountEquity[]; title: string }

                    Type declaration

                    marketMakerEquity: { data: AccountEquity[]; title: string }

                    Type declaration

                    perpDrop: { data: PerpPositionsToBeLiquidated[]; title: string }

                    Type declaration

                    perpRally: { data: PerpPositionsToBeLiquidated[]; title: string }

                    Type declaration

                    usdcDepeg: { data: LiqorPriceImpact[]; title: string }

                    Type declaration

                    usdtDepeg: { data: LiqorPriceImpact[]; title: string }

                    Type declaration

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +Risk | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • Risk

                    Index

                    Properties

                    assetDrop: { data: LiqorPriceImpact[]; title: string }

                    Type declaration

                    assetRally: { data: LiqorPriceImpact[]; title: string }

                    Type declaration

                    liqorEquity: { data: AccountEquity[]; title: string }

                    Type declaration

                    marketMakerEquity: { data: AccountEquity[]; title: string }

                    Type declaration

                    perpDrop: { data: PerpPositionsToBeLiquidated[]; title: string }

                    Type declaration

                    perpRally: { data: PerpPositionsToBeLiquidated[]; title: string }

                    Type declaration

                    usdcDepeg: { data: LiqorPriceImpact[]; title: string }

                    Type declaration

                    usdtDepeg: { data: LiqorPriceImpact[]; title: string }

                    Type declaration

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/RouteInfo.html b/ts/client/interfaces/RouteInfo.html index 8f404a158..c14df5163 100644 --- a/ts/client/interfaces/RouteInfo.html +++ b/ts/client/interfaces/RouteInfo.html @@ -1 +1 @@ -RouteInfo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • RouteInfo

                    Index

                    Properties

                    amount: number
                    inAmount: number
                    instructions?: TransactionInstruction[]
                    marketInfos: MarketInfo[]
                    mints?: PublicKey[]
                    otherAmountThreshold: number
                    outAmount: number
                    priceImpactPct: number
                    routerName?: "Mango"
                    slippageBps: number
                    swapMode: SwapMode

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +RouteInfo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    • RouteInfo

                    Index

                    Properties

                    amount: number
                    inAmount: number
                    instructions?: TransactionInstruction[]
                    marketInfos: MarketInfo[]
                    mints?: PublicKey[]
                    otherAmountThreshold: number
                    outAmount: number
                    priceImpactPct: number
                    routerName?: "Mango"
                    slippageBps: number
                    swapMode: SwapMode

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/SwapParams.html b/ts/client/interfaces/SwapParams.html index 30b8023b6..f88e457be 100644 --- a/ts/client/interfaces/SwapParams.html +++ b/ts/client/interfaces/SwapParams.html @@ -1,3 +1,3 @@ -SwapParams | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    Index

                    Properties

                    amount: number
                    +SwapParams | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Hierarchy

                    Index

                    Properties

                    amount: number

                    amount is used for instruction and can be null when it is an intermediate swap, only the first swap has an amount

                    -
                    destinationMint: string
                    openOrdersAddress?: string
                    quoteMintToReferrer?: QuoteMintToReferrer
                    sourceMint: string
                    swapMode: SwapMode
                    userDestinationTokenAccount: string
                    userSourceTokenAccount: string
                    userTransferAuthority: string

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +
                    destinationMint: string
                    openOrdersAddress?: string
                    quoteMintToReferrer?: QuoteMintToReferrer
                    sourceMint: string
                    swapMode: SwapMode
                    userDestinationTokenAccount: string
                    userSourceTokenAccount: string
                    userTransferAuthority: string

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/interfaces/TransactionFeeInfo.html b/ts/client/interfaces/TransactionFeeInfo.html index a47158161..b107c7aa2 100644 --- a/ts/client/interfaces/TransactionFeeInfo.html +++ b/ts/client/interfaces/TransactionFeeInfo.html @@ -1 +1 @@ -TransactionFeeInfo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +TransactionFeeInfo | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/modules/BookSideType.html b/ts/client/modules/BookSideType.html index 98c8d54ca..60205733d 100644 --- a/ts/client/modules/BookSideType.html +++ b/ts/client/modules/BookSideType.html @@ -1 +1 @@ -BookSideType | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +BookSideType | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/modules/FlashLoanType.html b/ts/client/modules/FlashLoanType.html index bb72d3e19..d1f98a681 100644 --- a/ts/client/modules/FlashLoanType.html +++ b/ts/client/modules/FlashLoanType.html @@ -1 +1 @@ -FlashLoanType | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +FlashLoanType | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/modules/PerpOrderSide.html b/ts/client/modules/PerpOrderSide.html index ed6be1d90..3e3e77023 100644 --- a/ts/client/modules/PerpOrderSide.html +++ b/ts/client/modules/PerpOrderSide.html @@ -1 +1 @@ -PerpOrderSide | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file +PerpOrderSide | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Legend

                    • Constructor
                    • Property
                    • Method
                    • Property
                    • Method
                    • Private property
                    • Private method
                    • Static property
                    • Static method

                    Settings

                    Theme

                    Generated using TypeDoc

                    \ No newline at end of file diff --git a/ts/client/modules/PerpOrderType.html b/ts/client/modules/PerpOrderType.html index 61ec7586d..a894c2b29 100644 --- a/ts/client/modules/PerpOrderType.html +++ b/ts/client/modules/PerpOrderType.html @@ -1 +1 @@ -PerpOrderType | @blockworks-foundation/mango-v4
                    Options
                    All
                    • Public
                    • Public/Protected
                    • All
                    Menu

                    Index

                    Variables

                    immediateOrCancel: { immediateOrCancel: {} } = ...

                    Type declaration

                    • immediateOrCancel: {}
                      limit: { limit: {} } = ...

                      Type declaration

                      • limit: {}
                        market: { market: {} } = ...

                        Type declaration

                        • market: {}
                          postOnly: { postOnly: {} } = ...

                          Type declaration

                          • postOnly: {}
                            postOnlySlide: { postOnlySlide: {} } = ...

                            Type declaration

                            • postOnlySlide: {}

                              Legend

                              • Constructor
                              • Property
                              • Method
                              • Property
                              • Method
                              • Private property
                              • Private method
                              • Static property
                              • Static method

                              Settings

                              Theme

                              Generated using TypeDoc

                              \ No newline at end of file +PerpOrderType | @blockworks-foundation/mango-v4
                              Options
                              All
                              • Public
                              • Public/Protected
                              • All
                              Menu

                              Index

                              Variables

                              immediateOrCancel: { immediateOrCancel: {} } = ...

                              Type declaration

                              • immediateOrCancel: {}
                                limit: { limit: {} } = ...

                                Type declaration

                                • limit: {}
                                  market: { market: {} } = ...

                                  Type declaration

                                  • market: {}
                                    postOnly: { postOnly: {} } = ...

                                    Type declaration

                                    • postOnly: {}
                                      postOnlySlide: { postOnlySlide: {} } = ...

                                      Type declaration

                                      • postOnlySlide: {}

                                        Legend

                                        • Constructor
                                        • Property
                                        • Method
                                        • Property
                                        • Method
                                        • Private property
                                        • Private method
                                        • Static property
                                        • Static method

                                        Settings

                                        Theme

                                        Generated using TypeDoc

                                        \ No newline at end of file diff --git a/ts/client/modules/PerpSelfTradeBehavior.html b/ts/client/modules/PerpSelfTradeBehavior.html index e29403b06..8145db1cf 100644 --- a/ts/client/modules/PerpSelfTradeBehavior.html +++ b/ts/client/modules/PerpSelfTradeBehavior.html @@ -1 +1 @@ -PerpSelfTradeBehavior | @blockworks-foundation/mango-v4
                                        Options
                                        All
                                        • Public
                                        • Public/Protected
                                        • All
                                        Menu

                                        Index

                                        Variables

                                        abortTransaction: { abortTransaction: {} } = ...

                                        Type declaration

                                        • abortTransaction: {}
                                          cancelProvide: { cancelProvide: {} } = ...

                                          Type declaration

                                          • cancelProvide: {}
                                            decrementTake: { decrementTake: {} } = ...

                                            Type declaration

                                            • decrementTake: {}

                                              Legend

                                              • Constructor
                                              • Property
                                              • Method
                                              • Property
                                              • Method
                                              • Private property
                                              • Private method
                                              • Static property
                                              • Static method

                                              Settings

                                              Theme

                                              Generated using TypeDoc

                                              \ No newline at end of file +PerpSelfTradeBehavior | @blockworks-foundation/mango-v4
                                              Options
                                              All
                                              • Public
                                              • Public/Protected
                                              • All
                                              Menu

                                              Index

                                              Variables

                                              abortTransaction: { abortTransaction: {} } = ...

                                              Type declaration

                                              • abortTransaction: {}
                                                cancelProvide: { cancelProvide: {} } = ...

                                                Type declaration

                                                • cancelProvide: {}
                                                  decrementTake: { decrementTake: {} } = ...

                                                  Type declaration

                                                  • decrementTake: {}

                                                    Legend

                                                    • Constructor
                                                    • Property
                                                    • Method
                                                    • Property
                                                    • Method
                                                    • Private property
                                                    • Private method
                                                    • Static property
                                                    • Static method

                                                    Settings

                                                    Theme

                                                    Generated using TypeDoc

                                                    \ No newline at end of file diff --git a/ts/client/modules/Serum3OrderType.html b/ts/client/modules/Serum3OrderType.html index 89febd4ce..a2f41ae66 100644 --- a/ts/client/modules/Serum3OrderType.html +++ b/ts/client/modules/Serum3OrderType.html @@ -1 +1 @@ -Serum3OrderType | @blockworks-foundation/mango-v4
                                                    Options
                                                    All
                                                    • Public
                                                    • Public/Protected
                                                    • All
                                                    Menu

                                                    Index

                                                    Variables

                                                    immediateOrCancel: { immediateOrCancel: {} } = ...

                                                    Type declaration

                                                    • immediateOrCancel: {}
                                                      limit: { limit: {} } = ...

                                                      Type declaration

                                                      • limit: {}
                                                        postOnly: { postOnly: {} } = ...

                                                        Type declaration

                                                        • postOnly: {}

                                                          Legend

                                                          • Constructor
                                                          • Property
                                                          • Method
                                                          • Property
                                                          • Method
                                                          • Private property
                                                          • Private method
                                                          • Static property
                                                          • Static method

                                                          Settings

                                                          Theme

                                                          Generated using TypeDoc

                                                          \ No newline at end of file +Serum3OrderType | @blockworks-foundation/mango-v4
                                                          Options
                                                          All
                                                          • Public
                                                          • Public/Protected
                                                          • All
                                                          Menu

                                                          Index

                                                          Variables

                                                          immediateOrCancel: { immediateOrCancel: {} } = ...

                                                          Type declaration

                                                          • immediateOrCancel: {}
                                                            limit: { limit: {} } = ...

                                                            Type declaration

                                                            • limit: {}
                                                              postOnly: { postOnly: {} } = ...

                                                              Type declaration

                                                              • postOnly: {}

                                                                Legend

                                                                • Constructor
                                                                • Property
                                                                • Method
                                                                • Property
                                                                • Method
                                                                • Private property
                                                                • Private method
                                                                • Static property
                                                                • Static method

                                                                Settings

                                                                Theme

                                                                Generated using TypeDoc

                                                                \ No newline at end of file diff --git a/ts/client/modules/Serum3SelfTradeBehavior.html b/ts/client/modules/Serum3SelfTradeBehavior.html index 69901dc59..a194605cd 100644 --- a/ts/client/modules/Serum3SelfTradeBehavior.html +++ b/ts/client/modules/Serum3SelfTradeBehavior.html @@ -1 +1 @@ -Serum3SelfTradeBehavior | @blockworks-foundation/mango-v4
                                                                Options
                                                                All
                                                                • Public
                                                                • Public/Protected
                                                                • All
                                                                Menu

                                                                Index

                                                                Variables

                                                                abortTransaction: { abortTransaction: {} } = ...

                                                                Type declaration

                                                                • abortTransaction: {}
                                                                  cancelProvide: { cancelProvide: {} } = ...

                                                                  Type declaration

                                                                  • cancelProvide: {}
                                                                    decrementTake: { decrementTake: {} } = ...

                                                                    Type declaration

                                                                    • decrementTake: {}

                                                                      Legend

                                                                      • Constructor
                                                                      • Property
                                                                      • Method
                                                                      • Property
                                                                      • Method
                                                                      • Private property
                                                                      • Private method
                                                                      • Static property
                                                                      • Static method

                                                                      Settings

                                                                      Theme

                                                                      Generated using TypeDoc

                                                                      \ No newline at end of file +Serum3SelfTradeBehavior | @blockworks-foundation/mango-v4
                                                                      Options
                                                                      All
                                                                      • Public
                                                                      • Public/Protected
                                                                      • All
                                                                      Menu

                                                                      Index

                                                                      Variables

                                                                      abortTransaction: { abortTransaction: {} } = ...

                                                                      Type declaration

                                                                      • abortTransaction: {}
                                                                        cancelProvide: { cancelProvide: {} } = ...

                                                                        Type declaration

                                                                        • cancelProvide: {}
                                                                          decrementTake: { decrementTake: {} } = ...

                                                                          Type declaration

                                                                          • decrementTake: {}

                                                                            Legend

                                                                            • Constructor
                                                                            • Property
                                                                            • Method
                                                                            • Property
                                                                            • Method
                                                                            • Private property
                                                                            • Private method
                                                                            • Static property
                                                                            • Static method

                                                                            Settings

                                                                            Theme

                                                                            Generated using TypeDoc

                                                                            \ No newline at end of file diff --git a/ts/client/modules/Serum3Side.html b/ts/client/modules/Serum3Side.html index acd88c32b..958196558 100644 --- a/ts/client/modules/Serum3Side.html +++ b/ts/client/modules/Serum3Side.html @@ -1 +1 @@ -Serum3Side | @blockworks-foundation/mango-v4
                                                                            Options
                                                                            All
                                                                            • Public
                                                                            • Public/Protected
                                                                            • All
                                                                            Menu

                                                                            Legend

                                                                            • Constructor
                                                                            • Property
                                                                            • Method
                                                                            • Property
                                                                            • Method
                                                                            • Private property
                                                                            • Private method
                                                                            • Static property
                                                                            • Static method

                                                                            Settings

                                                                            Theme

                                                                            Generated using TypeDoc

                                                                            \ No newline at end of file +Serum3Side | @blockworks-foundation/mango-v4
                                                                            Options
                                                                            All
                                                                            • Public
                                                                            • Public/Protected
                                                                            • All
                                                                            Menu

                                                                            Legend

                                                                            • Constructor
                                                                            • Property
                                                                            • Method
                                                                            • Property
                                                                            • Method
                                                                            • Private property
                                                                            • Private method
                                                                            • Static property
                                                                            • Static method

                                                                            Settings

                                                                            Theme

                                                                            Generated using TypeDoc

                                                                            \ No newline at end of file diff --git a/ts/client/modules/TokenConditionalSwapDisplayPriceStyle.html b/ts/client/modules/TokenConditionalSwapDisplayPriceStyle.html index b75cfdccc..b5f7f0a44 100644 --- a/ts/client/modules/TokenConditionalSwapDisplayPriceStyle.html +++ b/ts/client/modules/TokenConditionalSwapDisplayPriceStyle.html @@ -1 +1 @@ -TokenConditionalSwapDisplayPriceStyle | @blockworks-foundation/mango-v4
                                                                            Options
                                                                            All
                                                                            • Public
                                                                            • Public/Protected
                                                                            • All
                                                                            Menu

                                                                            Namespace TokenConditionalSwapDisplayPriceStyle

                                                                            Index

                                                                            Variables

                                                                            buyTokenPerSellToken: { buyTokenPerSellToken: {} } = ...

                                                                            Type declaration

                                                                            • buyTokenPerSellToken: {}
                                                                              sellTokenPerBuyToken: { sellTokenPerBuyToken: {} } = ...

                                                                              Type declaration

                                                                              • sellTokenPerBuyToken: {}

                                                                                Legend

                                                                                • Constructor
                                                                                • Property
                                                                                • Method
                                                                                • Property
                                                                                • Method
                                                                                • Private property
                                                                                • Private method
                                                                                • Static property
                                                                                • Static method

                                                                                Settings

                                                                                Theme

                                                                                Generated using TypeDoc

                                                                                \ No newline at end of file +TokenConditionalSwapDisplayPriceStyle | @blockworks-foundation/mango-v4
                                                                                Options
                                                                                All
                                                                                • Public
                                                                                • Public/Protected
                                                                                • All
                                                                                Menu

                                                                                Namespace TokenConditionalSwapDisplayPriceStyle

                                                                                Index

                                                                                Variables

                                                                                buyTokenPerSellToken: { buyTokenPerSellToken: {} } = ...

                                                                                Type declaration

                                                                                • buyTokenPerSellToken: {}
                                                                                  sellTokenPerBuyToken: { sellTokenPerBuyToken: {} } = ...

                                                                                  Type declaration

                                                                                  • sellTokenPerBuyToken: {}

                                                                                    Legend

                                                                                    • Constructor
                                                                                    • Property
                                                                                    • Method
                                                                                    • Property
                                                                                    • Method
                                                                                    • Private property
                                                                                    • Private method
                                                                                    • Static property
                                                                                    • Static method

                                                                                    Settings

                                                                                    Theme

                                                                                    Generated using TypeDoc

                                                                                    \ No newline at end of file diff --git a/ts/client/modules/TokenConditionalSwapIntention.html b/ts/client/modules/TokenConditionalSwapIntention.html index 33a809a75..4d44626f7 100644 --- a/ts/client/modules/TokenConditionalSwapIntention.html +++ b/ts/client/modules/TokenConditionalSwapIntention.html @@ -1 +1 @@ -TokenConditionalSwapIntention | @blockworks-foundation/mango-v4
                                                                                    Options
                                                                                    All
                                                                                    • Public
                                                                                    • Public/Protected
                                                                                    • All
                                                                                    Menu

                                                                                    Index

                                                                                    Variables

                                                                                    stopLoss: { stopLoss: {} } = ...

                                                                                    Type declaration

                                                                                    • stopLoss: {}
                                                                                      takeProfit: { takeProfit: {} } = ...

                                                                                      Type declaration

                                                                                      • takeProfit: {}
                                                                                        unknown: { unknown: {} } = ...

                                                                                        Type declaration

                                                                                        • unknown: {}

                                                                                          Legend

                                                                                          • Constructor
                                                                                          • Property
                                                                                          • Method
                                                                                          • Property
                                                                                          • Method
                                                                                          • Private property
                                                                                          • Private method
                                                                                          • Static property
                                                                                          • Static method

                                                                                          Settings

                                                                                          Theme

                                                                                          Generated using TypeDoc

                                                                                          \ No newline at end of file +TokenConditionalSwapIntention | @blockworks-foundation/mango-v4
                                                                                          Options
                                                                                          All
                                                                                          • Public
                                                                                          • Public/Protected
                                                                                          • All
                                                                                          Menu

                                                                                          Index

                                                                                          Variables

                                                                                          stopLoss: { stopLoss: {} } = ...

                                                                                          Type declaration

                                                                                          • stopLoss: {}
                                                                                            takeProfit: { takeProfit: {} } = ...

                                                                                            Type declaration

                                                                                            • takeProfit: {}
                                                                                              unknown: { unknown: {} } = ...

                                                                                              Type declaration

                                                                                              • unknown: {}

                                                                                                Legend

                                                                                                • Constructor
                                                                                                • Property
                                                                                                • Method
                                                                                                • Property
                                                                                                • Method
                                                                                                • Private property
                                                                                                • Private method
                                                                                                • Static property
                                                                                                • Static method

                                                                                                Settings

                                                                                                Theme

                                                                                                Generated using TypeDoc

                                                                                                \ No newline at end of file