#[repr(C)]pub struct BookSide {
+BookSide in mango_v4::state - Rust #[repr(C)]pub struct BookSide {
pub roots: [OrderTreeRoot; 2],
pub reserved_roots: [OrderTreeRoot; 4],
pub reserved: [u8; 256],
pub nodes: OrderTreeNodes,
-}
Fields§
§roots: [OrderTreeRoot; 2]
§reserved_roots: [OrderTreeRoot; 4]
§reserved: [u8; 256]
§nodes: OrderTreeNodes
Implementations§
source§impl BookSide
sourcepub fn iter_valid(
+}Fields§
§roots: [OrderTreeRoot; 2]
§reserved_roots: [OrderTreeRoot; 4]
§reserved: [u8; 256]
§nodes: OrderTreeNodes
Implementations§
source§impl BookSide
sourcepub fn iter_valid(
&self,
now_ts: u64,
oracle_price_lots: i64
@@ -48,6 +48,21 @@ If there is none, try to remove the lowest expiry one from the other component.<
oracle_price_lots: i64
) -> Option<i64>
Walk up the book quantity
units and return the price at that level. If quantity
units
not on book, return None
+sourcepub fn matched_amount(
+ &self,
+ quantity: i64,
+ now_ts: u64,
+ oracle_price_lots: i64
+) -> Option<i64>
Walk up the book given base units and return the amount in quote lots an order would
+be filled at. If not enough liquidity is on book, return None
+sourcepub fn matched_quantity(
+ &self,
+ amount: i64,
+ now_ts: u64,
+ oracle_price_lots: i64
+) -> Option<i64>
Walk up the book given quote units and return the quantity in base lots
+an order would need to request to match at least the requested amount.
+If not enough liquidity is on book, return None
Trait Implementations§
source§impl AccountDeserialize for BookSide
source§fn try_deserialize(buf: &mut &[u8]) -> Result<Self>
Deserializes previously initialized account data. Should fail for all
uninitialized accounts, where the bytes are zeroed. Implementations
should be unique to a particular account type so that one can never
diff --git a/rs/doc/search-index.js b/rs/doc/search-index.js
index 6ab2cc5d7..4b28dc98a 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":"HDLOAAAALOLLLFLLLLLLLFAOOALOAAFLLALALLLLAOLLAOOLLAOALLLLALLALLLODDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNDDDDDDDDDDDDNDNNDNDDDEDDDDDDNDDNDDDDDDDDDDDDDDDDDDDDDDDDDDDDNDDDDDDDEDDEDDDEDDDNDDDDDDDDDDDDDDDDNLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAAAMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRFFRFFRFFRFFDDIDIDIIIILLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMMMKKLLLLKKLLLLKKLKKLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFNNNNNNINNNNNNNNNNNNNNNNNNNNNNINNNENNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNLLLLLLLLLKLLLLOOLLLLLKKLLLLLLLOOLLLLLLLLLLKLLDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLMMLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLIDDENNNDDDDDDDDLLLLLLLLLMMLLLLLLLLLLLLLLMKLLLLMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLMLLLMMLFFFLLMLLLLLLLLLLLLLLLLLLLLLLLKLLMLMMMLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLMFFMMMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIKKKKDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDDDDDDDDDDDDNNEDDDDDDDDDDDNDDNDNDDDDDDNDDDDDDDDNNDDDDDDLMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMFFMMMLMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDIDDDDLMMMLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLFLLLLLLLLLLLLLLLFFFFFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLKLKLKLKLKLKLMMMMMMMMMMLLLLLLLLLLLLLLMMMMMFMMMFMMLLLLLLLLLLLLLLMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLNNNNNNNNNNNNDDNNNNDNNNNNDDDDENNERRNIIDIDDERRNDNNNNDNDNNNRNRNNDNNQENDNNNNNNRRRDDDGGGIDGGGNNDGENRNNNNNNDGDNNNNDDNNDEDEEDDDEDNDRNNNNNNNNNNNNDGDNDNNNENNNNENNRRRIENNNNNNNNDGDDNNNNEENDNNDNNNNNRNNDNNNNEENNENNNGNNDNNNNDNNNDRLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMOOLLLLLLLLMLMMLLLLLLMLMMLLLLLLLLLMMMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMOOLMMMMMLMLLMMMLLMLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMMMMMMMLMLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMFLLLLMMKLLMMMMMMLLLLLKLLLLLLLLLLLMMMLMMMMLMLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLMMMMMMMMMMMLLLLMFFMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLMMLMLMMMMMMMMMMMMMMOOMLLLLLKLMMLMMMMMMMLMMMKLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLLLLMMMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMMMMMMMMMLMKKKMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLMMLMMMMLMLMMMMMMMMMMMMLMLLMMMLMMMLMLMMMMMMLLLLLLLMMMMMMLLLLLMMMMMLLLLLLLFLLLMMLLLMMLLMMLMMMOOMLMMMMMFFFLLLMLLFMMLMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLMLMLLMLLLMMLLLLLLMMMMLLMMLMMMFMLMLMMMLMMMMLLLMMMMLMMLMMMMMFMMMMMLLLLLLMMMMMMMMMLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLMOOMLKLLKLLLMMMLLLMMMMMMMMLLLLLMMLMLLMMLMLLMMMMMAAMMMMMMLMMMLMLMMMLMMMMLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLMMLMLMMMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMRFFRFFDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFF","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","InvalidFlashLoanTargetCpiProgram","InvalidHealthAccountCount","IsAnchorErrorWithCode","IsBankrupt","IsNotBankrupt","IxIsDisabled","MangoError","MarketInReduceOnlyMode","MathError","MaxSettleAmountMustBeGreaterThanZero","NoFreePerpPositionIndex","NoFreeSerum3OpenOrdersIndex","NoFreeTokenPositionIndex","NoLiquidatablePerpBasePosition","NotImplementedError","OracleConfidence","OracleStale","PerpHasBaseLots","PerpOrderIdNotFound","PerpPositionDoesNotExist","ProfitabilityMismatch","Serum3OpenOrdersExistAlready","Serum3PriceBandExceeded","SettlementAmountMustBePositive","SomeError","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","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","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","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","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","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","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","AccountBuybackFeesWithMngoLog","DeactivatePerpPositionLog","DeactivateTokenPositionLog","DepositLog","FillLog","FillLogV2","FillLogV3","FilledPerpOrderLog","FlashLoanLog","FlashLoanLogV2","FlashLoanLogV3","FlashLoanTokenDetail","FlashLoanTokenDetailV2","FlashLoanTokenDetailV3","LiqTokenBankruptcy","LiqTokenWithToken","LoanOriginationFeeInstruction","PerpBalanceLog","PerpForceClosePositionLog","PerpLiqBankruptcyLog","PerpLiqBaseOrPositivePnlLog","PerpLiqNegativePnlOrBankruptcyLog","PerpMarketMetaDataLog","PerpSettleFeesLog","PerpSettlePnlLog","PerpTakerTradeLog","PerpUpdateFundingLog","PerpUpdateFundingLogV2","Serum3LiqForceCancelOrders","Serum3OpenOrdersBalanceLog","Serum3OpenOrdersBalanceLogV2","Serum3PlaceOrder","Serum3RegisterMarketLog","Serum3SettleFunds","TokenBalanceLog","TokenConditionalSwapCancelLog","TokenConditionalSwapCreateLog","TokenConditionalSwapCreateLogV2","TokenConditionalSwapCreateLogV3","TokenConditionalSwapStartLog","TokenConditionalSwapTrigger","TokenConditionalSwapTriggerLog","TokenConditionalSwapTriggerLogV2","TokenConditionalSwapTriggerLogV3","TokenForceCloseBorrowsWithTokenLog","TokenLiqBankruptcyLog","TokenLiqWithTokenLog","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_price","asset_price","asset_token_index","asset_token_index","asset_transfer","asset_transfer","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","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","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","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_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","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_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","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","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_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","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_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","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_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","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","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","liab_price","liab_price","liab_price","liab_token_index","liab_token_index","liab_token_index","liab_transfer","liab_transfer","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","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","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","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","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_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","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_spot_transfers","pnl_settle_limit_transfer","pnl_transfer","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_position","quote_token_index","quote_token_index","quote_token_index","quote_total","quote_total","quote_transfer","quote_transfer","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_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","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","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_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","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","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_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","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","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_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","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","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2Market","OpenbookV2MarketIndex","OpenbookV2MarketIndexReservation","OpenbookV2PlaceOrder","OpenbookV2PlaceTakeOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","OracleConfig","OracleConfigParams","OraclePegged","OraclePegged","OracleState","OracleType","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","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","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","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","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","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_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_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","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_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_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_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","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_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","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","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_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","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","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_min_vault_to_deposits_ratio","ensure_perp_position","ensure_token_position","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","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_oracle","fallback_oracle","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_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_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_existing_bank","from_leaf_node","frozen_until","frozen_until","full","funding_last_updated","gen_order_id","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_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_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_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","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","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","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","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","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_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_price_with_fallback","oracle_state","oracle_state_unchecked","oracle_type","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_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","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","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","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_other_pnl_native","realized_pnl_for_position_native","realized_trade_pnl_native","record_liquidation_pnl_takeover","record_liquidation_quote_change","record_settle","record_trade","record_trading_fee","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_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","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_realized_trade","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","sold","source_is_active","space","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_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_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_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","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_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","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","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","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_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","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","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","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::switchboard_v1_devnet_oracle","","","mango_v4::state::switchboard_v2_mainnet_oracle","","","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
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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","","","","","","","","","","","","","","","","","","","","","","","","","","","","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 toen borrows plus a …","","","","","","","","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.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","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)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","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 …","","","","","","","","","","","","","","","","","","","","","","","","","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.","","","","","","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","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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","","","","","","","","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.","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","calcualtor 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)
.","","","","","","","","","","","","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","","","","","","","","","","","","","","","","","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","","","","","","","","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 remaining sell amount, taking the current sell token …","","","","","Minimal funding rate per day, must be <= 0.","","Min fraction of deposits that must remain in the vault …","","","","","","","","","","","","","","","","","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","","","","","","","","","","","","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 …","","","","Limit orders must be <= oracle * (1+band) and >= oracle / …","Tries to return the primary oracle price, and if there is …","","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 …","","","","","","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 …","","","Amount of pnl realized from fees, funding and liquidation.","Trade pnl, fees, funding that were added over the current …","Amount of pnl that was realized by bringing the base …","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","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 …","Settle limit contribution from realized pnl.","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 …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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 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,477,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,478,479,194,195,196,197,478,479,194,195,196,197,480,481,195,480,481,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,477,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,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,482,205,205,205,205,0,0,205,205,205,205,205,483,483,205,205,205,205,205,205,205,0,0,205,205,205,205,205,205,205,205,205,205,482,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,228,217,219,214,222,224,223,217,218,219,225,226,227,228,214,219,484,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,484,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,484,222,223,228,0,0,225,217,222,217,218,219,225,226,227,228,214,219,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,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,485,485,486,486,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,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,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,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,337,0,0,337,0,337,0,0,0,0,0,0,337,0,0,0,0,0,0,0,0,337,337,0,0,0,0,0,0,337,373,373,375,376,377,375,376,377,384,385,353,374,353,374,353,374,350,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,353,363,354,355,363,338,354,355,364,354,355,365,373,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,339,383,384,385,350,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,350,378,379,380,375,376,377,378,379,380,378,379,380,370,370,382,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,337,337,378,379,380,350,359,359,360,360,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,384,339,383,384,385,350,350,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,337,376,377,379,380,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,377,0,0,358,366,366,337,375,376,377,362,368,374,372,348,349,348,349,340,341,342,337,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,375,376,377,381,382,382,339,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,358,348,349,356,357,358,358,366,376,377,379,380,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,353,358,374,353,358,374,353,374,353,358,365,366,367,374,378,379,380,353,358,365,366,367,374,378,379,380,383,384,385,357,350,383,384,385,356,357,338,348,349,338,338,338,339,339,383,383,384,384,385,385,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,337,337,356,356,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,338,338,339,339,383,383,384,384,385,385,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,337,337,356,356,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,345,346,347,346,347,347,345,346,347,378,379,380,375,376,377,345,345,346,347,345,346,347,345,346,347,360,338,339,340,341,342,343,344,354,355,356,357,359,360,369,370,372,375,376,377,381,382,368,368,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,338,345,346,347,348,349,355,360,364,375,376,377,351,352,375,376,377,361,362,361,362,361,362,370,348,349,361,362,363,349,370,348,349,349,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,363,363,365,366,367,368,369,371,372,373,360,365,365,383,384,385,343,344,345,346,347,348,349,350,357,365,373,375,376,377,375,376,377,375,376,377,343,344,345,346,347,354,355,363,338,354,355,364,354,355,365,373,351,352,351,352,354,355,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,378,379,380,375,376,377,378,379,380,378,379,380,345,346,347,371,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,364,364,364,367,368,369,368,338,348,349,338,343,344,358,366,348,349,350,377,380,358,366,366,385,345,346,347,345,346,347,347,345,346,347,378,379,380,375,376,377,372,345,345,346,347,372,360,352,377,380,345,346,347,337,378,379,380,382,339,383,384,385,343,344,350,351,352,356,357,359,361,362,340,341,342,372,372,350,350,372,372,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,352,352,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,0,0,0,0,0,0,0,0,409,409,405,407,401,403,404,405,407,409,238,404,405,405,407,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,407,407,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,409,409,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,405,407,238,401,403,404,405,407,409,238,238,0,401,403,404,405,407,409,238,401,403,404,405,407,409,238,409,0,0,0,0,0,0,401,401,403,403,404,404,405,405,407,407,409,409,238,238,401,401,403,403,404,404,405,405,407,407,409,409,238,238,401,403,404,405,407,487,238,487,238,487,238,487,238,487,238,487,238,487,238,401,403,404,405,407,401,403,404,407,405,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,0,404,405,404,0,401,405,401,403,404,405,407,409,238,401,403,404,405,407,409,238,403,409,404,405,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,405,404,404,404,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,395,438,438,438,438,438,438,438,438,438,438,438,0,0,233,428,428,447,0,434,233,428,428,447,0,0,0,0,0,398,395,0,0,0,395,0,0,0,0,0,0,0,0,0,453,0,488,418,458,438,0,472,0,438,438,438,0,438,0,488,393,0,472,444,489,0,472,0,472,393,446,458,434,453,0,0,0,0,0,0,0,0,0,0,0,0,0,0,488,393,0,0,0,434,0,438,438,438,438,438,438,0,0,0,438,438,438,438,0,0,488,418,0,0,0,0,0,0,0,0,0,0,453,0,0,438,438,438,438,438,438,438,438,438,438,438,438,0,0,0,438,0,438,438,438,0,393,446,393,446,0,458,442,0,0,0,0,0,398,438,438,438,438,438,438,438,0,0,0,0,438,438,438,438,0,0,444,0,399,442,0,438,438,438,442,442,0,399,438,0,438,438,438,438,0,0,438,438,0,438,438,438,0,438,438,0,438,438,438,438,0,472,399,444,0,0,215,415,402,438,439,413,412,429,237,235,436,423,440,441,433,442,443,418,425,444,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,439,413,468,0,0,412,413,415,415,415,415,415,235,402,235,215,402,415,415,415,415,415,420,420,420,420,402,235,215,215,421,421,421,421,422,419,426,236,235,235,235,235,215,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,215,0,0,423,423,237,236,236,236,235,235,235,424,237,440,455,415,413,439,425,426,236,235,236,426,426,430,435,468,431,426,490,462,464,461,488,463,215,415,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,430,435,468,431,426,490,462,464,461,488,463,215,415,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,420,235,450,215,402,439,413,440,236,455,468,449,420,402,402,413,439,413,439,413,402,439,413,402,402,426,426,426,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,215,431,431,215,415,415,415,415,415,215,412,431,420,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,422,422,436,436,461,419,215,415,402,438,439,413,412,429,237,235,436,423,440,441,433,442,443,418,425,444,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,415,402,438,439,413,412,429,237,235,436,423,440,441,433,442,443,418,425,444,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,0,215,215,215,236,433,392,489,451,415,402,429,429,235,235,421,415,415,415,415,415,489,451,429,429,237,235,436,395,457,420,439,236,457,457,457,457,457,457,439,413,215,215,215,215,215,402,215,215,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,414,417,439,429,237,235,436,433,392,442,418,422,419,393,446,395,233,428,447,424,454,398,399,458,420,442,418,393,446,395,233,428,447,398,399,458,0,431,443,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,420,215,215,415,439,439,439,439,439,439,439,422,421,235,423,236,215,415,415,434,442,418,444,419,393,446,395,233,428,447,453,398,399,458,418,418,419,419,393,393,446,446,395,395,233,233,428,428,447,447,453,453,398,398,399,399,458,458,236,452,424,454,415,415,415,412,413,419,420,215,423,402,402,402,236,236,236,215,236,449,449,423,423,415,0,0,215,215,215,215,402,438,439,412,429,237,235,436,423,440,441,433,392,418,419,393,446,395,233,428,447,452,424,454,236,455,456,457,420,215,440,236,455,449,449,415,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,491,231,459,415,415,412,215,454,439,413,450,236,236,468,215,439,413,423,440,441,443,236,455,456,423,236,402,0,0,462,430,435,235,235,235,489,451,415,450,415,439,439,413,237,237,436,420,425,236,439,429,489,451,429,215,215,215,429,430,435,468,431,426,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,236,236,215,236,491,412,425,449,236,402,402,420,215,215,215,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,464,463,233,429,237,235,436,237,235,436,429,420,420,413,450,419,420,215,440,236,455,425,449,413,429,402,413,413,461,233,233,233,440,236,455,420,420,402,420,462,215,402,413,429,237,235,436,423,440,441,433,443,425,422,419,445,421,448,449,450,451,452,424,454,236,455,456,457,420,449,450,425,425,402,421,422,419,457,215,431,443,457,443,448,450,215,492,492,492,430,435,215,430,435,215,236,235,430,430,435,435,468,468,431,431,426,426,490,490,462,462,464,464,461,461,488,488,463,463,215,215,415,415,402,402,438,438,434,434,439,439,413,413,412,412,429,429,237,237,235,235,436,436,423,423,440,440,441,441,433,433,392,392,442,442,443,443,418,418,425,425,444,444,472,472,422,422,419,419,445,445,421,421,393,393,446,446,395,395,233,233,428,428,447,447,448,448,449,449,450,450,451,451,452,452,453,453,424,424,454,454,236,236,455,455,456,456,457,457,398,398,399,399,458,458,420,420,430,430,435,435,468,468,431,431,426,426,490,490,462,462,464,464,461,461,488,488,463,463,215,215,415,415,402,402,438,438,434,434,439,439,413,413,412,412,429,429,237,237,235,235,436,436,423,423,440,440,441,441,433,433,392,392,442,442,443,443,418,418,425,425,444,444,472,472,422,422,419,419,445,445,421,421,393,393,446,446,395,395,233,233,428,428,447,447,448,448,449,449,450,450,451,451,452,452,453,453,424,424,454,454,236,236,455,455,456,456,457,457,398,398,399,399,458,458,420,420,236,237,237,215,236,236,215,236,215,215,215,215,215,215,424,424,420,424,236,420,424,424,424,420,424,424,235,436,237,235,440,441,455,456,461,420,420,236,412,449,461,215,420,420,433,392,448,413,236,449,215,215,423,443,215,402,402,463,215,413,440,236,455,215,439,413,440,236,455,429,215,215,236,461,215,215,215,439,413,464,463,422,419,428,424,454,0,426,464,463,439,413,425,448,449,490,462,425,449,425,449,423,236,237,440,0,0,440,402,215,423,236,215,236,0,0,0,215,236,455,455,215,236,0,431,454,428,490,449,449,419,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,402,439,413,423,440,441,443,425,450,236,455,456,468,439,413,419,454,419,454,215,402,439,413,429,237,235,422,419,449,452,424,457,420,436,423,440,455,436,440,419,424,455,439,424,236,439,236,439,439,439,439,461,420,413,463,450,450,461,419,412,412,415,415,236,415,412,412,412,439,415,415,415,415,415,415,439,413,235,439,402,450,430,236,461,237,237,215,0,422,420,429,461,431,443,424,419,462,420,420,420,464,463,450,436,419,424,454,425,237,236,235,235,235,237,440,455,0,215,215,235,235,235,235,235,235,235,235,413,461,215,440,236,455,423,440,236,455,420,215,215,420,425,449,425,449,415,235,425,449,215,402,439,413,429,237,235,436,423,440,441,433,443,425,422,419,449,450,424,236,455,456,457,420,439,425,457,457,415,450,425,425,425,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,215,402,461,420,451,424,454,236,439,429,237,235,436,433,392,442,418,422,419,393,446,395,233,428,447,424,454,398,399,458,420,439,412,412,412,415,415,415,415,402,455,0,0,455,413,489,451,236,489,451,413,420,236,236,236,235,235,236,236,235,235,235,236,236,236,235,463,425,428,447,454,461,454,436,436,468,236,420,435,439,457,215,236,457,215,236,420,462,0,0,422,419,421,424,235,424,420,424,236,420,420,235,424,424,235,435,420,420,413,413,402,461,461,419,419,424,454,392,215,415,402,438,439,413,412,429,237,235,436,423,440,441,433,442,443,418,425,444,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,393,415,415,412,412,415,215,415,215,439,412,412,415,215,429,423,412,415,415,415,415,415,439,215,402,439,423,440,441,443,425,450,236,455,456,215,402,439,423,440,441,443,425,450,236,455,456,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,418,425,444,472,472,422,419,445,421,393,393,446,446,395,395,233,233,428,428,447,447,448,449,450,451,452,453,453,424,424,424,454,454,454,236,455,456,457,398,398,399,399,458,458,420,418,472,393,446,395,233,428,447,453,398,399,458,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,439,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,429,235,235,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,457,215,236,215,215,449,215,235,215,215,215,423,215,423,402,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,215,215,215,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,412,493,494,493,493,495,494,493,0,0,0,0,0,0,0,0,0,0,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,473,474,474,475,475,476,476,473,473,474,474,475,475,476,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,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]]]]]],[[],8],[101,[[8,[98,[193,[98]]]]]],[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],[[],[[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,[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,[[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,[[216,216,216,216],[[103,[216]]]],[[216,216,216,216],[[103,[216]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[214,220],[[103,[219]]]],[[214,220],[[103,[6]]]],[[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,[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,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[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,[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,[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,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],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]]]],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],[[],[[8,[338,11]]]],[[],[[8,[339,11]]]],[[],[[8,[383,11]]]],[[],[[8,[384,11]]]],[[],[[8,[385,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,[337,11]]]],[[],[[8,[356,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]]]],[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],0,[[2,2,235,236]],[386],0,0,0,[[337,337],3],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],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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]]]],[383,[[8,[11]]]],[384,[[8,[11]]]],[385,[[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]]]],[337,[[8,[11]]]],[356,[[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]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],0,0,0,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],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],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,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[387,[102]],230],103],[[[387,[104]],3],103],[[[387,[105]],207,101,101,101,101,209],103],[[[387,[106]],207,101,101,101,101,101,209],103],[[[387,[107]],[4,[209]],[4,[2]],[4,[2]],[4,[230]]],103],[[[387,[108]],101,101,101,101],103],[[[387,[108]],101,101,101,101,101],103],[[[387,[109]]],103],[[[387,[110]],3],103],[[[387,[111]]],103],[[[387,[112]]],103],[[[387,[113]],101,[95,[2]]],103],[[[387,[114]],101],103],[[[387,[115]]],103],[[[387,[116]]],103],[[[387,[117]],[95,[230]]],103],[[[387,[119]],96],103],[[[387,[119]],101,96],103],[[[387,[118]],230],103],[[[387,[120]]],103],[[[387,[121]],207,101,101],103],[[[387,[122]],[4,[2]],[4,[2]],[4,[2]],[4,[101]],[4,[101]],[4,[230]],[4,[3]],[4,[388]],[4,[2]],[4,[220]],[4,[230]],[4,[389]]],103],[[[387,[123]],230],103],[[[387,[124]]],103],[[[387,[125]]],103],[[[387,[126]],390],103],[[[387,[180]],216],103],[[[387,[181]],220,220,216],103],[[[387,[127]],101],103],[[[387,[127]],101,390],103],[[[387,[128]]],103],[[[387,[129]],207],103],[[[387,[130]]],103],[[[387,[131]],[4,[3]],[4,[3]]],103],[[[387,[132]],101],103],[[[387,[133]],101,230,230,230,101,101,230,389],103],[[[387,[134]],101,230,230,230,101,230,389],103],[[[387,[135]],391,209],103],[[[387,[136]],3],103],[[[387,[137]],101],103],[[[387,[138]],[4,[233]],101],103],[[[387,[139]],390],103],[[[387,[140]],230],103],[[[387,[141]]],103],[[[387,[142]],6],103],[[[387,[143]],232,209,392,101,234,234,388,388,388,388,388,388,388,388,388,388,388,234,3,388,388,388,388,220,388,230,388],103],[[[387,[144]]],103],[[[387,[145]],[4,[2]],[4,[392]],[4,[101]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[234]],[4,[3]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[207]],[4,[388]],[4,[388]],[4,[388]],[4,[230]],[4,[3]],3,[4,[388]],[4,[209]],[4,[3]]],103],[[[387,[146]]],103],[[[387,[147]],234,230],103],[[[387,[148]],101],103],[[[387,[149]],230],103],[[[387,[150]],230],103],[[[387,[151]],233,234,234,234,230,393,3,230,101],[[103,[[4,[390]]]]]],[[[387,[151]],233,234,234,234,234,230,393,3,230,101,394],[[103,[[4,[390]]]]]],[[[387,[151]],233,234,234,234,234,230,393,395,3,230,101,394],[[103,[[4,[390]]]]]],[[[387,[151]],233,234,234,234,230,393,395,3,230,101],[[103,[[4,[390]]]]]],[[[387,[152]],230],103],[[[387,[153]]],103],[[[387,[154]]],103],[[[387,[155]],101],103],[[[387,[156]],99,390],103],[[[387,[156]],230],103],[[[387,[157]]],103],[[[387,[158]]],103],[[[387,[159]]],103],[[[387,[160]],[4,[3]],[4,[3]],[4,[209]],[4,[388]]],103],[[[387,[161]],101],103],[[[387,[162]],99,230,230,230,97,98,230,389],103],[[[387,[162]],99,230,230,230,97,98,230,389],103],[[[387,[163]],396,209,388],103],[[[387,[164]]],103],[[[387,[166]],3],103],[[[387,[167]]],103],[[[387,[168]],216],103],[[[387,[169]],216],103],[[[387,[169]],216,230,216],103],[[[387,[170]],220,207],103],[[[387,[171]],101,230],103],[[[387,[172]],230,230,230,397,397,397,3,3],103],[[[387,[172]],230,230,230,397,397,3,3,398,230,230],103],[[[387,[172]],230,230,230,397,397,397,3,3,398,399,230],103],[[[387,[172]],230,230,230,397,397,397,3,3,398,399],103],[[[387,[173]],101,230],103],[[[387,[174]],101,230,230,230],103],[[[387,[174]],101,230,230,230,230,388],103],[[[387,[176]],230,3],103],[[[387,[175]],230,3],103],[[[387,[177]]],103],[[[387,[178]],[4,[2]],[4,[392]],[4,[3]],[4,[100]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[207]],[4,[388]],[4,[388]],[4,[397]],[4,[234]],[4,[230]],[4,[397]],[4,[397]],3,3,[4,[101]],[4,[209]],[4,[3]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[230]],[4,[230]],[4,[388]],[4,[388]],3,3,[4,[230]]],103],[[[387,[179]],220,220,230],103],[[[387,[180]],216],103],[[[387,[181]],220,220,216],103],[[[387,[182]],220,209,392,100,388,388,388,388,388,388,388,207,388,388,397,230,234,397,397,101,388,388,388,388,388,3,230],103],[[[387,[183]],220,209],103],[[[387,[184]]],103],[[[387,[185]],230,3],103],0,[1],[[]],[[]],[[]],[[]],[[],4],[[],4],[400,400],[[]],[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,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[401,402],103],[[403,402],103],[[404,402],103],[[405,402,406],103],[[407,402,101],103],[[407,402,408],103],[[407,402,230],103],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[409,409],[[]],[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],[[410,188],[[103,[[202,[411]]]]]],[[410,188],[[103,[[202,[411]]]]]],[[188,2],[[103,[[200,[410]]]]]],[[],[[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,[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,[412,6],[[413,230]],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,233,418,419],103],[[235,233,234,234]],0,[[235,233,234]],0,0,[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[420,3],0,[420,3],0,0,[[235,236,216],216],[215,3],[215,3],[421,[[4,[422]]]],[421,[[4,[422]]]],[421,[[4,[419]]]],[421,[[4,[419]]]],[422,421],[419,421],0,0,0,[[235,236]],[[235,236],397],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[423],0,0,0,0,0,[235,234],0,[[235,236],216],[[424,233]],0,0,0,[[[415,[[414,[412]],[414,[413]],414]]],3],[413,3],0,[[425,230,234],[[4,[234]]]],0,0,0,0,[[426,233],425],[[426,233],425],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[415,[[414,[412]],[414,[413]],414]]],229],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]]],427],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[235,236],397],0,0,0,0,0,0,0,0,0,0,0,[402,3],0,[413,230],0,0,0,0,0,0,0,0,0,[[426,427,2,236,101,[4,[233]]],103],[[426,427,390,428,[4,[2]]],[[103,[419]]]],[[426,427,2,6,232],103],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,429,216,230],[[103,[430]]]],[[215,429,216,230],[[103,[3]]]],[[431,432,433],103],[[431,432,433,[4,[230]]],103],[215,103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],214,216],[[103,[216]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],216,216],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],214],[[103,[216]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],214,216],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],214],[[103,[434]]]],[[215,216],103],[[412,412],103],[[431,432,433,230],103],[[420,397,230],103],[[420,397,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],[[215,429,216,429,216,230,216],[[103,[435]]]],0,0,[436],0,0,0,[215,215],[[[415,[437,437,437]]],[[415,[437,437,437]]]],[402,402],[438,438],[439,439],[413,413],[412,412],[429,429],[237,237],[235,235],[436,436],[423,423],[440,440],[441,441],[433,433],[442,442],[443,443],[418,418],[425,425],[444,444],[422,422],[419,419],[445,445],[421,421],[393,393],[446,446],[395,395],[233,233],[428,428],[447,447],[448,448],[449,449],[450,450],[451,451],[452,452],[453,453],[424,424],[454,454],[236,236],[455,455],[456,456],[457,457],[398,398],[399,399],[458,458],[420,420],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],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],[451,6],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],396],[[103,[237]]]],0,0,0,0,0,0,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,220],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,220,2],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],396],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6,2]],[230],[[451,230]],[429],[[],429],[[],237],[[],235],[[],436],[[],395],[[],457],[[],420],[[],439],[[],236],0,0,0,[[457,230],101],0,0,0,0,[[215,429,216,230],[[103,[3]]]],0,[[215,429,216,3,230],[[103,[3]]]],[[215,429,216,3,230],[[103,[3]]]],0,0,0,[[215,429,216,230],[[103,[3]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[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,[439,11]]]],[[],[[8,[429,11]]]],[[],[[8,[237,11]]]],[[],[[8,[235,11]]]],[[],[[8,[436,11]]]],[[],[[8,[433,11]]]],[[],[[8,[392,11]]]],[[],[[8,[442,11]]]],[[],[[8,[418,11]]]],[[],[[8,[422,11]]]],[[],[[8,[419,11]]]],[[],[[8,[393,11]]]],[[],[[8,[446,11]]]],[[],[[8,[395,11]]]],[[],[[8,[233,11]]]],[[],[[8,[428,11]]]],[[],[[8,[447,11]]]],[[],[[8,[424,11]]]],[[],[[8,[454,11]]]],[[],[[8,[398,11]]]],[[],[[8,[399,11]]]],[[],[[8,[458,11]]]],[[],[[8,[420,11]]]],[101,[[8,[442,11]]]],[101,[[8,[418,11]]]],[101,[[8,[393,11]]]],[101,[[8,[446,11]]]],[101,[[8,[395,11]]]],[101,[[8,[233,11]]]],[101,[[8,[428,11]]]],[101,[[8,[447,11]]]],[101,[[8,[398,11]]]],[101,[[8,[399,11]]]],[101,[[8,[458,11]]]],[[],[[103,[442]]]],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],0,0,[[215,429,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],[422,230],[421,230],[235,234],[423,3],[236,3],[[215,188],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,220],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],220],103],[[434,434],3],[[442,442],3],[[418,418],3],[[444,444],3],[[419,419],3],[[393,393],3],[[446,446],3],[[395,395],3],[[233,233],3],[[428,428],3],[[447,447],3],[[453,453],3],[[398,398],3],[[399,399],3],[[458,458],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,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,236,424,402],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,233,6,234,390],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,236,424],103],[412,6],[[413,230,230]],[419,230],0,0,0,0,0,0,0,0,0,0,0,[[449,448],4],[[449,448],4],[423,2],[423,2],0,[234,[[103,[230]]]],[230,234],0,0,0,[[215,186],187],[[402,186],187],[[438,186],187],[[439,186],187],[[412,186],187],[[429,186],187],[[237,186],187],[[235,186],187],[[436,186],187],[[423,186],187],[[440,186],187],[[441,186],187],[[433,186],187],[[392,186],187],[[418,186],187],[[419,186],187],[[393,186],187],[[446,186],187],[[395,186],187],[[233,186],187],[[428,186],187],[[447,186],187],[[452,186],187],[[424,186],187],[[454,186],187],[[236,186],187],[[455,186],187],[[456,186],187],[[457,186],187],[[420,186],187],0,0,0,0,0,0,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]]],[[103,[420]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],103],[[],[[103,[231]]]],[[],[[103,[459]]]],[[],[[103,[[415,[412,413]]]]]],[[],[[103,[[415,[412,413,[95,[101,460]]]]]]]],[[],[[103,[412]]]],[[215,2,207,101],215],[[233,230,230,419],454],0,0,[450,3],0,[[236,233,230],390],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[430,3],[435,3],[235,3],[235,3],[235,3],[[],6],[451,6],0,0,[[[415,[[414,[412]],[414,[413]],414]]],101],0,0,0,0,0,0,0,[[425,234,230,234],[[4,[234]]]],0,0,0,[[]],[451],[429],0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[426],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],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],[[425,418,419],103],[[449,448,419],103],[[236,233,216,216],3],0,0,0,0,[[216,216,216,216,216,216,397],216],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[233,233],[429,3],[237,3],[235,3],[436,3],[[237,396],3],[[235,232],3],[[436,232],3],[[429,220],3],[420,3],0,[[413,2],3],[450,3],[[419,230],3],[[420,230],3],[215,3],[440,3],[236,3],[455,3],[425,3],[449,3],[413,3],[429,3],[[402,438],3],[413,3],[[413,2],3],[461,3],[[233,234,234],3],[[233,230,230],3],[[233,234,234],3],[440,3],[236,3],[455,3],[[420,397,230],3],[420,3],[402,3],[[420,397,230],3],[462,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],[[449,448],463],[450,416],[[425,230,234],464],[[425,230,234],416],0,[421,[[4,[390]]]],0,0,0,0,0,0,0,0,0,[450,6],0,[[],[[103,[465]]]],[[],[[103,[466]]]],[[],[[103,[466]]]],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],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[236,234],216],0,0,0,0,0,0,0,0,0,0,0,0,[[215,230]],0,0,[[420,216],230],0,0,0,0,[424,3],0,[[420,397],397],0,0,0,0,0,0,0,0,0,0,0,0,[[420,216,215],230],0,[[],6],[[449,448],4],0,0,0,[[420,216,215],230],0,0,0,[[413,216],3],0,[[449,448],4],0,0,0,0,0,0,[402,3],[[]],[215,432],[413,432],[440,432],[236,432],[455,432],0,0,0,0,0,0,[[429,215],216],[215,216],[215,216],[[236,216],234],[461,3],0,0,0,0,0,[[425,230,234],464],[[449,448],463],[[207,390],422],[[101,390,2,234,230,446,389,234,230],419],[[233,418],428],[[233,3,101,230,230,2,390,230,216,230,2,230,216,234,234],424],[[233,101,230,230,2,234,390],454],[[233,230,230],390],[[426,461,236,450,216,427,2,230,101],[[8,[[4,[390]],201]]]],[464,4],[463,4],0,0,[[425,467],[[4,[421]]]],[448,[[4,[467]]]],[[449,467],[[4,[421]]]],0,0,[[425,467],[[4,[421]]]],[[449,467],[[4,[421]]]],0,0,[423,6],0,0,0,0,0,0,[402,3],0,0,0,0,0,[[431,433,[4,[230]]],209],[234,230],[230,234],[[215,[4,[230]]],[[103,[216]]]],[[236,[4,[230]]],[[103,[216]]]],[455,388],0,[[215,4,[4,[230]]],[[103,[216]]]],[[236,[4,[230]]],[[103,[431]]]],[101,[[103,[431]]]],0,0,[428,418],0,[449,447],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,[[420,230],3],[413,468],[463,4],[450,[[4,[452]]]],[450,[[4,[452]]]],[461,234],0,[412,6],0,[[[415,[[414,[412]],[414,[413]],414]],232,230],4],[[[415,[[414,[412]],[414,[413]],414]],232,390],4],0,[[[415,[[414,[412]],[414,[413]],414]]],[[103,[6]]]],[[412,6],6],[412,6],0,0,[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[436]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],436],[[[415,[[414,[412]],[414,[413]],414]],232],[[103,[235]]]],[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[235]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232],[[103,[235]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],235],0,0,0,0,[402,3],[450,[[103,[452]]]],0,0,[461,[[4,[418]]]],0,0,0,[469,216],0,[[420,397,230],397],0,[[461,230,234,426],103],0,0,0,[419,230],0,0,0,0,[470,471],[470,471],[[450,452],[[8,[452]]]],0,0,0,0,[[425,234,230,234],234],0,0,[235,216],0,0,0,0,0,[[233,4,4,3,230,234],[[4,[462]]]],0,0,0,0,0,[[235,216,216]],[[235,216]],[[235,216]],[[235,236,234,216]],[[235,216]],[[413,230]],0,0,0,0,0,0,0,0,0,[420,230],[215,216],[[215,216],216],[420,230],[[425,418,390],[[4,[419]]]],[[449,448,390],[[4,[419]]]],[[425,418,230],[[4,[419]]]],[[449,448,230],[[4,[419]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6,234],103],[[235,234,234]],[[425,230,234],4],[[449,448],[[4,[419]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[457,397,230]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],101,101,101,101,101],103],[[450,6],103],[[425,418],448],[[425,418],448],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,216],216],[[215,216],216],0,0,0,0,0,0,0,[439,[[8,[11]]]],[429,[[8,[11]]]],[237,[[8,[11]]]],[235,[[8,[11]]]],[436,[[8,[11]]]],[433,[[8,[11]]]],[392,[[8,[11]]]],[442,[[8,[11]]]],[418,[[8,[11]]]],[422,[[8,[11]]]],[419,[[8,[11]]]],[393,[[8,[11]]]],[446,[[8,[11]]]],[395,[[8,[11]]]],[233,[[8,[11]]]],[428,[[8,[11]]]],[447,[[8,[11]]]],[424,[[8,[11]]]],[454,[[8,[11]]]],[398,[[8,[11]]]],[399,[[8,[11]]]],[458,[[8,[11]]]],[420,[[8,[11]]]],0,[412,6],0,[[412,6],6],[[[415,[[414,[412]],[414,[413]],414]],396],[[103,[237]]]],[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[237]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],396],[[103,[237]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],237],[402,3],0,0,0,0,[[413,3]],[207],[[451,207]],[[236,3]],[207],[[451,207]],[[413,3]],[[420,3]],0,0,0,[[235,236]],[[235,236]],[236,216],0,0,0,0,0,0,0,0,[463,233],[425,233],[428,233],[447,233],[454,233],0,0,[436,428],0,[468],[[236,216],[[103,[216]]]],0,0,[[101,101,101,101,101],6],0,[215,216],[236,216],0,0,0,0,0,0,0,0,0,0,0,0,0,[[420,216],230],0,0,0,[[420,397],397],0,[424,233],0,0,0,[420,458],0,0,0,0,[230,[[4,[389]]]],0,0,0,0,0,[392,433],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[393,[[103,[446]]]],[[[415,[[414,[412]],[414,[413]],414]],230],103],[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[420]]]],[412,6],0,[[[415,[[414,[412]],[414,[413]],414]]],[[103,[6]]]],0,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],[[103,[420]]]],0,0,[412,6],0,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],215,230,2],103],0,0,0,[[412,6],6],[[[415,[[414,[412]],[414,[413]],414]],220],[[103,[429]]]],[[[415,[[414,[412]],[414,[413]],414]],220],103],[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[429]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],220],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],429],0,[[],[[103,[215]]]],[[],[[103,[402]]]],[[],[[103,[439]]]],[[],[[103,[423]]]],[[],[[103,[440]]]],[[],[[103,[441]]]],[[],[[103,[443]]]],[[],[[103,[425]]]],[[],[[103,[450]]]],[[],[[103,[236]]]],[[],[[103,[455]]]],[[],[[103,[456]]]],[[],[[103,[215]]]],[[],[[103,[402]]]],[[],[[103,[439]]]],[[],[[103,[423]]]],[[],[[103,[440]]]],[[],[[103,[441]]]],[[],[[103,[443]]]],[[],[[103,[425]]]],[[],[[103,[450]]]],[[],[[103,[236]]]],[[],[[103,[455]]]],[[],[[103,[456]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],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,[418,[193,[418]]]]]],[[],8],[[],8],[[],8],[101,[[8,[472,[193,[472]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[393,[193,[393]]]]]],[101,[[8,[446,[193,[446]]]]]],[[],8],[101,[[8,[395,[193,[395]]]]]],[[],8],[[],8],[101,[[8,[233,[193,[233]]]]]],[101,[[8,[428,[193,[428]]]]]],[[],8],[101,[[8,[447,[193,[447]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[453,[193,[453]]]]]],[452,[[103,[424]]]],[[],8],[452,[[103,[424]]]],[452,[[103,[454]]]],[[],8],[452,[[103,[454]]]],[[],8],[[],8],[[],8],[[],8],[101,[[8,[398,[193,[398]]]]]],[[],8],[101,[[8,[399,[193,[399]]]]]],[[],8],[[],8],[101,[[8,[458,[193,[458]]]]]],[[],8],[[],[[8,[418,[193,[418]]]]]],[[],[[8,[472,[193,[472]]]]]],[[],[[8,[393,[193,[393]]]]]],[[],[[8,[446,[193,[446]]]]]],[[],[[8,[395,[193,[395]]]]]],[[],[[8,[233,[193,[233]]]]]],[[],[[8,[428,[193,[428]]]]]],[[],[[8,[447,[193,[447]]]]]],[[],[[8,[453,[193,[453]]]]]],[[],[[8,[398,[193,[398]]]]]],[[],[[8,[399,[193,[399]]]]]],[[],[[8,[458,[193,[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],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[439,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],[[429,215],216],[[235,236],216],[[235,236,216],[[103,[216]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[457,230,397]],[[215,429,216]],[[236,426,431,230],103],[215],[[215,216,230]],[[449,230,230]],[[215,230,230]],[[235,236,230]],0,0,0,0,[215,103],[423,103],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,429,216,230],[[103,[430]]]],[[215,429,216,230],[[103,[430]]]],[[215,429,216,230],[[103,[3]]]],[[215,429,216,230],[[103,[3]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],412],0,0,0,0,0,0,0,0,[2,3],[[],2],0,[2,3],[[],2],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],473],[[],474],[[],475],[[],476],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[473,11]]]],[[],[[8,[474,11]]]],[[],[[8,[475,11]]]],[[],[[8,[476,11]]]],[6],[6],[6],[6],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[473,[[8,[11]]]],[474,[[8,[11]]]],[475,[[8,[11]]]],[476,[[8,[11]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[432,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,"Serum3OpenOrdersBalanceLog"],[3,"Serum3OpenOrdersBalanceLogV2"],[3,"WithdrawLoanOriginationFeeLog"],[3,"WithdrawLoanLog"],[3,"TokenLiqBankruptcyLog"],[3,"DeactivateTokenPositionLog"],[3,"DeactivatePerpPositionLog"],[3,"TokenMetaDataLog"],[3,"TokenMetaDataLogV2"],[3,"PerpMarketMetaDataLog"],[3,"Serum3RegisterMarketLog"],[3,"PerpLiqBaseOrPositivePnlLog"],[3,"PerpLiqBankruptcyLog"],[3,"PerpLiqNegativePnlOrBankruptcyLog"],[3,"PerpSettlePnlLog"],[3,"PerpSettleFeesLog"],[3,"AccountBuybackFeesWithMngoLog"],[3,"FilledPerpOrderLog"],[3,"PerpTakerTradeLog"],[3,"PerpForceClosePositionLog"],[3,"TokenForceCloseBorrowsWithTokenLog"],[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"],[15,"str"],[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"],[6,"MangoAccountLoadedRef"],[3,"Global"],[3,"Order"],[3,"BookSideIterItem"],[3,"OrderTreeIter"],[3,"BookSideIter"],[6,"MangoAccountLoadedRefCell"],[6,"MangoAccountLoadedRefCellMut"],[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":"HDLOAAAALOLLLFLLLLLLLFAOOALOAAFLLALALLLLAOLLAOOLLAOALLLLALLALLLODDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNDDDDDDDDDDDDNDNNDNDDDEDDDDDDNDDNDDDDDDDDDDDDDDDDDDDDDDDDDDDDNDDDDDDDEDDEDDDEDDDNDDDDDDDDDDDDDDDDNLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAAAMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRFFRFFRFFRFFDDIDIDIIIILLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMMMKKLLLLKKLLLLKKLKKLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFNNNNNNINNNNNNNNNNNNNNNNNNNNNNINNNENNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNLLLLLLLLLKLLLLOOLLLLLKKLLLLLLLOOLLLLLLLLLLKLLDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLMMLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLIDDENNNDDDDDDDDLLLLLLLLLMMLLLLLLLLLLLLLLMKLLLLMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLMLLLMMLFFFLLMLLLLLLLLLLLLLLLLLLLLLLLKLLMLMMMLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLMFFMMMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIKKKKDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDDDDDDDDDDDDNNEDDDDDDDDDDDNDDNDNDDDDDDNDDDDDDDDNNDDDDDDLMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMFFMMMLMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDIDDDDLMMMLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLFLLLLLLLLLLLLLLLFFFFFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLKLKLKLKLKLKLMMMMMMMMMMLLLLLLLLLLLLLLMMMMMFMMMFMMLLLLLLLLLLLLLLMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLNNNNNNNNNNNNDDNNNNDNNNNNDDDDENNERRNIIDIDDERRNDNNNNDNDNNNRNRNNDNNQENDNNNNNNRRRDDDGGGIDGGGNNDGENRNNNNNNDGDNNNNDDNNDEDEEDDDEDNDRNNNNNNNNNNNNDGDNDNNNENNNNENNRRRIENNNNNNNNDGDDNNNNEENDNNDNNNNNRNNDNNNNEENNENNNGNNDNNNNDNNNDRLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMOOLLLLLLLLMLMMLLLLLLMLMMLLLLLLLLLMMMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMOOLMMMMMLMLLMMMLLMLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMMMMMMMLMLMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMFLLLLMMKLLMMMMMMLLLLLKLLLLLLLLLLLMMMLMMMMLMLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLMMMMMMMMMMMLLLLMFFMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLMMLMLMMMMMMMMMMMMMMOOMLLLLLKLMMLMMMMMMMLMMMKLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLLLLMMMMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMMMMMMMMMLMKKKMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMLMMLMMMMLMLMMMMMMMMMMLLMMLMLLMMMLMMMLMLMMMMMMLLLLLLLMMMMMMLLLLLMMMMMLLLLLLLFLLLMMLLLMMLLMMLMMMOOMLMMMMMFFFLLLMLLFMMLMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLLMLMLLMLLLMMLLLLLLMMMMLLMMLMMMFMLMLMMMLMMMMLLLMMMMLMMLMMMMMFMMMMMLLLLLLMMMMMMMMMLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLMOOMLKLLKLLLMMMLLLMMMMMMMMLLLLLMMLMLLMMLMLLMMMMMAAMMMMMMLMMMLMLMMMLMMMMLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLMMLMLMMMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMRFFRFFDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFF","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","InvalidFlashLoanTargetCpiProgram","InvalidHealthAccountCount","IsAnchorErrorWithCode","IsBankrupt","IsNotBankrupt","IxIsDisabled","MangoError","MarketInReduceOnlyMode","MathError","MaxSettleAmountMustBeGreaterThanZero","NoFreePerpPositionIndex","NoFreeSerum3OpenOrdersIndex","NoFreeTokenPositionIndex","NoLiquidatablePerpBasePosition","NotImplementedError","OracleConfidence","OracleStale","PerpHasBaseLots","PerpOrderIdNotFound","PerpPositionDoesNotExist","ProfitabilityMismatch","Serum3OpenOrdersExistAlready","Serum3PriceBandExceeded","SettlementAmountMustBePositive","SomeError","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","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","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","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","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","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","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","AccountBuybackFeesWithMngoLog","DeactivatePerpPositionLog","DeactivateTokenPositionLog","DepositLog","FillLog","FillLogV2","FillLogV3","FilledPerpOrderLog","FlashLoanLog","FlashLoanLogV2","FlashLoanLogV3","FlashLoanTokenDetail","FlashLoanTokenDetailV2","FlashLoanTokenDetailV3","LiqTokenBankruptcy","LiqTokenWithToken","LoanOriginationFeeInstruction","PerpBalanceLog","PerpForceClosePositionLog","PerpLiqBankruptcyLog","PerpLiqBaseOrPositivePnlLog","PerpLiqNegativePnlOrBankruptcyLog","PerpMarketMetaDataLog","PerpSettleFeesLog","PerpSettlePnlLog","PerpTakerTradeLog","PerpUpdateFundingLog","PerpUpdateFundingLogV2","Serum3LiqForceCancelOrders","Serum3OpenOrdersBalanceLog","Serum3OpenOrdersBalanceLogV2","Serum3PlaceOrder","Serum3RegisterMarketLog","Serum3SettleFunds","TokenBalanceLog","TokenConditionalSwapCancelLog","TokenConditionalSwapCreateLog","TokenConditionalSwapCreateLogV2","TokenConditionalSwapCreateLogV3","TokenConditionalSwapStartLog","TokenConditionalSwapTrigger","TokenConditionalSwapTriggerLog","TokenConditionalSwapTriggerLogV2","TokenConditionalSwapTriggerLogV3","TokenForceCloseBorrowsWithTokenLog","TokenLiqBankruptcyLog","TokenLiqWithTokenLog","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_price","asset_price","asset_token_index","asset_token_index","asset_transfer","asset_transfer","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","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","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","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_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","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_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","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","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_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","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_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","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_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","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","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","liab_price","liab_price","liab_price","liab_token_index","liab_token_index","liab_token_index","liab_transfer","liab_transfer","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","liqee","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","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","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","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_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","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_spot_transfers","pnl_settle_limit_transfer","pnl_transfer","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_position","quote_token_index","quote_token_index","quote_token_index","quote_total","quote_total","quote_transfer","quote_transfer","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_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","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","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_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","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","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_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","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","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_as","wrapping_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","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","OpenbookV2CancelOrder","OpenbookV2CloseOpenOrders","OpenbookV2CreateOpenOrders","OpenbookV2DeregisterMarket","OpenbookV2EditMarket","OpenbookV2LiqForceCancelOrders","OpenbookV2Market","OpenbookV2MarketIndex","OpenbookV2MarketIndexReservation","OpenbookV2PlaceOrder","OpenbookV2PlaceTakeOrder","OpenbookV2RegisterMarket","OpenbookV2SettleFunds","OracleConfig","OracleConfigParams","OraclePegged","OraclePegged","OracleState","OracleType","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","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","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","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","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","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_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_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","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_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_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_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","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_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","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","deref","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_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","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","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_min_vault_to_deposits_ratio","ensure_perp_position","ensure_token_position","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","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_oracle","fallback_oracle","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_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_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_bytes","from_existing_bank","from_leaf_node","frozen_until","frozen_until","full","funding_last_updated","gen_order_id","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_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_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_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","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","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","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","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_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_price_with_fallback","oracle_state","oracle_state_unchecked","oracle_type","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_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","overflowing_cast_from","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","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","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_other_pnl_native","realized_pnl_for_position_native","realized_trade_pnl_native","record_liquidation_pnl_takeover","record_liquidation_quote_change","record_settle","record_trade","record_trading_fee","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_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","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_realized_trade","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","sold","source_is_active","space","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_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_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_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","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_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","unwrapped_cast_from","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","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","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_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","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","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","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::switchboard_v1_devnet_oracle","","","mango_v4::state::switchboard_v2_mainnet_oracle","","","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
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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","","","","","","","","","","","","","","","","","","","","","","","","","","","","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 toen borrows plus a …","","","","","","","","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.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","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)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","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 …","","","","","","","","","","","","","","","","","","","","","","","","","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.","","","","","","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","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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","","","","","","","","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.","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","calcualtor 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)
.","","","","","","","","","","","","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","","","","","","","","","","","","","","","","","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 remaining sell amount, taking the current sell token …","","","","","Minimal funding rate per day, must be <= 0.","","Min fraction of deposits that must remain in the vault …","","","","","","","","","","","","","","","","","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","","","","","","","","","","","","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 …","","","","Limit orders must be <= oracle * (1+band) and >= oracle / …","Tries to return the primary oracle price, and if there is …","","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 …","","","","","","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 …","","","Amount of pnl realized from fees, funding and liquidation.","Trade pnl, fees, funding that were added over the current …","Amount of pnl that was realized by bringing the base …","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","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 …","Settle limit contribution from realized pnl.","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 …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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 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,477,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,478,479,194,195,196,197,478,479,194,195,196,197,480,481,195,480,481,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,477,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,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,482,205,205,205,205,0,0,205,205,205,205,205,483,483,205,205,205,205,205,205,205,0,0,205,205,205,205,205,205,205,205,205,205,482,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,228,217,219,214,222,224,223,217,218,219,225,226,227,228,214,219,484,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,484,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,484,222,223,228,0,0,225,217,222,217,218,219,225,226,227,228,214,219,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,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,485,485,486,486,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,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,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,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,337,0,0,337,0,337,0,0,0,0,0,0,337,0,0,0,0,0,0,0,0,337,337,0,0,0,0,0,0,337,373,373,375,376,377,375,376,377,384,385,353,374,353,374,353,374,350,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,353,363,354,355,363,338,354,355,364,354,355,365,373,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,339,383,384,385,350,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,350,378,379,380,375,376,377,378,379,380,378,379,380,370,370,382,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,337,337,378,379,380,350,359,359,360,360,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,384,339,383,384,385,350,350,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,337,376,377,379,380,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,377,0,0,358,366,366,337,375,376,377,362,368,374,372,348,349,348,349,340,341,342,337,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,375,376,377,381,382,382,339,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,358,348,349,356,357,358,358,366,376,377,379,380,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,353,358,374,353,358,374,353,374,353,358,365,366,367,374,378,379,380,353,358,365,366,367,374,378,379,380,383,384,385,357,350,383,384,385,356,357,338,348,349,338,338,338,339,339,383,383,384,384,385,385,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,337,337,356,356,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,338,338,339,339,383,383,384,384,385,385,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,337,337,356,356,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,345,346,347,346,347,347,345,346,347,378,379,380,375,376,377,345,345,346,347,345,346,347,345,346,347,360,338,339,340,341,342,343,344,354,355,356,357,359,360,369,370,372,375,376,377,381,382,368,368,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,338,345,346,347,348,349,355,360,364,375,376,377,351,352,375,376,377,361,362,361,362,361,362,370,348,349,361,362,363,349,370,348,349,349,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,363,363,365,366,367,368,369,371,372,373,360,365,365,383,384,385,343,344,345,346,347,348,349,350,357,365,373,375,376,377,375,376,377,375,376,377,343,344,345,346,347,354,355,363,338,354,355,364,354,355,365,373,351,352,351,352,354,355,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,378,379,380,375,376,377,378,379,380,378,379,380,345,346,347,371,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,364,364,364,367,368,369,368,338,348,349,338,343,344,358,366,348,349,350,377,380,358,366,366,385,345,346,347,345,346,347,347,345,346,347,378,379,380,375,376,377,372,345,345,346,347,372,360,352,377,380,345,346,347,337,378,379,380,382,339,383,384,385,343,344,350,351,352,356,357,359,361,362,340,341,342,372,372,350,350,372,372,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,352,352,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,338,339,383,384,385,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,337,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,0,0,0,0,0,0,0,0,409,409,405,407,401,403,404,405,407,409,238,404,405,405,407,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,407,407,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,409,409,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,405,407,238,401,403,404,405,407,409,238,238,0,401,403,404,405,407,409,238,401,403,404,405,407,409,238,409,0,0,0,0,0,0,401,401,403,403,404,404,405,405,407,407,409,409,238,238,401,401,403,403,404,404,405,405,407,407,409,409,238,238,401,403,404,405,407,487,238,487,238,487,238,487,238,487,238,487,238,487,238,401,403,404,405,407,401,403,404,407,405,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,0,404,405,404,0,401,405,401,403,404,405,407,409,238,401,403,404,405,407,409,238,403,409,404,405,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,405,404,404,404,401,403,404,405,407,409,238,401,403,404,405,407,409,238,401,403,404,405,407,409,238,395,438,438,438,438,438,438,438,438,438,438,438,0,0,233,428,428,447,0,434,233,428,428,447,0,0,0,0,0,398,395,0,0,0,395,0,0,0,0,0,0,0,0,0,453,0,488,418,458,438,0,472,0,438,438,438,0,438,0,488,393,0,472,444,489,0,472,0,472,393,446,458,434,453,0,0,0,0,0,0,0,0,0,0,0,0,0,0,488,393,0,0,0,434,0,438,438,438,438,438,438,0,0,0,438,438,438,438,0,0,488,418,0,0,0,0,0,0,0,0,0,0,453,0,0,438,438,438,438,438,438,438,438,438,438,438,438,0,0,0,438,0,438,438,438,0,393,446,393,446,0,458,442,0,0,0,0,0,398,438,438,438,438,438,438,438,0,0,0,0,438,438,438,438,0,0,444,0,399,442,0,438,438,438,442,442,0,399,438,0,438,438,438,438,0,0,438,438,0,438,438,438,0,438,438,0,438,438,438,438,0,472,399,444,0,0,215,415,402,438,439,413,412,429,237,235,436,423,440,441,433,442,443,418,425,444,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,439,413,468,0,0,412,413,415,415,415,415,415,235,402,235,215,402,415,415,415,415,415,420,420,420,420,402,235,215,215,421,421,421,421,422,419,426,236,235,235,235,235,215,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,215,0,0,423,423,237,236,236,236,235,235,235,424,237,440,455,415,413,439,425,426,236,235,236,426,426,430,435,468,431,426,490,462,464,461,488,463,215,415,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,430,435,468,431,426,490,462,464,461,488,463,215,415,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,420,235,450,215,402,439,413,440,236,455,468,449,420,402,402,413,439,413,439,413,402,439,413,402,402,426,426,426,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,215,431,431,215,415,415,415,415,415,215,412,431,420,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,422,422,436,436,461,419,215,415,402,438,439,413,412,429,237,235,436,423,440,441,433,442,443,418,425,444,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,415,402,438,439,413,412,429,237,235,436,423,440,441,433,442,443,418,425,444,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,0,215,215,215,236,433,392,489,451,415,402,429,429,235,235,421,415,415,415,415,415,489,451,429,429,237,235,436,395,457,420,439,236,457,457,457,457,457,457,439,413,215,215,215,215,215,402,215,215,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,414,417,439,429,237,235,436,433,392,442,418,422,419,393,446,395,233,428,447,424,454,398,399,458,420,442,418,393,446,395,233,428,447,398,399,458,0,431,443,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,420,215,215,415,439,439,439,439,439,439,439,422,421,235,423,236,215,415,415,434,442,418,444,419,393,446,395,233,428,447,453,398,399,458,418,418,419,419,393,393,446,446,395,395,233,233,428,428,447,447,453,453,398,398,399,399,458,458,236,452,424,454,415,415,415,412,413,419,420,215,423,402,402,402,236,236,236,215,236,449,449,423,423,415,0,0,215,215,215,215,402,438,439,412,429,237,235,436,423,440,441,433,392,418,419,393,446,395,233,428,447,452,424,454,236,455,456,457,420,215,440,236,455,449,449,415,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,491,231,459,415,415,412,215,454,439,413,450,236,236,468,215,439,413,423,440,441,443,236,455,456,423,236,402,0,0,462,430,435,235,235,235,489,451,415,450,415,439,439,413,237,237,436,420,425,236,439,429,489,451,429,215,215,215,429,430,435,468,431,426,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,236,236,215,236,491,412,425,449,236,402,402,420,215,215,215,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,464,463,233,429,237,235,436,237,235,436,429,420,420,413,450,419,420,215,440,236,455,425,449,413,429,402,413,413,461,233,233,233,440,236,455,420,420,402,420,462,215,402,413,429,237,235,436,423,440,441,433,443,425,422,419,445,421,448,449,450,451,452,424,454,236,455,456,457,420,449,450,425,425,402,421,422,419,457,215,431,443,457,443,448,450,215,492,492,492,430,435,215,430,435,215,236,235,430,430,435,435,468,468,431,431,426,426,490,490,462,462,464,464,461,461,488,488,463,463,215,215,415,415,402,402,438,438,434,434,439,439,413,413,412,412,429,429,237,237,235,235,436,436,423,423,440,440,441,441,433,433,392,392,442,442,443,443,418,418,425,425,444,444,472,472,422,422,419,419,445,445,421,421,393,393,446,446,395,395,233,233,428,428,447,447,448,448,449,449,450,450,451,451,452,452,453,453,424,424,454,454,236,236,455,455,456,456,457,457,398,398,399,399,458,458,420,420,430,430,435,435,468,468,431,431,426,426,490,490,462,462,464,464,461,461,488,488,463,463,215,215,415,415,402,402,438,438,434,434,439,439,413,413,412,412,429,429,237,237,235,235,436,436,423,423,440,440,441,441,433,433,392,392,442,442,443,443,418,418,425,425,444,444,472,472,422,422,419,419,445,445,421,421,393,393,446,446,395,395,233,233,428,428,447,447,448,448,449,449,450,450,451,451,452,452,453,453,424,424,454,454,236,236,455,455,456,456,457,457,398,398,399,399,458,458,420,420,236,237,237,215,236,236,215,236,215,215,215,215,215,215,424,424,420,424,236,420,424,424,424,420,424,424,235,436,237,235,440,441,455,456,425,425,461,420,420,236,412,449,461,215,420,420,433,392,448,413,236,449,215,215,423,443,215,402,402,463,215,413,440,236,455,215,439,413,440,236,455,429,215,215,236,461,215,215,215,439,413,464,463,422,419,428,424,454,0,426,464,463,439,413,425,448,449,490,462,425,449,425,449,423,236,237,440,0,0,440,402,215,423,236,215,236,0,0,0,215,236,455,455,215,236,0,431,454,428,490,449,449,419,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,402,439,413,423,440,441,443,425,450,236,455,456,468,439,413,419,454,419,454,215,402,439,413,429,237,235,422,419,449,452,424,457,420,436,423,440,455,436,440,419,424,455,439,424,236,439,236,439,439,439,439,461,420,413,463,450,450,461,419,412,412,415,415,236,415,412,412,412,439,415,415,415,415,415,415,439,413,235,439,402,450,430,236,461,237,237,215,0,422,420,429,461,431,443,424,419,462,420,420,420,464,463,450,436,419,424,454,425,237,236,235,235,235,237,440,455,0,215,215,235,235,235,235,235,235,235,235,413,461,215,440,236,455,423,440,236,455,420,215,215,420,425,449,425,449,415,235,425,449,215,402,439,413,429,237,235,436,423,440,441,433,443,425,422,419,449,450,424,236,455,456,457,420,439,425,457,457,415,450,425,425,425,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,215,402,461,420,451,424,454,236,439,429,237,235,436,433,392,442,418,422,419,393,446,395,233,428,447,424,454,398,399,458,420,439,412,412,412,415,415,415,415,402,455,0,0,455,413,489,451,236,489,451,413,420,236,236,236,235,235,236,236,235,235,235,236,236,236,235,463,425,428,447,454,461,454,436,436,468,236,420,435,439,457,215,236,457,215,236,420,462,0,0,422,419,421,424,235,424,420,424,236,420,420,235,424,424,235,435,420,420,413,413,402,461,461,419,419,424,454,392,215,415,402,438,439,413,412,429,237,235,436,423,440,441,433,442,443,418,425,444,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,393,415,415,412,412,415,215,415,215,439,412,412,415,215,429,423,412,415,415,415,415,415,439,215,402,439,423,440,441,443,425,450,236,455,456,215,402,439,423,440,441,443,425,450,236,455,456,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,418,425,444,472,472,422,419,445,421,393,393,446,446,395,395,233,233,428,428,447,447,448,449,450,451,452,453,453,424,424,424,454,454,454,236,455,456,457,398,398,399,399,458,458,420,418,472,393,446,395,233,428,447,453,398,399,458,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,439,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,429,235,235,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,457,215,236,215,215,449,215,235,215,215,215,423,215,423,402,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,215,215,215,215,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,430,435,468,431,426,490,462,464,461,488,463,215,415,402,438,434,439,413,412,429,237,235,436,423,440,441,433,392,442,443,418,425,444,472,422,419,445,421,393,446,395,233,428,447,448,449,450,451,452,453,424,454,236,455,456,457,398,399,458,420,412,493,494,493,493,495,494,493,0,0,0,0,0,0,0,0,0,0,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,473,474,474,475,475,476,476,473,473,474,474,475,475,476,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,473,474,475,476,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],[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,[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,[[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,[[216,216,216,216],[[103,[216]]]],[[216,216,216,216],[[103,[216]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[214,220],[[103,[219]]]],[[214,220],[[103,[6]]]],[[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,[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,[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[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,[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,[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,[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],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]]]],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],[[],[[8,[338,11]]]],[[],[[8,[339,11]]]],[[],[[8,[383,11]]]],[[],[[8,[384,11]]]],[[],[[8,[385,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,[337,11]]]],[[],[[8,[356,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]]]],[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],0,[[2,2,235,236]],[386],0,0,0,[[337,337],3],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],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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]]]],[383,[[8,[11]]]],[384,[[8,[11]]]],[385,[[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]]]],[337,[[8,[11]]]],[356,[[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]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],0,0,0,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],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],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,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[387,[102]],230],103],[[[387,[104]],3],103],[[[387,[105]],207,101,101,101,101,209],103],[[[387,[106]],207,101,101,101,101,101,209],103],[[[387,[107]],[4,[209]],[4,[2]],[4,[2]],[4,[230]]],103],[[[387,[108]],101,101,101,101],103],[[[387,[108]],101,101,101,101,101],103],[[[387,[109]]],103],[[[387,[110]],3],103],[[[387,[111]]],103],[[[387,[112]]],103],[[[387,[113]],101,[95,[2]]],103],[[[387,[114]],101],103],[[[387,[115]]],103],[[[387,[116]]],103],[[[387,[117]],[95,[230]]],103],[[[387,[119]],96],103],[[[387,[119]],101,96],103],[[[387,[118]],230],103],[[[387,[120]]],103],[[[387,[121]],207,101,101],103],[[[387,[122]],[4,[2]],[4,[2]],[4,[2]],[4,[101]],[4,[101]],[4,[230]],[4,[3]],[4,[388]],[4,[2]],[4,[220]],[4,[230]],[4,[389]]],103],[[[387,[123]],230],103],[[[387,[124]]],103],[[[387,[125]]],103],[[[387,[126]],390],103],[[[387,[180]],216],103],[[[387,[181]],220,220,216],103],[[[387,[127]],101],103],[[[387,[127]],101,390],103],[[[387,[128]]],103],[[[387,[129]],207],103],[[[387,[130]]],103],[[[387,[131]],[4,[3]],[4,[3]]],103],[[[387,[132]],101],103],[[[387,[133]],101,230,230,230,101,101,230,389],103],[[[387,[134]],101,230,230,230,101,230,389],103],[[[387,[135]],391,209],103],[[[387,[136]],3],103],[[[387,[137]],101],103],[[[387,[138]],[4,[233]],101],103],[[[387,[139]],390],103],[[[387,[140]],230],103],[[[387,[141]]],103],[[[387,[142]],6],103],[[[387,[143]],232,209,392,101,234,234,388,388,388,388,388,388,388,388,388,388,388,234,3,388,388,388,388,220,388,230,388],103],[[[387,[144]]],103],[[[387,[145]],[4,[2]],[4,[392]],[4,[101]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[234]],[4,[3]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[207]],[4,[388]],[4,[388]],[4,[388]],[4,[230]],[4,[3]],3,[4,[388]],[4,[209]],[4,[3]]],103],[[[387,[146]]],103],[[[387,[147]],234,230],103],[[[387,[148]],101],103],[[[387,[149]],230],103],[[[387,[150]],230],103],[[[387,[151]],233,234,234,234,230,393,3,230,101],[[103,[[4,[390]]]]]],[[[387,[151]],233,234,234,234,234,230,393,3,230,101,394],[[103,[[4,[390]]]]]],[[[387,[151]],233,234,234,234,234,230,393,395,3,230,101,394],[[103,[[4,[390]]]]]],[[[387,[151]],233,234,234,234,230,393,395,3,230,101],[[103,[[4,[390]]]]]],[[[387,[152]],230],103],[[[387,[153]]],103],[[[387,[154]]],103],[[[387,[155]],101],103],[[[387,[156]],99,390],103],[[[387,[156]],230],103],[[[387,[157]]],103],[[[387,[158]]],103],[[[387,[159]]],103],[[[387,[160]],[4,[3]],[4,[3]],[4,[209]],[4,[388]]],103],[[[387,[161]],101],103],[[[387,[162]],99,230,230,230,97,98,230,389],103],[[[387,[162]],99,230,230,230,97,98,230,389],103],[[[387,[163]],396,209,388],103],[[[387,[164]]],103],[[[387,[166]],3],103],[[[387,[167]]],103],[[[387,[168]],216],103],[[[387,[169]],216],103],[[[387,[169]],216,230,216],103],[[[387,[170]],220,207],103],[[[387,[171]],101,230],103],[[[387,[172]],230,230,230,397,397,397,3,3],103],[[[387,[172]],230,230,230,397,397,3,3,398,230,230],103],[[[387,[172]],230,230,230,397,397,397,3,3,398,399,230],103],[[[387,[172]],230,230,230,397,397,397,3,3,398,399],103],[[[387,[173]],101,230],103],[[[387,[174]],101,230,230,230],103],[[[387,[174]],101,230,230,230,230,388],103],[[[387,[176]],230,3],103],[[[387,[175]],230,3],103],[[[387,[177]]],103],[[[387,[178]],[4,[2]],[4,[392]],[4,[3]],[4,[100]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[207]],[4,[388]],[4,[388]],[4,[397]],[4,[234]],[4,[230]],[4,[397]],[4,[397]],3,3,[4,[101]],[4,[209]],[4,[3]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[388]],[4,[230]],[4,[230]],[4,[388]],[4,[388]],3,3,[4,[230]]],103],[[[387,[179]],220,220,230],103],[[[387,[180]],216],103],[[[387,[181]],220,220,216],103],[[[387,[182]],220,209,392,100,388,388,388,388,388,388,388,207,388,388,397,230,234,397,397,101,388,388,388,388,388,3,230],103],[[[387,[183]],220,209],103],[[[387,[184]]],103],[[[387,[185]],230,3],103],0,[1],[[]],[[]],[[]],[[]],[[],4],[[],4],[400,400],[[]],[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,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[401,402],103],[[403,402],103],[[404,402],103],[[405,402,406],103],[[407,402,101],103],[[407,402,408],103],[[407,402,230],103],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[409,409],[[]],[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],[[410,188],[[103,[[202,[411]]]]]],[[410,188],[[103,[[202,[411]]]]]],[[188,2],[[103,[[200,[410]]]]]],[[],[[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,[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,[412,6],[[413,230]],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,233,418,419],103],[[235,233,234,234]],0,[[235,233,234]],0,0,[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[[[415,[[414,[412]],[414,[413]],414]]],416],[420,3],0,[420,3],0,0,[[235,236,216],216],[215,3],[215,3],[421,[[4,[422]]]],[421,[[4,[422]]]],[421,[[4,[419]]]],[421,[[4,[419]]]],[422,421],[419,421],0,0,0,[[235,236]],[[235,236],397],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[423],0,0,0,0,0,[235,234],0,[[235,236],216],[[424,233]],0,0,0,[[[415,[[414,[412]],[414,[413]],414]]],3],[413,3],0,[[425,230,234],[[4,[234]]]],0,0,0,0,[[426,233],425],[[426,233],425],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[415,[[414,[412]],[414,[413]],414]]],229],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]]],427],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[235,236],397],0,0,0,0,0,0,0,0,0,0,0,[402,3],0,[413,230],0,0,0,0,0,0,0,0,0,[[426,427,2,236,101,[4,[233]]],103],[[426,427,390,428,[4,[2]]],[[103,[419]]]],[[426,427,2,6,232],103],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,429,216,230],[[103,[430]]]],[[215,429,216,230],[[103,[3]]]],[[431,432,433],103],[[431,432,433,[4,[230]]],103],[215,103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],214,216],[[103,[216]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],216,216],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],214],[[103,[216]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],214,216],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],214],[[103,[434]]]],[[215,216],103],[[412,412],103],[[431,432,433,230],103],[[420,397,230],103],[[420,397,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],[[215,429,216,429,216,230,216],[[103,[435]]]],0,0,[436],0,0,0,[215,215],[[[415,[437,437,437]]],[[415,[437,437,437]]]],[402,402],[438,438],[439,439],[413,413],[412,412],[429,429],[237,237],[235,235],[436,436],[423,423],[440,440],[441,441],[433,433],[442,442],[443,443],[418,418],[425,425],[444,444],[422,422],[419,419],[445,445],[421,421],[393,393],[446,446],[395,395],[233,233],[428,428],[447,447],[448,448],[449,449],[450,450],[451,451],[452,452],[453,453],[424,424],[454,454],[236,236],[455,455],[456,456],[457,457],[398,398],[399,399],[458,458],[420,420],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],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],[451,6],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],396],[[103,[237]]]],0,0,0,0,0,0,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,220],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,220,2],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],396],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6,2]],[230],[[451,230]],[429],[[],429],[[],237],[[],235],[[],436],[[],395],[[],457],[[],420],[[],439],[[],236],0,0,0,[[457,230],101],0,0,0,0,[[215,429,216,230],[[103,[3]]]],0,[[215,429,216,3,230],[[103,[3]]]],[[215,429,216,3,230],[[103,[3]]]],0,0,0,[[215,429,216,230],[[103,[3]]]],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[6],[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,[439,11]]]],[[],[[8,[429,11]]]],[[],[[8,[237,11]]]],[[],[[8,[235,11]]]],[[],[[8,[436,11]]]],[[],[[8,[433,11]]]],[[],[[8,[392,11]]]],[[],[[8,[442,11]]]],[[],[[8,[418,11]]]],[[],[[8,[422,11]]]],[[],[[8,[419,11]]]],[[],[[8,[393,11]]]],[[],[[8,[446,11]]]],[[],[[8,[395,11]]]],[[],[[8,[233,11]]]],[[],[[8,[428,11]]]],[[],[[8,[447,11]]]],[[],[[8,[424,11]]]],[[],[[8,[454,11]]]],[[],[[8,[398,11]]]],[[],[[8,[399,11]]]],[[],[[8,[458,11]]]],[[],[[8,[420,11]]]],[101,[[8,[442,11]]]],[101,[[8,[418,11]]]],[101,[[8,[393,11]]]],[101,[[8,[446,11]]]],[101,[[8,[395,11]]]],[101,[[8,[233,11]]]],[101,[[8,[428,11]]]],[101,[[8,[447,11]]]],[101,[[8,[398,11]]]],[101,[[8,[399,11]]]],[101,[[8,[458,11]]]],[[],[[103,[442]]]],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],0,0,[[215,429,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],[422,230],[421,230],[235,234],[423,3],[236,3],[[215,188],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,220],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],220],103],[[434,434],3],[[442,442],3],[[418,418],3],[[444,444],3],[[419,419],3],[[393,393],3],[[446,446],3],[[395,395],3],[[233,233],3],[[428,428],3],[[447,447],3],[[453,453],3],[[398,398],3],[[399,399],3],[[458,458],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,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,236,424,402],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,233,6,234,390],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232,236,424],103],[412,6],[[413,230,230]],[419,230],0,0,0,0,0,0,0,0,0,0,0,[[449,448],4],[[449,448],4],[423,2],[423,2],0,[234,[[103,[230]]]],[230,234],0,0,0,[[215,186],187],[[402,186],187],[[438,186],187],[[439,186],187],[[412,186],187],[[429,186],187],[[237,186],187],[[235,186],187],[[436,186],187],[[423,186],187],[[440,186],187],[[441,186],187],[[433,186],187],[[392,186],187],[[418,186],187],[[419,186],187],[[393,186],187],[[446,186],187],[[395,186],187],[[233,186],187],[[428,186],187],[[447,186],187],[[452,186],187],[[424,186],187],[[454,186],187],[[236,186],187],[[455,186],187],[[456,186],187],[[457,186],187],[[420,186],187],0,0,0,0,0,0,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]]],[[103,[420]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],103],[[],[[103,[231]]]],[[],[[103,[459]]]],[[],[[103,[[415,[412,413]]]]]],[[],[[103,[[415,[412,413,[95,[101,460]]]]]]]],[[],[[103,[412]]]],[[215,2,207,101],215],[[233,230,230,419],454],0,0,[450,3],0,[[236,233,230],390],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[430,3],[435,3],[235,3],[235,3],[235,3],[[],6],[451,6],0,0,[[[415,[[414,[412]],[414,[413]],414]]],101],0,0,0,0,0,0,0,[[425,234,230,234],[[4,[234]]]],0,0,0,[[]],[451],[429],0,0,0,0,[[],6],[[],6],[[],6],[[],6],[[],6],[426],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],6],[[],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],[[425,418,419],103],[[449,448,419],103],[[236,233,216,216],3],0,0,0,0,[[216,216,216,216,216,216,397],216],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[233,233],[429,3],[237,3],[235,3],[436,3],[[237,396],3],[[235,232],3],[[436,232],3],[[429,220],3],[420,3],0,[[413,2],3],[450,3],[[419,230],3],[[420,230],3],[215,3],[440,3],[236,3],[455,3],[425,3],[449,3],[413,3],[429,3],[[402,438],3],[413,3],[[413,2],3],[461,3],[[233,234,234],3],[[233,230,230],3],[[233,234,234],3],[440,3],[236,3],[455,3],[[420,397,230],3],[420,3],[402,3],[[420,397,230],3],[462,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],[[449,448],463],[450,416],[[425,230,234],464],[[425,230,234],416],0,[421,[[4,[390]]]],0,0,0,0,0,0,0,0,0,[450,6],0,[[],[[103,[465]]]],[[],[[103,[466]]]],[[],[[103,[466]]]],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],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[236,234],216],0,0,0,0,0,0,0,0,0,0,0,0,[[215,230]],0,0,[[420,216],230],0,0,0,0,[424,3],0,[[420,397],397],0,0,0,0,0,0,0,0,0,0,[[425,234,230,234],[[4,[234]]]],[[425,234,230,234],[[4,[234]]]],0,0,[[420,216,215],230],0,[[],6],[[449,448],4],0,0,0,[[420,216,215],230],0,0,0,[[413,216],3],0,[[449,448],4],0,0,0,0,0,0,[402,3],[[]],[215,432],[413,432],[440,432],[236,432],[455,432],0,0,0,0,0,0,[[429,215],216],[215,216],[215,216],[[236,216],234],[461,3],0,0,0,0,0,[[425,230,234],464],[[449,448],463],[[207,390],422],[[101,390,2,234,230,446,389,234,230],419],[[233,418],428],[[233,3,101,230,230,2,390,230,216,230,2,230,216,234,234],424],[[233,101,230,230,2,234,390],454],[[233,230,230],390],[[426,461,236,450,216,427,2,230,101],[[8,[[4,[390]],201]]]],[464,4],[463,4],0,0,[[425,467],[[4,[421]]]],[448,[[4,[467]]]],[[449,467],[[4,[421]]]],0,0,[[425,467],[[4,[421]]]],[[449,467],[[4,[421]]]],0,0,[423,6],0,0,0,0,0,0,[402,3],0,0,0,0,0,[[431,433,[4,[230]]],209],[234,230],[230,234],[[215,[4,[230]]],[[103,[216]]]],[[236,[4,[230]]],[[103,[216]]]],[455,388],0,[[215,4,[4,[230]]],[[103,[216]]]],[[236,[4,[230]]],[[103,[431]]]],[101,[[103,[431]]]],0,0,[428,418],0,[449,447],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,[[420,230],3],[413,468],[463,4],[450,[[4,[452]]]],[450,[[4,[452]]]],[461,234],0,[412,6],0,[[[415,[[414,[412]],[414,[413]],414]],232,230],4],[[[415,[[414,[412]],[414,[413]],414]],232,390],4],0,[[[415,[[414,[412]],[414,[413]],414]]],[[103,[6]]]],[[412,6],6],[412,6],0,0,[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[436]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],436],[[[415,[[414,[412]],[414,[413]],414]],232],[[103,[235]]]],[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[235]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],232],[[103,[235]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],235],0,0,0,0,[402,3],[450,[[103,[452]]]],0,0,[461,[[4,[418]]]],0,0,0,[469,216],0,[[420,397,230],397],0,[[461,230,234,426],103],0,0,0,[419,230],0,0,0,0,[470,471],[470,471],[[450,452],[[8,[452]]]],0,0,0,0,[[425,234,230,234],234],0,0,[235,216],0,0,0,0,0,[[233,4,4,3,230,234],[[4,[462]]]],0,0,0,0,0,[[235,216,216]],[[235,216]],[[235,216]],[[235,236,234,216]],[[235,216]],[[413,230]],0,0,0,0,0,0,0,0,0,[420,230],[215,216],[[215,216],216],[420,230],[[425,418,390],[[4,[419]]]],[[449,448,390],[[4,[419]]]],[[425,418,230],[[4,[419]]]],[[449,448,230],[[4,[419]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6,234],103],[[235,234,234]],[[425,230,234],4],[[449,448],[[4,[419]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[457,397,230]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],101,101,101,101,101],103],[[450,6],103],[[425,418],448],[[425,418],448],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,216],216],[[215,216],216],0,0,0,0,0,0,0,[439,[[8,[11]]]],[429,[[8,[11]]]],[237,[[8,[11]]]],[235,[[8,[11]]]],[436,[[8,[11]]]],[433,[[8,[11]]]],[392,[[8,[11]]]],[442,[[8,[11]]]],[418,[[8,[11]]]],[422,[[8,[11]]]],[419,[[8,[11]]]],[393,[[8,[11]]]],[446,[[8,[11]]]],[395,[[8,[11]]]],[233,[[8,[11]]]],[428,[[8,[11]]]],[447,[[8,[11]]]],[424,[[8,[11]]]],[454,[[8,[11]]]],[398,[[8,[11]]]],[399,[[8,[11]]]],[458,[[8,[11]]]],[420,[[8,[11]]]],0,[412,6],0,[[412,6],6],[[[415,[[414,[412]],[414,[413]],414]],396],[[103,[237]]]],[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[237]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],396],[[103,[237]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],237],[402,3],0,0,0,0,[[413,3]],[207],[[451,207]],[[236,3]],[207],[[451,207]],[[413,3]],[[420,3]],0,0,0,[[235,236]],[[235,236]],[236,216],0,0,0,0,0,0,0,0,[463,233],[425,233],[428,233],[447,233],[454,233],0,0,[436,428],0,[468],[[236,216],[[103,[216]]]],0,0,[[101,101,101,101,101],6],0,[215,216],[236,216],0,0,0,0,0,0,0,0,0,0,0,0,0,[[420,216],230],0,0,0,[[420,397],397],0,[424,233],0,0,0,[420,458],0,0,0,0,[230,[[4,[389]]]],0,0,0,0,0,[392,433],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[393,[[103,[446]]]],[[[415,[[414,[412]],[414,[413]],414]],230],103],[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[420]]]],[412,6],0,[[[415,[[414,[412]],[414,[413]],414]]],[[103,[6]]]],0,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],[[103,[420]]]],0,0,[412,6],0,[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],215,230,2],103],0,0,0,[[412,6],6],[[[415,[[414,[412]],[414,[413]],414]],220],[[103,[429]]]],[[[415,[[414,[412]],[414,[413]],414]],220],103],[[[415,[[414,[412]],[414,[413]],414]],6],[[103,[429]]]],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],220],103],[[[415,[[0,[[417,[412]],[414,[412]]]],[0,[[417,[413]],[414,[413]]]],[0,[417,414]]]],6],429],0,[[],[[103,[215]]]],[[],[[103,[402]]]],[[],[[103,[439]]]],[[],[[103,[423]]]],[[],[[103,[440]]]],[[],[[103,[441]]]],[[],[[103,[443]]]],[[],[[103,[425]]]],[[],[[103,[450]]]],[[],[[103,[236]]]],[[],[[103,[455]]]],[[],[[103,[456]]]],[[],[[103,[215]]]],[[],[[103,[402]]]],[[],[[103,[439]]]],[[],[[103,[423]]]],[[],[[103,[440]]]],[[],[[103,[441]]]],[[],[[103,[443]]]],[[],[[103,[425]]]],[[],[[103,[450]]]],[[],[[103,[236]]]],[[],[[103,[455]]]],[[],[[103,[456]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],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,[418,[193,[418]]]]]],[[],8],[[],8],[[],8],[101,[[8,[472,[193,[472]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[393,[193,[393]]]]]],[[],8],[[],8],[101,[[8,[446,[193,[446]]]]]],[101,[[8,[395,[193,[395]]]]]],[[],8],[101,[[8,[233,[193,[233]]]]]],[[],8],[101,[[8,[428,[193,[428]]]]]],[[],8],[101,[[8,[447,[193,[447]]]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[101,[[8,[453,[193,[453]]]]]],[[],8],[452,[[103,[424]]]],[[],8],[452,[[103,[424]]]],[452,[[103,[454]]]],[[],8],[452,[[103,[454]]]],[[],8],[[],8],[[],8],[[],8],[101,[[8,[398,[193,[398]]]]]],[[],8],[[],8],[101,[[8,[399,[193,[399]]]]]],[101,[[8,[458,[193,[458]]]]]],[[],8],[[],8],[[],[[8,[418,[193,[418]]]]]],[[],[[8,[472,[193,[472]]]]]],[[],[[8,[393,[193,[393]]]]]],[[],[[8,[446,[193,[446]]]]]],[[],[[8,[395,[193,[395]]]]]],[[],[[8,[233,[193,[233]]]]]],[[],[[8,[428,[193,[428]]]]]],[[],[[8,[447,[193,[447]]]]]],[[],[[8,[453,[193,[453]]]]]],[[],[[8,[398,[193,[398]]]]]],[[],[[8,[399,[193,[399]]]]]],[[],[[8,[458,[193,[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],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[439,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],[[429,215],216],[[235,236],216],[[235,236,216],[[103,[216]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[457,230,397]],[[215,429,216]],[[236,426,431,230],103],[215],[[215,216,230]],[[449,230,230]],[[215,230,230]],[[235,236,230]],0,0,0,0,[215,103],[423,103],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[215,429,216,230],[[103,[430]]]],[[215,429,216,230],[[103,[430]]]],[[215,429,216,230],[[103,[3]]]],[[215,429,216,230],[[103,[3]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],412],0,0,0,0,0,0,0,0,[2,3],[[],2],0,[2,3],[[],2],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],473],[[],474],[[],475],[[],476],[6],[6],[6],[6],[6],[6],[6],[6],[[],[[8,[473,11]]]],[[],[[8,[474,11]]]],[[],[[8,[475,11]]]],[[],[[8,[476,11]]]],[6],[6],[6],[6],[[]],[[]],[[]],[[]],[[],6],[[],6],[[],6],[[],6],[[]],[[]],[[]],[[]],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[],4],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[473,[[8,[11]]]],[474,[[8,[11]]]],[475,[[8,[11]]]],[476,[[8,[11]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[432,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,"Serum3OpenOrdersBalanceLog"],[3,"Serum3OpenOrdersBalanceLogV2"],[3,"WithdrawLoanOriginationFeeLog"],[3,"WithdrawLoanLog"],[3,"TokenLiqBankruptcyLog"],[3,"DeactivateTokenPositionLog"],[3,"DeactivatePerpPositionLog"],[3,"TokenMetaDataLog"],[3,"TokenMetaDataLogV2"],[3,"PerpMarketMetaDataLog"],[3,"Serum3RegisterMarketLog"],[3,"PerpLiqBaseOrPositivePnlLog"],[3,"PerpLiqBankruptcyLog"],[3,"PerpLiqNegativePnlOrBankruptcyLog"],[3,"PerpSettlePnlLog"],[3,"PerpSettleFeesLog"],[3,"AccountBuybackFeesWithMngoLog"],[3,"FilledPerpOrderLog"],[3,"PerpTakerTradeLog"],[3,"PerpForceClosePositionLog"],[3,"TokenForceCloseBorrowsWithTokenLog"],[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"],[15,"str"],[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"],[6,"MangoAccountLoadedRef"],[3,"Global"],[3,"Order"],[3,"BookSideIterItem"],[3,"OrderTreeIter"],[3,"BookSideIter"],[6,"MangoAccountLoadedRefCell"],[6,"MangoAccountLoadedRefCellMut"],[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":"IIIDDDEDNNERDEDDDDNDGDDDDNNQLLLLLLLLLLMFFAMMMMMLMMLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLMMMLMMMMMLMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMMLLMLLKLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALMMMLAMMMLLLLLLLLLLLLLLLLLLLLLMFLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALLLMLLMFLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLKMLMMMMLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLMMMLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFMLLFLMMMMLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFKLLLLLLLLLMMLLLLMMMMLLALMLLLLLLLLLLLFLLFLLLLLLMMLLLLMFLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMNDENNLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLMLLLLLLLLLLLLLLLLLLLDDDDNNNDELLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMDDLMLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLFFFFFFFFDNNDENNNNELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAALLLLLLLLLLLLDDDDDDDDLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLLLLLLLLLLLLLLLLLLLLLMMMLMMMLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLMLLLLLLLLLLLLLLLLDDDDDDDDDDLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMMMMMLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLENNLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLMLLLLLFLLLLMMLLMLLLLMLLMFLLLLLLLLDLLLLLLLLLLLLLFLLLLLLLLLMLLLLLLMLLMFLLLLLLLL","n":["AccountFetcher","AnyhowWrap","AsyncChannelSendUnlessFull","CachedAccountFetcher","Client","ClientBuilder","ClientBuilderError","ComputeEstimates","ExactIn","ExactOut","JupiterSwapMode","MAX_ACCOUNTS_PER_TRANSACTION","MangoClient","MangoClientError","MangoGroupContext","PerpMarketContext","PreparedInstructions","RpcAccountFetcher","SendTransactionPreflightFailure","Serum3MarketContext","SimulateTransactionResponse","TokenContext","TransactionBuilder","TransactionBuilderConfig","TransactionSize","UninitializedField","ValidationError","Value","__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","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_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","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","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","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_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","checked_cast_from","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_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_estimates","config","context","create_account","cu","cu_per_mango_instruction","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_rpc_send_transaction_config","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_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","derive_health_check_remaining_account_metas","derive_health_check_remaining_account_metas","derive_health_check_remaining_account_metas_two_accounts","derive_liquidation_health_check_remaining_account_metas","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","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","error_tracking","event_q","event_queue","fallback_oracle","fee_payer","fee_payer","fee_payer","fetch_address_lookup_table","fetch_address_lookup_tables","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","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_single","from_vec","gpa","group","group","group","group","group_for_admin","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","http_client","http_error_handling","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_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_v4","jupiter_v4_url","jupiter_v4_url","jupiter_v6","jupiter_v6_url","jupiter_v6_url","keypair_from_cli","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","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","lossy_into","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_rpc","new_perp_markets_listed","new_serum3_markets_listed","new_tokens_listed","oracle","oracle","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_as","overflowing_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","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_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_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","provide","provide","pubkey_from_cli","push","quote_lot_size","quote_token_index","req_q","rpc","rpc_anchor_account","rpc_async","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_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","saturating_cast_from","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_and_confirm_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_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_readonly_account_meta","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_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_into","try_into","try_into","try_into","try_into","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","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_as","unwrapped_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","vault_signer","vaults","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_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","wrapping_cast_from","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_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","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","AccountErrorState","ErrorTracking","__clone_box","accounts","az","az","borrow","borrow","borrow_mut","borrow_mut","cast_from","cast_from","checked_as","checked_as","checked_cast_from","checked_cast_from","clear_errors","clone","clone_into","count","default","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","had_too_many_errors","height","height","init","init","into","into","into_request","into_request","into_request","into_request","last_at","log_persistent_errors","lossless_try_into","lossless_try_into","lossless_try_into","lossless_try_into","lossy_into","lossy_into","lossy_into","lossy_into","messages","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","record_error","saturating_as","saturating_as","saturating_cast_from","saturating_cast_from","skip_duration","skip_threshold","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","unwrapped_as","unwrapped_as","unwrapped_cast_from","unwrapped_cast_from","vzip","vzip","wrapping_as","wrapping_as","wrapping_cast_from","wrapping_cast_from","fetch_anchor_account","fetch_banks","fetch_mango_accounts","fetch_mint_infos","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","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::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::snapshot_source","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mango_v4_client::websocket_source","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","Some Result<> types don’t convert to anyhow::Result …","Push to an async_channel::Sender and ignore if the channel …","","","Builder for Client
.","Error type for ClientBuilder","","","","","","","","","","","","","","","","","","","Uninitialized field","Custom validation error","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Builds a new Client
.","","","","","","","","","","","","","","","","","","","","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 …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","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","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Do some manual unpacking on some ClientErrors","","","","","","","","","","","","","Defaults to a preflight check at processed commitment","Defaults to a preflight check at processed commitment","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A copy of RpcClient::send_and_confirm_transaction that …","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 …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,22,22,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,14,14,135,19,13,12,20,21,22,11,23,24,7,8,0,0,0,20,23,24,70,16,7,23,24,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,8,11,11,24,24,23,23,24,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,12,13,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,0,16,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,7,19,8,19,13,12,20,21,22,11,23,24,7,19,13,12,20,21,22,11,23,24,7,12,13,23,23,12,13,21,16,70,8,8,7,31,31,31,31,31,11,31,12,20,21,7,12,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,8,16,16,8,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,11,23,24,11,11,23,23,24,24,0,23,24,11,13,12,13,8,8,2,41,19,2,41,19,2,2,8,8,8,11,11,13,14,14,45,45,20,21,41,19,8,70,31,16,13,12,14,14,14,45,20,21,22,11,23,24,7,19,13,12,20,21,22,11,23,24,7,7,7,0,8,16,11,24,8,0,31,31,31,31,31,8,8,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,8,0,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,24,70,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,41,19,19,8,8,70,70,31,31,16,16,13,13,12,12,14,14,45,45,20,20,21,21,22,22,11,11,23,23,24,24,7,7,7,20,0,8,8,12,13,8,12,13,0,7,20,20,8,41,41,19,19,8,8,70,70,31,31,16,16,13,13,12,12,14,14,45,45,20,20,21,21,22,22,11,11,23,23,24,24,7,7,41,41,19,19,8,8,70,70,31,31,16,16,13,13,12,12,14,14,45,45,20,20,21,21,22,22,11,11,23,23,24,24,7,7,8,8,8,135,11,16,11,11,23,24,11,19,13,7,8,8,16,16,16,16,11,24,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,8,8,70,23,23,16,8,8,8,8,8,16,24,16,16,8,8,8,0,8,8,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,0,0,21,14,45,0,7,24,23,23,41,13,13,12,13,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,70,70,8,8,0,136,16,16,8,8,8,8,8,8,16,16,16,8,8,16,8,23,23,24,70,8,70,0,12,13,7,19,13,12,20,21,22,11,23,24,7,0,14,45,0,16,16,16,8,8,8,11,16,8,8,8,8,16,0,70,12,13,70,70,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,23,11,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,0,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,41,19,8,70,31,16,13,12,14,45,20,21,22,11,23,24,7,137,137,88,0,0,88,88,87,88,87,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,88,87,87,88,87,88,87,88,87,87,88,88,87,87,88,88,87,87,88,88,87,88,87,88,87,88,87,88,87,88,87,88,87,87,88,87,88,87,87,88,87,88,87,88,87,88,87,88,87,88,88,87,88,87,88,87,88,0,0,0,0,95,95,95,0,0,95,96,92,91,92,91,91,91,91,91,103,97,95,96,92,91,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,96,97,91,103,97,95,96,92,91,103,97,95,96,92,95,96,92,95,96,92,91,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,95,97,97,97,97,97,97,97,97,97,97,95,96,92,91,103,97,95,96,92,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,91,103,103,97,97,95,95,96,96,92,92,92,91,91,91,91,103,103,97,97,95,95,96,96,92,92,91,91,103,103,97,97,95,95,96,96,92,92,91,103,91,91,91,103,97,95,96,92,91,103,97,95,96,92,96,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,91,97,97,103,97,91,103,97,95,96,92,91,103,97,95,96,92,96,92,91,103,96,95,96,92,97,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,91,91,91,103,97,95,96,92,91,103,97,95,96,92,91,103,97,95,96,92,92,0,0,107,106,107,106,107,106,107,106,107,106,107,106,107,106,106,107,107,107,106,107,106,107,106,107,106,107,106,107,106,107,106,107,106,107,106,107,106,107,106,107,106,107,107,106,106,107,106,107,107,106,106,107,107,106,106,107,107,106,107,106,107,106,107,106,107,106,107,106,106,107,106,107,106,106,106,107,107,106,107,106,107,106,107,106,107,106,107,106,107,106,107,106,0,0,0,0,0,0,0,0,0,110,111,0,0,110,111,110,111,0,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,110,111,112,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,110,110,110,112,53,110,111,112,110,111,112,53,110,111,112,112,53,110,111,112,112,53,110,111,112,53,53,110,110,111,111,112,112,53,53,110,110,111,111,112,112,53,53,110,110,111,111,112,112,53,112,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,53,112,53,112,53,110,111,112,53,110,111,112,110,111,112,53,110,111,112,112,112,53,110,111,112,53,110,111,112,53,110,111,112,53,110,111,112,0,0,53,110,111,112,53,110,111,112,53,110,111,112,0,0,0,0,0,0,0,0,115,113,116,117,118,119,120,113,117,118,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,120,115,113,116,117,118,119,120,115,113,116,117,118,119,120,119,115,115,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,113,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,116,113,116,54,115,113,116,117,118,119,120,116,54,115,113,116,117,118,119,120,54,54,115,115,113,113,116,116,117,117,118,118,119,119,120,120,116,54,54,115,115,113,113,116,116,117,117,118,118,119,119,120,120,54,54,115,115,113,113,116,116,117,117,118,118,119,119,120,120,116,54,113,116,116,118,117,116,118,113,113,116,116,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,117,116,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,113,116,54,119,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,115,113,116,117,118,119,120,120,118,113,54,113,120,115,115,113,116,117,118,119,120,118,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,119,54,115,113,116,117,118,119,120,119,54,115,113,116,117,118,119,120,54,115,113,116,117,118,119,120,0,0,0,0,0,0,0,0,0,0,114,121,122,123,124,125,126,127,128,127,126,123,121,124,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,126,114,121,122,123,124,125,126,127,128,114,121,122,123,124,125,126,127,128,126,124,114,127,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,114,121,122,123,124,125,126,127,128,124,55,114,121,122,123,124,125,126,127,128,124,123,121,123,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,114,123,55,114,121,122,123,124,125,126,127,128,114,123,55,114,121,122,123,124,125,126,127,128,55,55,114,114,121,121,122,122,123,123,124,124,125,125,126,126,127,127,128,128,128,128,123,55,55,114,114,121,121,122,122,123,123,124,124,125,125,126,126,127,127,128,128,55,55,114,114,121,121,122,122,123,123,124,124,125,125,126,126,127,127,128,128,55,114,114,123,114,123,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,122,114,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,127,128,55,124,114,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,114,121,122,123,124,125,126,127,128,126,114,55,122,126,114,125,114,114,121,122,123,124,125,126,127,128,126,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,124,124,124,55,114,121,122,123,124,125,126,127,128,124,55,114,121,122,123,124,125,126,127,128,55,114,121,122,123,124,125,126,127,128,0,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,0,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,0,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,0,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,0,131,131,131,131,131,131,131,131,0,134,134,134,134,134,134,134,134,134,134,134,134,134,0,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,0,134,134,134,134,134,134,134,134],"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,[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]]]],[[],12],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[16,16],17],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[7],[[[19,[2]]]],0,[[[19,[2]]],[[19,[2]]]],[13,13],[12,12],[20,20],[21,21],[22,22],[11,11],[23,23],[24,24],[7,7],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[12,25],12],0,0,0,[[12,26],12],0,0,0,0,0,[[13,3,[28,[27]],[28,[27]],29,30],5],0,0,0,0,0,0,0,[[],31],[[],12],[[],20],[[],21],[[],7],[[],32],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[8,[34,[9]],[34,[9]],[34,[35]]],5],[[16,6,[34,[9]],[34,[9]],[34,[35]]],5],[[16,6,6],5],[[8,6],5],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[[11,11],17],[[23,23],17],[[24,24],17],[[],17],[[],17],[[],17],[[],17],[[],17],[[],17],0,0,0,0,[13,[[28,[27]]]],[[12,[18,[[28,[27]]]]],12],0,[[8,3],[[5,[36]]]],[[8,37],[[5,[[34,[36]]]]]],[3,[[40,[[39,[38]]]]]],[[41,3],[[40,[[39,[38]]]]]],[[[19,[2]],3],[[40,[[39,[38]]]]]],[3,[[40,[[39,[38]]]]]],[[41,3],[[40,[[39,[38]]]]]],[[[19,[2]],3],[[40,[[39,[38]]]]]],[3,[[40,[[39,[38]]]]]],[3,[[40,[[39,[38]]]]]],[[13,3,27],[[5,[34]]]],[[13,3,[28,[27]],[28,[27]],30],[[5,[3]]]],[[8,9],[[5,[42]]]],[11,3],[11,3],[[13,43],44],[[14,43],44],[[14,43],44],[[45,43],44],[[45,43],44],[[20,43],44],[[21,43],44],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[46,14],[47,14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[48,29],7],[[[34,[48]],29],7],0,[8,3],0,0,0,[[3,29],3],0,0,0,0,[[31,6],29],[[31,33,33,33],29],[[8,6,[34,[9]],[34,[9]],[34,[35]]],[[5,[7]]]],[[8,6,[34,[9]],[34,[9]],[34,[35]]],[[5,[7]]]],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],0,[49,[[5,[50]]]],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],51],[[],52],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],51],[[],52],[[],52],[[],51],[[],52],[[],51],[[],51],[[],52],[[],52],[[],51],[[],52],[[],51],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],52],[[],51],[[],52],[[],51],[7,17],[20,17],0,[8,53],[8,54],[[12,46],12],0,[8,55],[[12,46],12],0,[30,27],[7,33],0,[[],20],[[[28,[8]],56]],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[8,[[5,[6]]]],0,[8,[[5,[[34,[36]]]]]],[[],5],0,[[16,9],3],0,0,0,0,[[11,10],57],[[[28,[2]]],[[19,[2]]]],[[25,26,[28,[27]],[18,[56]],21],13],[[],7],[[13,3,[28,[27]],16,[28,[2]]],[[5,[8]]]],[[13,3,[28,[27]]],[[5,[8]]]],[[58,3],[[5,[16]]]],[[16,58],[[5,[17]]]],[[16,58],[[5,[17]]]],[[16,58],[[5,[17]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[8,3],0,0,0,0,[[16,35],24],[[8,35,59],[[5,[7]]]],[[8,35],[[5,[60]]]],[[8,35,61,62],[[5,[7]]]],[[8,35],[[5,[60]]]],[[8,35,62],[[5,[7]]]],[[16,35],3],0,0,0,[[8,35],[[5,[10]]]],[[8,35,63,61,61,61,62,64,17,62,59,65],[[5,[60]]]],[[8,6,35,63,61,61,61,62,64,17,62,59,65],[[5,[7]]]],0,[[8,35],[[5,[60]]]],[[8,35],[[5,[7]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[66,67],[68,67],0,[69],[69],[30,3],[[7,48,29]],0,0,0,0,[[13,3],[[5,[4]]]],[13,58],[[12,32],12],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[70,13],[[5,[60]]]],[[70,13],[[5,[60]]]],[[8,[34,[48]]],[[5,[60]]]],[[8,[34,[48]]],[[5,[60]]]],[[71,72],73],[[],[[15,[74]]]],[[16,75],23],[[16,75],11],[[8,30],[[15,[[34,[76]],67]]]],[[8,6,75,59],[[5,[7]]]],[[8,30,77,76],[[5,[60]]]],[[8,30],[[5,[60]]]],[[8,75],48],[[8,75,3],[[5,[60]]]],[[16,30],75],0,0,[[8,30,77,62,62,62,78,79,62,80],[[5,[60]]]],[[8,6,75,77,62,62,62,78,79,62,80],[[5,[7]]]],[[16,75],11],[[8,30],[[5,[60]]]],0,0,0,0,[[8,[34,[48]]],[[5,[81]]]],[[70,13],[[5,[81]]]],0,[[12,[18,[56]]],12],0,[7,[[34,[48]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[3,82],[[],46],[[],46],[3,82],[[16,9],11],[[16,3],[[5,[11]]]],[[16,30],11],[[8,62],[[5,[7]]]],[[8,62,62,62,62,83],[[5,[7]]]],[[8,3,62,17],[[5,[60]]]],0,0,[[8,9,10],[[5,[7]]]],[[8,9,9,10],[[5,[7]]]],[[8,3,62,17],[[5,[60]]]],[[8,6,3,62,17],[[5,[7]]]],0,[[]],[[70,58],[[5,[84]]]],[[12,21],12],0,[70,[[5,[20]]]],[[70,85],[[5,[84]]]],[[],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],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,[1],[1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],18],[[],18],[[],18],[[],18],[87,87],[88,88],[[]],[[]],[33],[33],[33],[33],[[]],[[]],[[]],[[]],[33,33],[33,33],[33],[33],[[]],[[]],[[]],[[]],[[[90,[89]]],[[5,[87]]]],[[],33],[[],33],[[],33],[[],33],[[]],[[]],[[],52],[[],51],[[],51],[[],52],[[],18],[[],18],[[],18],[[],18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],0,[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[],86],[[],86],[[]],[[]],[[]],[[]],[[88,91]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[1],[1],[1],[[91,3],[[15,[92,67]]]],0,[91,33],[91,33],[91,33],[91,[[94,[3,92,93]]]],[[]],[[]],[[]],[[]],[[]],[[]],[91,62],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[95,95],[96,96],[92,92],[[]],[[]],[[]],[[],91],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33],[33],[33],[33],[33],[33],[[95,95],17],[[97,3],[[5,[[0,[98,99]]]]]],[[97,3],5],[[97,3],[[5,[10]]]],[[97,3],[[5,[[0,[98,99]]]]]],[[97,3],[[5,[6]]]],[[97,3],[[5,[6]]]],[[97,3],[[40,[[39,[38]]]]]],[[97,3],[[5,[100]]]],[[97,3],[[40,[[39,[38]]]]]],[[97,3],[[40,[[39,[38]]]]]],[[95,43],[[15,[101]]]],[[96,43],[[15,[101]]]],[[92,43],[[15,[101]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[]],[[]],[[]],[[]],[[]],[[]],[[],51],[[],52],[[],51],[[],52],[[],52],[[],51],[[],52],[[],51],[[],51],[[],52],[[],52],[[],51],[[92,62,62],17],[91,37],[91,37],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],91],[102,103],[91,62],[91,62],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[91,94],[91,94],[[97,3],[[5,[104]]]],[[97,104,56],5],[[103,91]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[91,33],[[[28,[[105,[91]]]],102,56]],0,[[]],[[]],[[]],[97,[[5,[104]]]],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[91,3,92]],[[91,96]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],18],[[],18],[[],18],[[],18],[[106,3]],[107,107],[[]],0,[[],106],[33],[33],[33],[33],[[]],[[]],[[]],[[]],[33,33],[33,33],[33],[33],[[]],[[]],[[]],[[106,3,108],[[18,[107]]]],[[],33],[[],33],[[],33],[[],33],[[]],[[]],[[],51],[[],52],[[],52],[[],51],0,[[106,30,56]],[[],18],[[],18],[[],18],[[],18],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[106,3,108,46]],[[]],[[]],[[]],[[]],0,0,[[]],[[],15],[[],15],[[],15],[[],15],[[],86],[[],86],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[58,3],[[5,[4]]]],[[58,3,3],[[5,[34]]]],[[58,3,3,3],[[5,[34]]]],[[58,3,3],[[5,[34]]]],[[58,3,3],[[5,[34]]]],[[58,3,3],[[5,[34]]]],[[16,6],[[5,[109]]]],[[16,97,6],[[5,[109]]]],0,0,0,0,0,0,0,0,0,0,[1],[1],[1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[110,110],[111,111],[112,112],[[]],[[]],[[]],[33],[33],[33],[33],[33],[33],[33],[33],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[33,33],[33,33],[33,33],[33,33],[33],[33],[33],[33],[[110,110],17],[[],17],[[],17],[112,46],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],33],[[],33],[[],33],[[],33],0,[[],33],[[],33],[[],33],[[],33],0,[[]],[[]],[[]],[[]],[[],51],[[],52],[[],51],[[],52],[[],52],[[],51],[[],51],[[],52],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[53,112],[[5,[70]]]],0,[[53,3,3,62,62,17,110],[[5,[112]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],15],[[],15],[[3,3,113],[[5,[112]]]],[114,[[5,[112]]]],[[],15],[[],15],[[],15],[[],15],[[],86],[[],86],[[],86],[[],86],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[1],[1],[1],[1],[1],[1],[1],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],0,[115,115],[113,113],[116,116],[117,117],[118,118],[119,119],[120,120],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[[],[[15,[115]]]],[[],[[15,[113]]]],[[],[[15,[116]]]],[[],[[15,[117]]]],[[],[[15,[118]]]],[[],[[15,[119]]]],[[],[[15,[120]]]],[33],[33],[33],[33],[33],[33],[33],[33],0,[[115,43],44],[[113,43],44],[[116,43],44],[[117,43],44],[[118,43],44],[[119,43],44],[[120,43],44],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],0,0,0,[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],52],[[],51],[[],51],[[],52],[[],51],[[],52],[[],52],[[],51],[[],51],[[],52],0,[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[54,3,3,113],[[5,[70]]]],0,0,[[54,3,3,62,62,22,17],[[5,[113]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[115,15],[113,15],[116,15],[117,15],[118,15],[119,15],[120,15],0,0,0,[[54,3,3,62,62,22,17],[[5,[60]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],15],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],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,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],0,[114,114],[121,121],[122,122],[123,123],[124,124],[125,125],[126,126],[127,127],[128,128],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[33,33],[[],[[15,[114]]]],[[],[[15,[121]]]],[[],[[15,[122]]]],[[],[[15,[123]]]],[[],[[15,[124]]]],[[],[[15,[125]]]],[[],[[15,[126]]]],[[],[[15,[127]]]],[[],[[15,[128]]]],0,[33],[33],[33],[33],[33],[33],[33],[33],[33],[33],0,0,0,0,[[114,43],44],[[121,43],44],[[122,43],44],[[123,43],44],[[124,43],44],[[125,43],44],[[126,43],44],[[127,43],44],[[128,43],44],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],0,0,[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],[[],33],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],52],[[],51],[[],51],[[],52],0,0,0,[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[],18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[55,114],[[5,[70]]]],0,0,0,[[55,3,3,62,62,17],[[5,[114]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[114,15],[121,15],[122,15],[123,15],[124,15],[125,15],[126,15],[127,15],[128,15],0,0,[[55,3,3,62,62,17],[[5,[60]]]],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],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[],18],[[],18],[33],[33],[[]],[[]],[33,33],[33],[[129,129],17],[[16,35,129,33],[[5,[34]]]],[[129,43],44],[[]],[[],33],[[],33],[[]],[[],51],[[],52],[[],18],[[],18],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],15],[[],15],[[],86],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[],18],[[],18],[33],[33],[[]],[[]],[33,33],[33],[[]],0,[[],33],[[],33],[[]],[[],52],[[],51],[[100,3],[[18,[130]]]],[[],18],[[],18],[[]],[[]],0,0,[[]],[[]],0,[[]],[[]],[[]],[[]],0,[[]],[[]],0,[[131,[34,[3]],[132,[88]]]],[[],15],[[],15],[[],86],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[],18],[[],18],[33],[33],[[]],[[]],[33,33],[33],[[]],[[[133,[88]],56],[[5,[62]]]],[[],33],[[],33],[[]],[[],51],[[],52],[[],18],[[],18],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],0,[[134,[34,[3]],[132,[88]]]],[[],15],[[],15],[[],86],[[]],[[]],[[]],[[]],[[]]],"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,"MangoGroupContext"],[15,"bool"],[4,"Option"],[3,"CachedAccountFetcher"],[3,"TransactionSize"],[3,"TransactionBuilderConfig"],[4,"JupiterSwapMode"],[3,"Serum3MarketContext"],[3,"PerpMarketContext"],[4,"Cluster"],[3,"CommitmentConfig"],[3,"Keypair"],[3,"Arc"],[15,"u32"],[15,"str"],[3,"ComputeEstimates"],[3,"RpcSendTransactionConfig"],[15,"usize"],[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,"String"],[3,"UninitializedFieldError"],[3,"Instruction"],[3,"Response"],[8,"DeserializeOwned"],[3,"Request"],[3,"Request"],[3,"Jupiter"],[3,"JupiterV4"],[3,"JupiterV6"],[3,"Duration"],[15,"f64"],[3,"RpcClient"],[15,"u8"],[3,"Signature"],[15,"i64"],[15,"u64"],[4,"Side"],[4,"PlaceOrderType"],[4,"SelfTradeBehavior"],[4,"ClientError"],[3,"Error"],[3,"Error"],[3,"Demand"],[3,"TransactionBuilder"],[3,"RpcClient"],[3,"Transaction"],[6,"Result"],[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"],[3,"HashMap"],[4,"SlotStatus"],[3,"SlotData"],[3,"AccountFetcher"],[8,"ZeroCopy"],[8,"Owner"],[3,"AccountSharedData"],[3,"Error"],[3,"Metrics"],[3,"ChainDataMetrics"],[6,"Slot"],[3,"RwLock"],[3,"ErrorTracking"],[3,"AccountErrorState"],[3,"Instant"],[3,"HealthCache"],[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"],[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/rs/doc/src/mango_v4/state/orderbook/bookside.rs.html b/rs/doc/src/mango_v4/state/orderbook/bookside.rs.html
index c926c1b2e..baefc3452 100644
--- a/rs/doc/src/mango_v4/state/orderbook/bookside.rs.html
+++ b/rs/doc/src/mango_v4/state/orderbook/bookside.rs.html
@@ -407,6 +407,58 @@
407
408
409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
use anchor_lang::prelude::*;
use num_enum::{IntoPrimitive, TryFromPrimitive};
use static_assertions::const_assert_eq;
@@ -589,6 +641,58 @@
}
None
}
+
+ /// Walk up the book given base units and return the amount in quote lots an order would
+ /// be filled at. If not enough liquidity is on book, return None
+ pub fn matched_amount(
+ &self,
+ quantity: i64,
+ now_ts: u64,
+ oracle_price_lots: i64,
+ ) -> Option<i64> {
+ if quantity <= 0 {
+ return None;
+ }
+ let mut sum_qty: i64 = 0;
+ let mut sum_amt: i64 = 0;
+ for order in self.iter_valid(now_ts, oracle_price_lots) {
+ sum_qty += order.node.quantity;
+ sum_amt += order.node.quantity * order.price_lots;
+ let extra_qty = sum_qty - quantity;
+ if extra_qty >= 0 {
+ sum_amt -= extra_qty * order.price_lots;
+ return Some(sum_amt);
+ }
+ }
+ None
+ }
+
+ /// Walk up the book given quote units and return the quantity in base lots
+ /// an order would need to request to match at least the requested amount.
+ /// If not enough liquidity is on book, return None
+ pub fn matched_quantity(
+ &self,
+ amount: i64,
+ now_ts: u64,
+ oracle_price_lots: i64,
+ ) -> Option<i64> {
+ if amount <= 0 {
+ return None;
+ }
+ let mut sum_qty: i64 = 0;
+ let mut sum_amt: i64 = 0;
+ for order in self.iter_valid(now_ts, oracle_price_lots) {
+ sum_qty += order.node.quantity;
+ sum_amt += order.node.quantity * order.price_lots;
+ let extra_amt = sum_amt - amount;
+ if extra_amt >= 0 {
+ // adding n-1 before dividing through n to force rounding up
+ sum_qty -= (extra_amt + order.price_lots - 1) / order.price_lots;
+ return Some(sum_qty);
+ }
+ }
+ None
+ }
}
#[cfg(test)]
diff --git a/ts/client/classes/As.html b/ts/client/classes/As.html
index e65e14517..63c8c832d 100644
--- a/ts/client/classes/As.html
+++ b/ts/client/classes/As.html
@@ -1 +1 @@
-As | @blockworks-foundation/mango-v4 Class As<Tag>
Type parameters
Tag: keyof never
Hierarchy
- As
Index
Constructors
Properties
Constructors
constructor
Type parameters
Tag: string | number | symbol
Returns As<Tag>
Properties
Private [$as$]
Static Private Readonly $as$
Generated using TypeDoc
\ No newline at end of file
+As | @blockworks-foundation/mango-v4 Class As<Tag>
Type parameters
Tag: keyof never
Hierarchy
- As
Index
Constructors
Properties
Constructors
constructor
Type parameters
Tag: string | number | symbol
Returns As<Tag>
Properties
Private [$as$]
Static Private Readonly $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 04d928113..b41b18e3d 100644
--- a/ts/client/classes/Bank.html
+++ b/ts/client/classes/Bank.html
@@ -1,6 +1,6 @@
-Bank | @blockworks-foundation/mango-v4 Class Bank
Hierarchy
- Bank
Implements
Index
Constructors
Properties
- _oracle
Last Known Deviation - _oracle
Last Updated Slot - _oracle
Provider - _price
- _ui
Price - adjustment
Factor - avg
Utilization - bank
Num - bank
Rate Last Updated - borrow
Index - borrow
Weight Scale Start Quote - collected
Fees Native - deposit
Index - deposit
Limit - deposit
Weight Scale Start Quote - dust
- fees
Withdrawn - flash
Loan Approved Amount - flash
Loan Swap Fee Rate - flash
Loan Token Account Initial - force
Close - group
- index
Last Updated - indexed
Borrows - indexed
Deposits - init
Asset Weight - init
Liab Weight - interest
Curve Scaling - interest
Target Utilization - last
Net Borrows Window Start Ts - liquidation
Fee - loan
Fee Rate - loan
Origination Fee Rate - maint
Asset Weight - maint
Liab Weight - maint
Weight Shift Asset Target - maint
Weight Shift Duration Inv - maint
Weight Shift End - maint
Weight Shift Liab Target - maint
Weight Shift Start - max
Rate - min
Vault To Deposits Ratio - mint
- mint
Decimals - name
- net
Borrow Limit Per Window Quote - net
Borrow Limit Window Size Ts - net
Borrows In Window - oracle
- oracle
Config - potential
Serum Tokens - public
Key - rate0
- rate1
- reduce
Only - stable
Price Model - token
Conditional Swap Maker Fee Rate - token
Conditional Swap Taker Fee Rate - token
Index - util0
- util1
- vault
Accessors
Methods
- are
Borrows Reduce Only - are
Deposits Reduce Only - get
Asset Price - get
Borrow Limit Left In Window - get
Borrow Rate - get
Borrow Rate Ui - get
Borrow Rate Without Upkeep Rate - get
Deposit Rate - get
Deposit Rate Ui - get
Liab Price - get
Max Withdraw - get
Net Borrow Limit Per Window - get
Net Borrow Limit Per Window Ui - get
Time To Next Borrow Limit Window Starts Ts - is
Oracle Stale Or Unconfident - maint
Weights - native
Borrows - native
Deposits - scaled
Init Asset Weight - scaled
Init Liab Weight - to
String - ui
Borrows - ui
Deposits - from
Constructors
constructor
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
depositLimit: BN
Returns Bank
Properties
_oracle Last Known Deviation
_oracle Last Updated Slot
_oracle Provider
_price
_ui Price
adjustment Factor
avg Utilization
bank Num
bank Rate Last Updated
borrow Index
borrow Weight Scale Start Quote
collected Fees Native
deposit Index
deposit Limit
deposit Weight Scale Start Quote
dust
fees Withdrawn
flash Loan Approved Amount
flash Loan Swap Fee Rate
flash Loan Token Account Initial
force Close
group
index Last Updated
indexed Borrows
indexed Deposits
init Asset Weight
init Liab Weight
interest Curve Scaling
interest Target Utilization
last Net Borrows Window Start Ts
liquidation Fee
loan Fee Rate
loan Origination Fee Rate
maint Asset Weight
maint Liab Weight
maint Weight Shift Asset Target
maint Weight Shift Duration Inv
maint Weight Shift End
maint Weight Shift Liab Target
maint Weight Shift Start
max Rate
min Vault To Deposits Ratio
mint
mint Decimals
name
net Borrow Limit Per Window Quote
net Borrow Limit Window Size Ts
net Borrows In Window
oracle
oracle Config
potential Serum Tokens
public Key
rate0
rate1
reduce Only
stable Price Model
token Conditional Swap Maker Fee Rate
token Conditional Swap Taker Fee Rate
token Index
util0
util1
vault
Accessors
oracle Last Updated Slot
Returns number
oracle Provider
Returns OracleProvider
price
Returns I80F48
ui Price
Returns number
Methods
are Borrows Reduce Only
Returns boolean
are Deposits Reduce Only
Returns boolean
get Asset Price
Returns I80F48
get Borrow Limit Left In Window
Returns I80F48
get Borrow Rate
Returns I80F48
total borrow rate, 0 is 0% where 1 is 100% (including loan upkeep rate)
-
get Borrow Rate Ui
Returns number
total borrow rate percentage (including loan upkeep rate)
-
get Borrow Rate Without Upkeep Rate
Returns I80F48
borrow rate, 0 is 0% where 1 is 100%; not including loan upkeep rate
-
get Deposit Rate
Returns I80F48
deposit rate, 0 is 0% where 1 is 100%
-
get Deposit Rate Ui
Returns number
deposit rate percentage
-
get Liab Price
Returns I80F48
get Max Withdraw
get Net Borrow Limit Per Window
Returns I80F48
get Net Borrow Limit Per Window Ui
Returns number
get Time To Next Borrow Limit Window Starts Ts
Returns number
is Oracle Stale Or Unconfident
Parameters
nowSlot: number
Returns boolean
maint Weights
native Borrows
Returns I80F48
native Deposits
Returns I80F48
scaled Init Asset Weight
scaled Init Liab Weight
to String
Returns string
ui Borrows
Returns number
ui Deposits
Returns number
Static from
Parameters
publicKey: PublicKey
obj: { adjustmentFactor: I80F48Dto; avgUtilization: I80F48Dto; bankNum: number; bankRateLastUpdated: BN; borrowIndex: I80F48Dto; borrowWeightScaleStartQuote: number; collectedFeesNative: I80F48Dto; depositIndex: I80F48Dto; depositLimit: BN; depositWeightScaleStartQuote: number; dust: I80F48Dto; 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; potentialSerumTokens: BN; rate0: I80F48Dto; rate1: I80F48Dto; reduceOnly: number; stablePriceModel: StablePriceModel; tokenConditionalSwapMakerFeeRate: number; tokenConditionalSwapTakerFeeRate: number; tokenIndex: number; util0: I80F48Dto; util1: I80F48Dto; vault: PublicKey }
adjustment Factor: I80F48Dto
avg Utilization: I80F48Dto
bank Num: number
bank Rate Last Updated: BN
borrow Index: I80F48Dto
borrow Weight Scale Start Quote: number
collected Fees Native: I80F48Dto
deposit Index: I80F48Dto
deposit Limit: BN
deposit Weight Scale Start Quote: number
dust: I80F48Dto
fees Withdrawn: BN
flash Loan Approved Amount: BN
flash Loan Swap Fee Rate: number
flash Loan Token Account Initial: BN
force Close: number
group: PublicKey
index Last Updated: BN
indexed Borrows: I80F48Dto
indexed Deposits: I80F48Dto
init Asset Weight: I80F48Dto
init Liab Weight: I80F48Dto
interest Curve Scaling: number
interest Target Utilization: number
last Net Borrows Window Start Ts: BN
liquidation Fee: I80F48Dto
loan Fee Rate: I80F48Dto
loan Origination Fee Rate: I80F48Dto
maint Asset Weight: I80F48Dto
maint Liab Weight: I80F48Dto
maint Weight Shift Asset Target: I80F48Dto
maint Weight Shift Duration Inv: I80F48Dto
maint Weight Shift End: BN
maint Weight Shift Liab Target: I80F48Dto
maint Weight Shift Start: BN
max Rate: I80F48Dto
min Vault To Deposits Ratio: number
mint: PublicKey
mint Decimals: number
name: number[]
net Borrow Limit Per Window Quote: BN
net Borrow Limit Window Size Ts: BN
net Borrows In Window: BN
oracle: PublicKey
oracle Config: OracleConfigDto
potential Serum Tokens: BN
rate0: I80F48Dto
rate1: I80F48Dto
reduce Only: number
stable Price Model: StablePriceModel
token Conditional Swap Maker Fee Rate: number
token Conditional Swap Taker Fee Rate: number
token Index: number
util0: I80F48Dto
util1: I80F48Dto
vault: PublicKey
Returns Bank
Generated using TypeDoc
\ No newline at end of file
+Bank | @blockworks-foundation/mango-v4 Class Bank
Hierarchy
- Bank
Implements
Index
Constructors
Properties
- _oracle
Last Known Deviation - _oracle
Last Updated Slot - _oracle
Provider - _price
- _ui
Price - adjustment
Factor - avg
Utilization - bank
Num - bank
Rate Last Updated - borrow
Index - borrow
Weight Scale Start Quote - collected
Fees Native - deposit
Index - deposit
Limit - deposit
Weight Scale Start Quote - dust
- fees
Withdrawn - flash
Loan Approved Amount - flash
Loan Swap Fee Rate - flash
Loan Token Account Initial - force
Close - group
- index
Last Updated - indexed
Borrows - indexed
Deposits - init
Asset Weight - init
Liab Weight - interest
Curve Scaling - interest
Target Utilization - last
Net Borrows Window Start Ts - liquidation
Fee - loan
Fee Rate - loan
Origination Fee Rate - maint
Asset Weight - maint
Liab Weight - maint
Weight Shift Asset Target - maint
Weight Shift Duration Inv - maint
Weight Shift End - maint
Weight Shift Liab Target - maint
Weight Shift Start - max
Rate - min
Vault To Deposits Ratio - mint
- mint
Decimals - name
- net
Borrow Limit Per Window Quote - net
Borrow Limit Window Size Ts - net
Borrows In Window - oracle
- oracle
Config - potential
Serum Tokens - public
Key - rate0
- rate1
- reduce
Only - stable
Price Model - token
Conditional Swap Maker Fee Rate - token
Conditional Swap Taker Fee Rate - token
Index - util0
- util1
- vault
Accessors
Methods
- are
Borrows Reduce Only - are
Deposits Reduce Only - get
Asset Price - get
Borrow Limit Left In Window - get
Borrow Rate - get
Borrow Rate Ui - get
Borrow Rate Without Upkeep Rate - get
Deposit Rate - get
Deposit Rate Ui - get
Liab Price - get
Max Withdraw - get
Net Borrow Limit Per Window - get
Net Borrow Limit Per Window Ui - get
Time To Next Borrow Limit Window Starts Ts - is
Oracle Stale Or Unconfident - maint
Weights - native
Borrows - native
Deposits - scaled
Init Asset Weight - scaled
Init Liab Weight - to
String - ui
Borrows - ui
Deposits - from
Constructors
constructor
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
depositLimit: BN
Returns Bank
Properties
_oracle Last Known Deviation
_oracle Last Updated Slot
_oracle Provider
_price
_ui Price
adjustment Factor
avg Utilization
bank Num
bank Rate Last Updated
borrow Index
borrow Weight Scale Start Quote
collected Fees Native
deposit Index
deposit Limit
deposit Weight Scale Start Quote
dust
fees Withdrawn
flash Loan Approved Amount
flash Loan Swap Fee Rate
flash Loan Token Account Initial
force Close
group
index Last Updated
indexed Borrows
indexed Deposits
init Asset Weight
init Liab Weight
interest Curve Scaling
interest Target Utilization
last Net Borrows Window Start Ts
liquidation Fee
loan Fee Rate
loan Origination Fee Rate
maint Asset Weight
maint Liab Weight
maint Weight Shift Asset Target
maint Weight Shift Duration Inv
maint Weight Shift End
maint Weight Shift Liab Target
maint Weight Shift Start
max Rate
min Vault To Deposits Ratio
mint
mint Decimals
name
net Borrow Limit Per Window Quote
net Borrow Limit Window Size Ts
net Borrows In Window
oracle
oracle Config
potential Serum Tokens
public Key
rate0
rate1
reduce Only
stable Price Model
token Conditional Swap Maker Fee Rate
token Conditional Swap Taker Fee Rate
token Index
util0
util1
vault
Accessors
oracle Last Updated Slot
Returns number
oracle Provider
Returns OracleProvider
price
Returns I80F48
ui Price
Returns number
Methods
are Borrows Reduce Only
Returns boolean
are Deposits Reduce Only
Returns boolean
get Asset Price
Returns I80F48
get Borrow Limit Left In Window
Returns I80F48
get Borrow Rate
Returns I80F48
total borrow rate, 0 is 0% where 1 is 100% (including loan upkeep rate)
+
get Borrow Rate Ui
Returns number
total borrow rate percentage (including loan upkeep rate)
+
get Borrow Rate Without Upkeep Rate
Returns I80F48
borrow rate, 0 is 0% where 1 is 100%; not including loan upkeep rate
+
get Deposit Rate
Returns I80F48
deposit rate, 0 is 0% where 1 is 100%
+
get Deposit Rate Ui
Returns number
deposit rate percentage
+
get Liab Price
Returns I80F48
get Max Withdraw
get Net Borrow Limit Per Window
Returns I80F48
get Net Borrow Limit Per Window Ui
Returns number
get Time To Next Borrow Limit Window Starts Ts
Returns number
is Oracle Stale Or Unconfident
Parameters
nowSlot: number
Returns boolean
maint Weights
native Borrows
Returns I80F48
native Deposits
Returns I80F48
scaled Init Asset Weight
scaled Init Liab Weight
to String
Returns string
ui Borrows
Returns number
ui Deposits
Returns number
Static from
Parameters
publicKey: PublicKey
obj: { adjustmentFactor: I80F48Dto; avgUtilization: I80F48Dto; bankNum: number; bankRateLastUpdated: BN; borrowIndex: I80F48Dto; borrowWeightScaleStartQuote: number; collectedFeesNative: I80F48Dto; depositIndex: I80F48Dto; depositLimit: BN; depositWeightScaleStartQuote: number; dust: I80F48Dto; 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; potentialSerumTokens: BN; rate0: I80F48Dto; rate1: I80F48Dto; reduceOnly: number; stablePriceModel: StablePriceModel; tokenConditionalSwapMakerFeeRate: number; tokenConditionalSwapTakerFeeRate: number; tokenIndex: number; util0: I80F48Dto; util1: I80F48Dto; vault: PublicKey }
adjustment Factor: I80F48Dto
avg Utilization: I80F48Dto
bank Num: number
bank Rate Last Updated: BN
borrow Index: I80F48Dto
borrow Weight Scale Start Quote: number
collected Fees Native: I80F48Dto
deposit Index: I80F48Dto
deposit Limit: BN
deposit Weight Scale Start Quote: number
dust: I80F48Dto
fees Withdrawn: BN
flash Loan Approved Amount: BN
flash Loan Swap Fee Rate: number
flash Loan Token Account Initial: BN
force Close: number
group: PublicKey
index Last Updated: BN
indexed Borrows: I80F48Dto
indexed Deposits: I80F48Dto
init Asset Weight: I80F48Dto
init Liab Weight: I80F48Dto
interest Curve Scaling: number
interest Target Utilization: number
last Net Borrows Window Start Ts: BN
liquidation Fee: I80F48Dto
loan Fee Rate: I80F48Dto
loan Origination Fee Rate: I80F48Dto
maint Asset Weight: I80F48Dto
maint Liab Weight: I80F48Dto
maint Weight Shift Asset Target: I80F48Dto
maint Weight Shift Duration Inv: I80F48Dto
maint Weight Shift End: BN
maint Weight Shift Liab Target: I80F48Dto
maint Weight Shift Start: BN
max Rate: I80F48Dto
min Vault To Deposits Ratio: number
mint: PublicKey
mint Decimals: number
name: number[]
net Borrow Limit Per Window Quote: BN
net Borrow Limit Window Size Ts: BN
net Borrows In Window: BN
oracle: PublicKey
oracle Config: OracleConfigDto
potential Serum Tokens: BN
rate0: I80F48Dto
rate1: I80F48Dto
reduce Only: number
stable Price Model: StablePriceModel
token Conditional Swap Maker Fee Rate: number
token Conditional Swap Taker Fee Rate: number
token Index: number
util0: I80F48Dto
util1: I80F48Dto
vault: PublicKey
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 29a8bd3a0..4cb8d9102 100644
--- a/ts/client/classes/BookSide.html
+++ b/ts/client/classes/BookSide.html
@@ -1,7 +1,7 @@
-BookSide | @blockworks-foundation/mango-v4 Class BookSide
Hierarchy
- BookSide
Index
Constructors
constructor
Parameters
client: MangoClient
perpMarket: PerpMarket
type: BookSideType
rootFixed: OrderTreeRoot
rootOraclePegged: OrderTreeRoot
orderTreeNodes: OrderTreeNodes
Optional maxBookDelay: number
Returns BookSide
Properties
client
now
order Tree Nodes
perp Market
root Fixed
root Oracle Pegged
type
Static Private INNER_ NODE_ TAG
Static Private LEAF_ NODE_ TAG
Methods
best
Returns undefined | PerpOrder
fixed Items
Returns Generator<PerpOrder, any, unknown>
get Impact Price Ui
Parameters
baseLots: BN
Returns undefined | number
get L2
Parameters
depth: number
Returns [number, number, BN, BN][]
get L2 Ui
Parameters
depth: number
Returns [number, number][]
items
Returns Generator<PerpOrder, any, unknown>
oracle Pegged Items
Returns Generator<PerpOrder, any, unknown>
Static from
Parameters
client: MangoClient
perpMarket: PerpMarket
bookSideType: BookSideType
obj: { nodes: OrderTreeNodes; roots: OrderTreeRoot[] }
nodes: OrderTreeNodes
roots: OrderTreeRoot[]
Returns BookSide
Static get Price From Key
Parameters
key: BN
Returns BN
Static to Inner Node
Parameters
client: MangoClient
data: [number]
Returns InnerNode
Static to Leaf Node
Parameters
client: MangoClient
data: [number]
Returns LeafNode
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/FlashLoanWithdraw.html b/ts/client/classes/FlashLoanWithdraw.html
index 4b76f556d..61e7f3299 100644
--- a/ts/client/classes/FlashLoanWithdraw.html
+++ b/ts/client/classes/FlashLoanWithdraw.html
@@ -1 +1 @@
-FlashLoanWithdraw | @blockworks-foundation/mango-v4 Class FlashLoanWithdraw
Hierarchy
- FlashLoanWithdraw
Index
Constructors
Properties
Constructors
constructor
Returns FlashLoanWithdraw
Properties
Static amount
Static index
Generated using TypeDoc
\ No newline at end of file
+FlashLoanWithdraw | @blockworks-foundation/mango-v4 Class FlashLoanWithdraw
Hierarchy
- FlashLoanWithdraw
Index
Constructors
Properties
Constructors
constructor
Returns FlashLoanWithdraw
Properties
Static amount
Static index
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/Group.html b/ts/client/classes/Group.html
index 3f105533a..04611873b 100644
--- a/ts/client/classes/Group.html
+++ b/ts/client/classes/Group.html
@@ -1,5 +1,5 @@
-Group | @blockworks-foundation/mango-v4 Class Group
Hierarchy
- Group
Index
Constructors
Properties
- address
Lookup Tables - address
Lookup Tables List - admin
- allowed
Fast Listings Per Interval - banks
Map By Mint - banks
Map By Name - banks
Map By Token Index - buyback
Fees - buyback
Fees Expiry Interval - buyback
Fees Mngo Bonus Factor - buyback
Fees Swap Mango Account - creator
- deposit
Limit Quote - fast
Listing Admin - fast
Listing Interval Start - fast
Listings In Interval - group
Num - insurance
Mint - insurance
Vault - ix
Gate - mint
Infos Map By Mint - mint
Infos Map By Token Index - mngo
Token Index - perp
Markets Map By Market Index - perp
Markets Map By Name - perp
Markets Map By Oracle - pis
- public
Key - security
Admin - serum3
External Markets Map - serum3
Markets Map By External - serum3
Markets Map By Market Index - testing
- vault
Amounts Map - version
Methods
- console
Log Banks - decode
Price From Oracle Ai - find
Perp Market - get
First Bank By Mint - get
First Bank By Token Index - get
First Bank For Mngo - get
First Bank For Perp Settlement - get
Insurance Mint Decimals - get
Mint Decimals - get
Mint Decimals By Token Index - get
Perp Market By Market Index - get
Perp Market By Name - get
Perp Market By Oracle - get
Price Impact By Token Index - get
Serum3 External Market - get
Serum3 Market By External Market - get
Serum3 Market By Market Index - get
Serum3 Market By Name - get
Token Vault Balance By Mint - get
Token Vault Balance By Mint Ui - load
Perp Asks For Market - load
Perp Bids For Market - load
Serum3 Asks For Market - load
Serum3 Bids For Market - reload
All - reload
Alts - reload
Bank Oracle Prices - reload
Banks - reload
Mint Infos - reload
Perp Market Oracle Prices - reload
Perp Markets - reload
Price Impact Data - reload
Serum3 External Markets - reload
Serum3 Markets - reload
Vaults - to
Native Decimals - to
Native Price - to
String - to
Ui Price - from
Constructors
constructor
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
address Lookup Tables
address Lookup Tables List
admin
allowed Fast Listings Per Interval
banks Map By Mint
banks Map By Name
banks Map By Token Index
buyback Fees
buyback Fees Expiry Interval
buyback Fees Mngo Bonus Factor
buyback Fees Swap Mango Account
creator
deposit Limit Quote
fast Listing Admin
fast Listing Interval Start
fast Listings In Interval
group Num
insurance Mint
insurance Vault
ix Gate
mint Infos Map By Mint
mint Infos Map By Token Index
mngo Token Index
perp Markets Map By Market Index
perp Markets Map By Name
perp Markets Map By Oracle
pis
public Key
security Admin
serum3 External Markets Map
serum3 Markets Map By External
serum3 Markets Map By Market Index
testing
vault Amounts Map
version
Methods
console Log Banks
Returns void
decode Price From Oracle Ai
Parameters
coder: BorshAccountsCoder<string>
oracle: PublicKey
ai: AccountInfo<Buffer>
baseDecimals: number
client: MangoClient
Returns Promise<{ deviation: I80F48; lastUpdatedSlot: number; price: I80F48; provider: OracleProvider; uiPrice: number }>
find Perp Market
Parameters
marketIndex: PerpMarketIndex
Returns PerpMarket
get First Bank By Mint
Parameters
mintPk: PublicKey
Returns Bank
get First Bank By Token Index
Parameters
tokenIndex: TokenIndex
Returns Bank
get First Bank For Mngo
Returns Bank
get First Bank For Perp Settlement
Returns Bank
get Insurance Mint Decimals
Returns number
get Mint Decimals
Parameters
mintPk: PublicKey
Returns number
get Mint Decimals By Token Index
Parameters
tokenIndex: TokenIndex
Returns number
get Perp Market By Market Index
Parameters
marketIndex: PerpMarketIndex
Returns PerpMarket
get Perp Market By Name
Parameters
perpMarketName: string
Returns PerpMarket
get Perp Market By Oracle
Parameters
oracle: PublicKey
Returns PerpMarket
get Price Impact By Token Index
-
+
Group | @blockworks-foundation/mango-v4 Class Group
Hierarchy
- Group
Index
Constructors
Properties
- address
Lookup Tables - address
Lookup Tables List - admin
- allowed
Fast Listings Per Interval - banks
Map By Mint - banks
Map By Name - banks
Map By Token Index - buyback
Fees - buyback
Fees Expiry Interval - buyback
Fees Mngo Bonus Factor - buyback
Fees Swap Mango Account - creator
- deposit
Limit Quote - fast
Listing Admin - fast
Listing Interval Start - fast
Listings In Interval - group
Num - insurance
Mint - insurance
Vault - ix
Gate - mint
Infos Map By Mint - mint
Infos Map By Token Index - mngo
Token Index - perp
Markets Map By Market Index - perp
Markets Map By Name - perp
Markets Map By Oracle - pis
- public
Key - security
Admin - serum3
External Markets Map - serum3
Markets Map By External - serum3
Markets Map By Market Index - testing
- vault
Amounts Map - version
Methods
- console
Log Banks - decode
Price From Oracle Ai - find
Perp Market - get
First Bank By Mint - get
First Bank By Token Index - get
First Bank For Mngo - get
First Bank For Perp Settlement - get
Insurance Mint Decimals - get
Mint Decimals - get
Mint Decimals By Token Index - get
Perp Market By Market Index - get
Perp Market By Name - get
Perp Market By Oracle - get
Price Impact By Token Index - get
Serum3 External Market - get
Serum3 Market By External Market - get
Serum3 Market By Market Index - get
Serum3 Market By Name - get
Token Vault Balance By Mint - get
Token Vault Balance By Mint Ui - load
Perp Asks For Market - load
Perp Bids For Market - load
Serum3 Asks For Market - load
Serum3 Bids For Market - reload
All - reload
Alts - reload
Bank Oracle Prices - reload
Banks - reload
Mint Infos - reload
Perp Market Oracle Prices - reload
Perp Markets - reload
Price Impact Data - reload
Serum3 External Markets - reload
Serum3 Markets - reload
Vaults - to
Native Decimals - to
Native Price - to
String - to
Ui Price - from
Constructors
constructor
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
address Lookup Tables
address Lookup Tables List
admin
allowed Fast Listings Per Interval
banks Map By Mint
banks Map By Name
banks Map By Token Index
buyback Fees
buyback Fees Expiry Interval
buyback Fees Mngo Bonus Factor
buyback Fees Swap Mango Account
creator
deposit Limit Quote
fast Listing Admin
fast Listing Interval Start
fast Listings In Interval
group Num
insurance Mint
insurance Vault
ix Gate
mint Infos Map By Mint
mint Infos Map By Token Index
mngo Token Index
perp Markets Map By Market Index
perp Markets Map By Name
perp Markets Map By Oracle
pis
public Key
security Admin
serum3 External Markets Map
serum3 Markets Map By External
serum3 Markets Map By Market Index
testing
vault Amounts Map
version
Methods
console Log Banks
Returns void
decode Price From Oracle Ai
Parameters
coder: BorshAccountsCoder<string>
oracle: PublicKey
ai: AccountInfo<Buffer>
baseDecimals: number
client: MangoClient
Returns Promise<{ deviation: I80F48; lastUpdatedSlot: number; price: I80F48; provider: OracleProvider; uiPrice: number }>
find Perp Market
Parameters
marketIndex: PerpMarketIndex
Returns PerpMarket
get First Bank By Mint
Parameters
mintPk: PublicKey
Returns Bank
get First Bank By Token Index
Parameters
tokenIndex: TokenIndex
Returns Bank
get First Bank For Mngo
Returns Bank
get First Bank For Perp Settlement
Returns Bank
get Insurance Mint Decimals
Returns number
get Mint Decimals
Parameters
mintPk: PublicKey
Returns number
get Mint Decimals By Token Index
Parameters
tokenIndex: TokenIndex
Returns number
get Perp Market By Market Index
Parameters
marketIndex: PerpMarketIndex
Returns PerpMarket
get Perp Market By Name
Parameters
perpMarketName: string
Returns PerpMarket
get Perp Market By Oracle
Parameters
oracle: PublicKey
Returns PerpMarket
get Price Impact By Token Index
-
Returns a price impact in percentage, between 0 to 100 for a token,
returns -1 if data is bad
-Parameters
tokenIndex: TokenIndex
usdcAmountUi: number
Returns number
get Serum3 External Market
Parameters
externalMarketPk: PublicKey
Returns Market
get Serum3 Market By External Market
Parameters
externalMarketPk: PublicKey
Returns Serum3Market
get Serum3 Market By Market Index
Parameters
marketIndex: MarketIndex
Returns Serum3Market
get Serum3 Market By Name
Parameters
name: string
Returns Serum3Market
get Token Vault Balance By Mint
Parameters
mintPk: PublicKey
Returns BN
get Token Vault Balance By Mint Ui
Parameters
mintPk: PublicKey
Returns number
sum of ui balances of vaults for all banks for a token
-
load Perp Asks For Market
Parameters
client: MangoClient
group: Group
perpMarketIndex: PerpMarketIndex
Returns Promise<BookSide>
load Perp Bids For Market
Parameters
client: MangoClient
perpMarketIndex: PerpMarketIndex
Returns Promise<BookSide>
load Serum3 Asks For Market
Parameters
client: MangoClient
externalMarketPk: PublicKey
Returns Promise<Orderbook>
load Serum3 Bids For Market
Parameters
client: MangoClient
externalMarketPk: PublicKey
Returns Promise<Orderbook>
reload All
Parameters
client: MangoClient
Returns Promise<void>
reload Alts
Parameters
client: MangoClient
Returns Promise<void>
reload Bank Oracle Prices
Parameters
client: MangoClient
Returns Promise<void>
reload Banks
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Mint Infos
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Perp Market Oracle Prices
Parameters
client: MangoClient
Returns Promise<void>
reload Perp Markets
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Price Impact Data
Returns Promise<void>
reload Serum3 External Markets
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Serum3 Markets
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Vaults
Parameters
client: MangoClient
Returns Promise<void>
to Native Decimals
Parameters
uiAmount: number
mintPk: PublicKey
Returns BN
to Native Price
Parameters
uiPrice: number
baseDecimals: number
Returns I80F48
to String
Returns string
to Ui Price
Parameters
price: number | I80F48
baseDecimals: number
Returns number
Static from
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 }
address Lookup Tables: PublicKey[]
admin: PublicKey
allowed Fast Listings Per Interval: number
buyback Fees: number
buyback Fees Expiry Interval: BN
buyback Fees Mngo Bonus Factor: number
buyback Fees Swap Mango Account: PublicKey
creator: PublicKey
deposit Limit Quote: BN
fast Listing Admin: PublicKey
fast Listing Interval Start: BN
fast Listings In Interval: number
group Num: number
insurance Mint: PublicKey
insurance Vault: PublicKey
ix Gate: BN
mngo Token Index: number
security Admin: PublicKey
testing: number
version: number
Returns Group
Generated using TypeDoc
\ No newline at end of file
+Parameters
tokenIndex: TokenIndex
usdcAmountUi: number
Returns number
get Serum3 External Market
Parameters
externalMarketPk: PublicKey
Returns Market
get Serum3 Market By External Market
Parameters
externalMarketPk: PublicKey
Returns Serum3Market
get Serum3 Market By Market Index
Parameters
marketIndex: MarketIndex
Returns Serum3Market
get Serum3 Market By Name
Parameters
name: string
Returns Serum3Market
get Token Vault Balance By Mint
Parameters
mintPk: PublicKey
Returns BN
get Token Vault Balance By Mint Ui
Parameters
mintPk: PublicKey
Returns number
sum of ui balances of vaults for all banks for a token
+
load Perp Asks For Market
Parameters
client: MangoClient
group: Group
perpMarketIndex: PerpMarketIndex
Returns Promise<BookSide>
load Perp Bids For Market
Parameters
client: MangoClient
perpMarketIndex: PerpMarketIndex
Returns Promise<BookSide>
load Serum3 Asks For Market
Parameters
client: MangoClient
externalMarketPk: PublicKey
Returns Promise<Orderbook>
load Serum3 Bids For Market
Parameters
client: MangoClient
externalMarketPk: PublicKey
Returns Promise<Orderbook>
reload All
Parameters
client: MangoClient
Returns Promise<void>
reload Alts
Parameters
client: MangoClient
Returns Promise<void>
reload Bank Oracle Prices
Parameters
client: MangoClient
Returns Promise<void>
reload Banks
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Mint Infos
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Perp Market Oracle Prices
Parameters
client: MangoClient
Returns Promise<void>
reload Perp Markets
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Price Impact Data
Returns Promise<void>
reload Serum3 External Markets
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Serum3 Markets
Parameters
client: MangoClient
Optional ids: Id
Returns Promise<void>
reload Vaults
Parameters
client: MangoClient
Returns Promise<void>
to Native Decimals
Parameters
uiAmount: number
mintPk: PublicKey
Returns BN
to Native Price
Parameters
uiPrice: number
baseDecimals: number
Returns I80F48
to String
Returns string
to Ui Price
Parameters
price: number | I80F48
baseDecimals: number
Returns number
Static from
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 }
address Lookup Tables: PublicKey[]
admin: PublicKey
allowed Fast Listings Per Interval: number
buyback Fees: number
buyback Fees Expiry Interval: BN
buyback Fees Mngo Bonus Factor: number
buyback Fees Swap Mango Account: PublicKey
creator: PublicKey
deposit Limit Quote: BN
fast Listing Admin: PublicKey
fast Listing Interval Start: BN
fast Listings In Interval: number
group Num: number
insurance Mint: PublicKey
insurance Vault: PublicKey
ix Gate: BN
mngo Token Index: number
security Admin: 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 9077aca34..6936ed5c6 100644
--- a/ts/client/classes/HealthType.html
+++ b/ts/client/classes/HealthType.html
@@ -1 +1 @@
-HealthType | @blockworks-foundation/mango-v4 Class HealthType
Hierarchy
- HealthType
Index
Constructors
Properties
Constructors
constructor
Returns HealthType
Properties
Static init
Type declaration
init: {}
Static liquidation End
Type declaration
liquidation End: {}
Static maint
Type declaration
maint: {}
Generated using TypeDoc
\ No newline at end of file
+HealthType | @blockworks-foundation/mango-v4 Class HealthType
Hierarchy
- HealthType
Index
Constructors
Properties
Constructors
constructor
Returns HealthType
Properties
Static init
Type declaration
init: {}
Static liquidation End
Type declaration
liquidation End: {}
Static 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 08810f29c..6670cf321 100644
--- a/ts/client/classes/I80F48.html
+++ b/ts/client/classes/I80F48.html
@@ -1,11 +1,11 @@
-I80F48 | @blockworks-foundation/mango-v4 Class I80F48
Hierarchy
- I80F48
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
data: BN
Returns I80F48
Properties
data
Static FRACTIONS
Static MAX_ BN
Static MAX_ SIZE
+I80F48 | @blockworks-foundation/mango-v4 Class I80F48
Hierarchy
- I80F48
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
data: BN
Returns I80F48
Properties
data
Static FRACTIONS
Static MAX_ BN
Static MAX_ SIZE
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
-Static MIN_ BN
Static MULTIPLIER_ BIG
Static MULTIPLIER_ BN
Static MULTIPLIER_ NUMBER
Methods
abs
Returns I80F48
add
ceil
Returns I80F48
cmp
Parameters
x: I80F48
Returns 0 | 1 | -1
div
eq
Parameters
x: I80F48
Returns boolean
floor
Returns I80F48
frac
Returns I80F48
get Binary Layout
Returns string
get Data
Returns BN
gt
Parameters
x: I80F48
Returns boolean
gte
Parameters
x: I80F48
Returns boolean
iadd
idiv
imul
is Neg
Returns boolean
is Pos
Returns boolean
is Zero
Returns boolean
isub
lt
Parameters
x: I80F48
Returns boolean
lte
Parameters
x: I80F48
Returns boolean
max
min
mul
-
+
Static MIN_ BN
Static MULTIPLIER_ BIG
Static MULTIPLIER_ BN
Static MULTIPLIER_ NUMBER
Methods
abs
Returns I80F48
add
ceil
Returns I80F48
cmp
Parameters
x: I80F48
Returns 0 | 1 | -1
div
eq
Parameters
x: I80F48
Returns boolean
floor
Returns I80F48
frac
Returns I80F48
get Binary Layout
Returns string
get Data
Returns BN
gt
Parameters
x: I80F48
Returns boolean
gte
Parameters
x: I80F48
Returns boolean
iadd
idiv
imul
is Neg
Returns boolean
is Pos
Returns boolean
is Zero
Returns boolean
isub
lt
Parameters
x: I80F48
Returns boolean
lte
Parameters
x: I80F48
Returns boolean
max
min
mul
neg
Returns I80F48
sub
to Array
Returns Uint8Array
to Array Like
Parameters
ArrayType: BufferConstructor
Optional endian: Endianness
Optional length: number
Returns Buffer
to Big
Returns Big
to Fixed
neg
Returns I80F48
sub
to Array
Returns Uint8Array
to Array Like
Parameters
ArrayType: BufferConstructor
Optional endian: Endianness
Optional length: number
Returns Buffer
to Big
Returns Big
to Fixed
-
The number will be rounded first for UI sensibilities, then toFixed
-Parameters
Optional decimals: number
Returns string
to Locale String
Parameters
Optional locales: string | string[]
Optional options: NumberFormatOptions
Returns string
to Number
Returns number
to String
Returns string
to Twos
Returns BN
Static from
Static from Array
Parameters
src: Uint8Array
Returns I80F48
Static from Big
Parameters
x: Big
Returns I80F48
Static from I64
Parameters
x: BN
Returns I80F48
Static from Number
Parameters
x: number
Returns I80F48
Static from Number Or Undef
Parameters
Optional x: number
Returns undefined | I80F48
Static from Optional String
Parameters
Optional x: string
Returns undefined | I80F48
Static from String
Parameters
x: string
Returns I80F48
Static from U64
Parameters
x: BN
Returns I80F48
Generated using TypeDoc
\ No newline at end of file
+Parameters
Optional decimals: number
Returns string
to Locale String
Parameters
Optional locales: string | string[]
Optional options: NumberFormatOptions
Returns string
to Number
Returns number
to String
Returns string
to Twos
Returns BN
Static from
Static from Array
Parameters
src: Uint8Array
Returns I80F48
Static from Big
Parameters
x: Big
Returns I80F48
Static from I64
Parameters
x: BN
Returns I80F48
Static from Number
Parameters
x: number
Returns I80F48
Static from Number Or Undef
Parameters
Optional x: number
Returns undefined | I80F48
Static from Optional String
Parameters
Optional x: string
Returns undefined | I80F48
Static from String
Parameters
x: string
Returns I80F48
Static from U64
Parameters
x: BN
Returns 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 bc6b03243..ce0b66106 100644
--- a/ts/client/classes/I80F48Dto.html
+++ b/ts/client/classes/I80F48Dto.html
@@ -1 +1 @@
-I80F48Dto | @blockworks-foundation/mango-v4 Class I80F48Dto
Hierarchy
- I80F48Dto
Index
Constructors
Properties
Constructors
constructor
Parameters
val: BN
Returns I80F48Dto
Properties
val
Generated using TypeDoc
\ No newline at end of file
+I80F48Dto | @blockworks-foundation/mango-v4 Class I80F48Dto
Hierarchy
- I80F48Dto
Index
Constructors
Properties
Constructors
constructor
Parameters
val: BN
Returns I80F48Dto
Properties
val
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/InnerNode.html b/ts/client/classes/InnerNode.html
index 2450a91f8..f1f51f0ef 100644
--- a/ts/client/classes/InnerNode.html
+++ b/ts/client/classes/InnerNode.html
@@ -1 +1 @@
-InnerNode | @blockworks-foundation/mango-v4 Class InnerNode
Generated using TypeDoc
\ No newline at end of file
+InnerNode | @blockworks-foundation/mango-v4 Class InnerNode
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/InterestRateParams.html b/ts/client/classes/InterestRateParams.html
index 6bcbbbba5..0959f46f9 100644
--- a/ts/client/classes/InterestRateParams.html
+++ b/ts/client/classes/InterestRateParams.html
@@ -1 +1 @@
-InterestRateParams | @blockworks-foundation/mango-v4 Class InterestRateParams
Hierarchy
- InterestRateParams
Index
Constructors
Properties
Constructors
constructor
Returns InterestRateParams
Properties
adjustment Factor
max Rate
rate0
rate1
util0
util1
Generated using TypeDoc
\ No newline at end of file
+InterestRateParams | @blockworks-foundation/mango-v4 Class InterestRateParams
Hierarchy
- InterestRateParams
Index
Constructors
Properties
Constructors
constructor
Returns InterestRateParams
Properties
adjustment Factor
max Rate
rate0
rate1
util0
util1
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/LeafNode.html b/ts/client/classes/LeafNode.html
index cd7e15e3a..cd3b56274 100644
--- a/ts/client/classes/LeafNode.html
+++ b/ts/client/classes/LeafNode.html
@@ -1 +1 @@
-LeafNode | @blockworks-foundation/mango-v4 Class LeafNode
Hierarchy
- LeafNode
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
ownerSlot: number
orderType: PerpOrderType
timeInForce: number
key: BN
owner: PublicKey
quantity: BN
timestamp: BN
pegLimit: BN
Returns LeafNode
Properties
key
order Type
owner
owner Slot
peg Limit
quantity
time In Force
timestamp
Methods
Static from
Parameters
obj: { key: BN; orderType: PerpOrderType; owner: PublicKey; ownerSlot: number; pegLimit: BN; quantity: BN; timeInForce: number; timestamp: BN }
key: BN
order Type: PerpOrderType
owner: PublicKey
owner Slot: number
peg Limit: BN
quantity: BN
time In Force: number
timestamp: BN
Returns LeafNode
Generated using TypeDoc
\ No newline at end of file
+LeafNode | @blockworks-foundation/mango-v4 Class LeafNode
Hierarchy
- LeafNode
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
ownerSlot: number
orderType: PerpOrderType
timeInForce: number
key: BN
owner: PublicKey
quantity: BN
timestamp: BN
pegLimit: BN
Returns LeafNode
Properties
key
order Type
owner
owner Slot
peg Limit
quantity
time In Force
timestamp
Methods
Static from
Parameters
obj: { key: BN; orderType: PerpOrderType; owner: PublicKey; ownerSlot: number; pegLimit: BN; quantity: BN; timeInForce: number; timestamp: BN }
key: BN
order Type: PerpOrderType
owner: PublicKey
owner Slot: number
peg Limit: BN
quantity: BN
time In Force: number
timestamp: BN
Returns 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 41107a18b..41cde9388 100644
--- a/ts/client/classes/MangoAccount.html
+++ b/ts/client/classes/MangoAccount.html
@@ -1,69 +1,69 @@
-MangoAccount | @blockworks-foundation/mango-v4 Class MangoAccount
Hierarchy
- MangoAccount
Index
Constructors
Properties
- account
Num - being
Liquidated - buyback
Fees Accrued Current - buyback
Fees Accrued Previous - buyback
Fees Expiry Timestamp - delegate
- frozen
Until - group
- header
Version - health
Region Begin Init Health - in
Health Region - name
- net
Deposits - owner
- perp
Open Orders - perp
Spot Transfers - perps
- public
Key - serum3
- serum3
Oos Map By Market Index - token
Conditional Swaps - tokens
Methods
- get
Assets Value - get
Buyback Fees Accrued - get
Buyback Fees Accrued Ui - get
Collateral Value - get
Cumulative Interest - get
Effective Token Balance - get
Equity - get
Health - get
Health Contribution Per Asset Ui - get
Health Ratio - get
Health Ratio Ui - get
Liabs Value - get
Max Base For Perp Ask Ui - get
Max Base For Serum3 Ask Ui - get
Max Fees Buyback - get
Max Fees Buyback Ui - get
Max Quote For Perp Bid Ui - get
Max Quote For Serum3 Bid Ui - get
Max Source Ui For Token Swap - get
Max Withdraw With Borrow For Token - get
Max Withdraw With Borrow For Token Ui - get
Perp Position - get
Perp Position Ui - get
Pnl - get
Serum3 Account - get
Serum3 Oo Account - get
Token - get
Token Balance - get
Token Balance Ui - get
Token Borrows - get
Token Borrows Ui - get
Token Deposits - get
Token Deposits Ui - is
Delegate - is
Operational - load
Perp Open Orders For Market - load
Serum3 Open Orders - load
Serum3 Open Orders Accounts - load
Serum3 Open Orders For Market - perp
Active - perp
Max Settle - perp
Order Exists For Market - perp
Orders Active - perp
Position Exists For Market - reload
- reload
Serum3 Open Orders - reload
With Slot - serum3
Active - serum3
Cancel All Orders For All Markets - serum3
Settle Funds For All Markets - sim
Health Ratio With Perp Ask Ui Changes - sim
Health Ratio With Perp Bid Ui Changes - sim
Health Ratio With Serum3 Ask Ui Changes - sim
Health Ratio With Serum3 Bid Ui Changes - sim
Health Ratio With Token Position Ui Changes - to
String - token
Conditional Swaps Active - token
Positions For Not Confident Or Stale Oracles - tokens
Active - from
Constructors
constructor
Parameters
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>
Returns MangoAccount
Properties
account Num
being Liquidated
buyback Fees Accrued Current
buyback Fees Accrued Previous
buyback Fees Expiry Timestamp
delegate
frozen Until
group
header Version
health Region Begin Init Health
in Health Region
name
net Deposits
owner
perp Open Orders
perp Spot Transfers
perps
public Key
serum3
serum3 Oos Map By Market Index
token Conditional Swaps
tokens
Methods
get Assets Value
-
+
MangoAccount | @blockworks-foundation/mango-v4 Class MangoAccount
Hierarchy
- MangoAccount
Index
Constructors
Properties
- account
Num - being
Liquidated - buyback
Fees Accrued Current - buyback
Fees Accrued Previous - buyback
Fees Expiry Timestamp - delegate
- frozen
Until - group
- header
Version - health
Region Begin Init Health - in
Health Region - name
- net
Deposits - owner
- perp
Open Orders - perp
Spot Transfers - perps
- public
Key - serum3
- serum3
Oos Map By Market Index - token
Conditional Swaps - tokens
Methods
- get
Assets Value - get
Buyback Fees Accrued - get
Buyback Fees Accrued Ui - get
Collateral Value - get
Cumulative Interest - get
Effective Token Balance - get
Equity - get
Health - get
Health Contribution Per Asset Ui - get
Health Ratio - get
Health Ratio Ui - get
Liabs Value - get
Max Base For Perp Ask Ui - get
Max Base For Serum3 Ask Ui - get
Max Fees Buyback - get
Max Fees Buyback Ui - get
Max Quote For Perp Bid Ui - get
Max Quote For Serum3 Bid Ui - get
Max Source Ui For Token Swap - get
Max Withdraw With Borrow For Token - get
Max Withdraw With Borrow For Token Ui - get
Perp Position - get
Perp Position Ui - get
Pnl - get
Serum3 Account - get
Serum3 Oo Account - get
Token - get
Token Balance - get
Token Balance Ui - get
Token Borrows - get
Token Borrows Ui - get
Token Deposits - get
Token Deposits Ui - is
Delegate - is
Operational - load
Perp Open Orders For Market - load
Serum3 Open Orders - load
Serum3 Open Orders Accounts - load
Serum3 Open Orders For Market - perp
Active - perp
Max Settle - perp
Order Exists For Market - perp
Orders Active - perp
Position Exists For Market - reload
- reload
Serum3 Open Orders - reload
With Slot - serum3
Active - serum3
Cancel All Orders For All Markets - serum3
Settle Funds For All Markets - sim
Health Ratio With Perp Ask Ui Changes - sim
Health Ratio With Perp Bid Ui Changes - sim
Health Ratio With Serum3 Ask Ui Changes - sim
Health Ratio With Serum3 Bid Ui Changes - sim
Health Ratio With Token Position Ui Changes - to
String - token
Conditional Swaps Active - token
Positions For Not Confident Or Stale Oracles - tokens
Active - from
Constructors
constructor
Parameters
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>
Returns MangoAccount
Properties
account Num
being Liquidated
buyback Fees Accrued Current
buyback Fees Accrued Previous
buyback Fees Expiry Timestamp
delegate
frozen Until
group
header Version
health Region Begin Init Health
in Health Region
name
net Deposits
owner
perp Open Orders
perp Spot Transfers
perps
public Key
serum3
serum3 Oos Map By Market Index
token Conditional Swaps
tokens
Methods
get Assets Value
-
Sum of all positive assets.
Parameters
group: Group
Optional healthType: HealthType
Returns I80F48
assets, in native quote
-
get Buyback Fees Accrued
Returns BN
get Buyback Fees Accrued Ui
Returns number
get Collateral Value
-
+
get Buyback Fees Accrued
Returns BN
get Buyback Fees Accrued Ui
Returns number
get Collateral Value
get Cumulative Interest
Parameters
bank: Bank
Returns number
token cumulative interest, in native token units. Sum of deposit and borrow interest.
+
get Cumulative Interest
Parameters
bank: Bank
Returns number
token cumulative interest, in native token units. Sum of deposit and borrow interest.
Caveat: This will only return cumulative interest since the tokenPosition was last opened.
If the tokenPosition was closed and reopened multiple times it is necessary to add this result to
cumulative interest at each of the prior tokenPosition closings (from mango API) to get the all time
cumulative interest.
-
get Effective Token Balance
get Equity
-
+
get Effective Token Balance
get Equity
get Health
-
+
get Health
-
Health, see health.rs or https://docs.mango.markets/mango-markets/health-overview
Parameters
group: Group
healthType: HealthType
Returns I80F48
raw health number, in native quote
-
get Health Contribution Per Asset Ui
Parameters
group: Group
healthType: HealthType
Returns { asset: string; contribution: number; contributionDetails: undefined | { perpMarketContributions: { contributionUi: number; market: string }[]; spotUi: number } }[]
get Health Ratio
-
+
get Health Contribution Per Asset Ui
Parameters
group: Group
healthType: HealthType
Returns { asset: string; contribution: number; contributionDetails: undefined | { perpMarketContributions: { contributionUi: number; market: string }[]; spotUi: number } }[]
get Health Ratio
-
Health ratio, which is computed so 100 * (assets-liabs)/liabs
Note: health ratio is technically ∞ if liabs are 0
Parameters
group: Group
healthType: HealthType
Returns I80F48
health ratio, in percentage form
-
get Health Ratio Ui
-
+
get Health Ratio Ui
-
Health ratio
Parameters
group: Group
healthType: HealthType
Returns number
health ratio, in percentage form, capped to 100
-
get Liabs Value
-
+
get Liabs Value
get Max Base For Perp Ask Ui
-
+
get Max Base For Perp Ask Ui
-
TODO: also think about limit orders
The max ui base you can place a market/ioc ask on the market,
price is the ui price at which you think the order would materialiase.
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
Returns number
max ui base ask
-
get Max Base For Serum3 Ask Ui
-
+
get Max Base For Serum3 Ask Ui
-
TODO REWORK, know to break in binary search, also make work for limit orders
Parameters
group: Group
externalMarketPk: PublicKey
Returns number
maximum ui base which can be traded at oracle price for quote token given current health
-
get Max Fees Buyback
Parameters
group: Group
Returns BN
get Max Fees Buyback Ui
Parameters
group: Group
Returns number
get Max Quote For Perp Bid Ui
-
+
get Max Fees Buyback
Parameters
group: Group
Returns BN
get Max Fees Buyback Ui
Parameters
group: Group
Returns number
get Max Quote For Perp Bid Ui
-
TODO: also think about limit orders
The max ui quote you can place a market/ioc bid on the market,
price is the ui price at which you think the order would materialiase.
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
Returns number
maximum ui quote which can be traded at oracle price for quote token given current health
-
get Max Quote For Serum3 Bid Ui
-
+
get Max Quote For Serum3 Bid Ui
-
TODO REWORK, know to break in binary search, also make work for limit orders
Parameters
group: Group
externalMarketPk: PublicKey
Returns number
maximum ui quote which can be traded at oracle price for base token given current health
-
get Max Source Ui For Token Swap
-
+
get Max Source Ui For Token Swap
-
The max amount of given source ui token you can swap to a target token.
Parameters
group: Group
sourceMintPk: PublicKey
targetMintPk: PublicKey
slippageAndFeesFactor: number = 1
Returns number
max amount of given source ui token you can swap to a target token, in ui token
-
get Max Withdraw With Borrow For Token
-
+
get Max Withdraw With Borrow For Token
-
The amount of given native token you can withdraw including borrows, considering all existing assets as collateral.
Parameters
group: Group
mintPk: PublicKey
Returns I80F48
amount of given native token you can borrow, considering all existing assets as collateral, in native token
TODO: take into account net_borrow_limit and min_vault_to_deposits_ratio
TODO: see max_borrow_for_health_fn
-
get Max Withdraw With Borrow For Token Ui
Parameters
group: Group
mintPk: PublicKey
Returns number
get Perp Position
Parameters
perpMarketIndex: PerpMarketIndex
Returns undefined | PerpPosition
get Perp Position Ui
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
Optional useEventQueue: boolean
Returns number
get Pnl
get Max Withdraw With Borrow For Token Ui
Parameters
group: Group
mintPk: PublicKey
Returns number
get Perp Position
Parameters
perpMarketIndex: PerpMarketIndex
Returns undefined | PerpPosition
get Perp Position Ui
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
Optional useEventQueue: boolean
Returns number
get Pnl
Parameters
group: Group
Returns I80F48
Overall PNL, in native quote
PNL is defined here as spot value + serum3 open orders value + perp value - net deposits value (evaluated at native quote price at the time of the deposit/withdraw)
spot value + serum3 open orders value + perp value is returned by getEquity (open orders values are added to spot token values implicitly)
-
get Serum3 Account
Parameters
marketIndex: MarketIndex
Returns undefined | Serum3Orders
get Serum3 Oo Account
Parameters
marketIndex: MarketIndex
Returns OpenOrders
get Token
Parameters
tokenIndex: TokenIndex
Returns undefined | TokenPosition
get Token Balance
get Token Balance Ui
Parameters
bank: Bank
Returns number
UI balance for a token, is signed
-
get Token Borrows
get Token Borrows Ui
Parameters
bank: Bank
Returns number
UI borrows for a token, 0 or less
-
get Token Deposits
get Token Deposits Ui
Parameters
bank: Bank
Returns number
UI deposits for a token, 0 or more
-
is Delegate
Parameters
client: MangoClient
Returns boolean
is Operational
Returns boolean
load Perp Open Orders For Market
Parameters
client: MangoClient
group: Group
perpMarketIndex: PerpMarketIndex
Optional forceReload: boolean
Returns Promise<PerpOrder[]>
load Serum3 Open Orders
Parameters
serum3OosMapByOo: Map<string, OpenOrders>
Returns void
load Serum3 Open Orders Accounts
Parameters
client: MangoClient
Returns Promise<OpenOrders[]>
load Serum3 Open Orders For Market
Parameters
client: MangoClient
group: Group
externalMarketPk: PublicKey
Returns Promise<Order[]>
perp Active
Returns PerpPosition[]
perp Max Settle
Parameters
group: Group
perpMarketSettleTokenIndex: TokenIndex
Returns I80F48
perp Order Exists For Market
Parameters
perpMarket: PerpMarket
Returns boolean
perp Orders Active
Returns PerpOo[]
perp Position Exists For Market
Parameters
perpMarket: PerpMarket
Returns boolean
reload
Parameters
client: MangoClient
Returns Promise<MangoAccount>
reload Serum3 Open Orders
Parameters
client: MangoClient
Returns Promise<MangoAccount>
reload With Slot
Parameters
client: MangoClient
Returns Promise<{ slot: number; value: MangoAccount }>
serum3 Active
Returns Serum3Orders[]
serum3 Cancel All Orders For All Markets
Parameters
client: MangoClient
group: Group
Returns Promise<MangoSignatureStatus[]>
serum3 Settle Funds For All Markets
Parameters
client: MangoClient
group: Group
Returns Promise<MangoSignatureStatus[]>
sim Health Ratio With Perp Ask Ui Changes
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
size: number
healthType: HealthType = HealthType.init
Returns number
sim Health Ratio With Perp Bid Ui Changes
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
size: number
healthType: HealthType = HealthType.init
Returns number
sim Health Ratio With Serum3 Ask Ui Changes
Parameters
group: Group
uiBaseAmount: number
externalMarketPk: PublicKey
healthType: HealthType = HealthType.init
Returns number
health ratio after an ask with uiBaseAmount is placed
-
sim Health Ratio With Serum3 Bid Ui Changes
Parameters
group: Group
uiQuoteAmount: number
externalMarketPk: PublicKey
healthType: HealthType = HealthType.init
Returns number
health ratio after a bid with uiQuoteAmount is placed
-
sim Health Ratio With Token Position Ui Changes
-
+
get Serum3 Account
Parameters
marketIndex: MarketIndex
Returns undefined | Serum3Orders
get Serum3 Oo Account
Parameters
marketIndex: MarketIndex
Returns OpenOrders
get Token
Parameters
tokenIndex: TokenIndex
Returns undefined | TokenPosition
get Token Balance
get Token Balance Ui
Parameters
bank: Bank
Returns number
UI balance for a token, is signed
+
get Token Borrows
get Token Borrows Ui
Parameters
bank: Bank
Returns number
UI borrows for a token, 0 or less
+
get Token Deposits
get Token Deposits Ui
Parameters
bank: Bank
Returns number
UI deposits for a token, 0 or more
+
is Delegate
Parameters
client: MangoClient
Returns boolean
is Operational
Returns boolean
load Perp Open Orders For Market
Parameters
client: MangoClient
group: Group
perpMarketIndex: PerpMarketIndex
Optional forceReload: boolean
Returns Promise<PerpOrder[]>
load Serum3 Open Orders
Parameters
serum3OosMapByOo: Map<string, OpenOrders>
Returns void
load Serum3 Open Orders Accounts
Parameters
client: MangoClient
Returns Promise<OpenOrders[]>
load Serum3 Open Orders For Market
Parameters
client: MangoClient
group: Group
externalMarketPk: PublicKey
Returns Promise<Order[]>
perp Active
Returns PerpPosition[]
perp Max Settle
Parameters
group: Group
perpMarketSettleTokenIndex: TokenIndex
Returns I80F48
perp Order Exists For Market
Parameters
perpMarket: PerpMarket
Returns boolean
perp Orders Active
Returns PerpOo[]
perp Position Exists For Market
Parameters
perpMarket: PerpMarket
Returns boolean
reload
Parameters
client: MangoClient
Returns Promise<MangoAccount>
reload Serum3 Open Orders
Parameters
client: MangoClient
Returns Promise<MangoAccount>
reload With Slot
Parameters
client: MangoClient
Returns Promise<{ slot: number; value: MangoAccount }>
serum3 Active
Returns Serum3Orders[]
serum3 Cancel All Orders For All Markets
Parameters
client: MangoClient
group: Group
Returns Promise<MangoSignatureStatus[]>
serum3 Settle Funds For All Markets
Parameters
client: MangoClient
group: Group
Returns Promise<MangoSignatureStatus[]>
sim Health Ratio With Perp Ask Ui Changes
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
size: number
healthType: HealthType = HealthType.init
Returns number
sim Health Ratio With Perp Bid Ui Changes
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
size: number
healthType: HealthType = HealthType.init
Returns number
sim Health Ratio With Serum3 Ask Ui Changes
Parameters
group: Group
uiBaseAmount: number
externalMarketPk: PublicKey
healthType: HealthType = HealthType.init
Returns number
health ratio after an ask with uiBaseAmount is placed
+
sim Health Ratio With Serum3 Bid Ui Changes
Parameters
group: Group
uiQuoteAmount: number
externalMarketPk: PublicKey
healthType: HealthType = HealthType.init
Returns number
health ratio after a bid with uiQuoteAmount is placed
+
sim Health Ratio With Token Position Ui Changes
-
Simulates new health ratio after applying tokenChanges to the token positions.
Note: token changes are expected in ui amounts
e.g. useful to simulate health after a potential swap.
Note: health ratio is technically ∞ if liabs are 0
Parameters
group: Group
uiTokenChanges: { mintPk: PublicKey; uiTokenAmount: number }[]
healthType: HealthType = HealthType.init
Returns number
health ratio, in percentage form
-
to String
Parameters
Optional group: Group
onlyTokens: boolean = false
Returns string
token Conditional Swaps Active
Returns TokenConditionalSwap[]
token Positions For Not Confident Or Stale Oracles
Parameters
client: MangoClient
group: Group
Returns Promise<Bank[]>
tokens Active
Returns TokenPosition[]
Static from
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 }
account Num: number
being Liquidated: number
buyback Fees Accrued Current: BN
buyback Fees Accrued Previous: BN
buyback Fees Expiry Timestamp: BN
delegate: PublicKey
frozen Until: BN
group: PublicKey
header Version: number
health Region Begin Init Health: BN
in Health Region: number
name: number[]
net Deposits: BN
owner: PublicKey
perp Open Orders: unknown
perp Spot Transfers: BN
perps: unknown
serum3: unknown
token Conditional Swaps: unknown
tokens: unknown
Returns MangoAccount
Generated using TypeDoc
\ No newline at end of file
+
to String
Parameters
Optional group: Group
onlyTokens: boolean = false
Returns string
token Conditional Swaps Active
Returns TokenConditionalSwap[]
token Positions For Not Confident Or Stale Oracles
Parameters
client: MangoClient
group: Group
Returns Promise<Bank[]>
tokens Active
Returns TokenPosition[]
Static from
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 }
account Num: number
being Liquidated: number
buyback Fees Accrued Current: BN
buyback Fees Accrued Previous: BN
buyback Fees Expiry Timestamp: BN
delegate: PublicKey
frozen Until: BN
group: PublicKey
header Version: number
health Region Begin Init Health: BN
in Health Region: number
name: number[]
net Deposits: BN
owner: PublicKey
perp Open Orders: unknown
perp Spot Transfers: BN
perps: unknown
serum3: unknown
token Conditional Swaps: 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 121845f83..f6a4aae56 100644
--- a/ts/client/classes/MangoClient.html
+++ b/ts/client/classes/MangoClient.html
@@ -1,4 +1,4 @@
-MangoClient | @blockworks-foundation/mango-v4 Class MangoClient
Hierarchy
- MangoClient
Index
Constructors
Properties
Accessors
Methods
- account
Buyback Fees With Mngo - account
Buyback Fees With Mngo Ix - account
Expand V2 - account
Expand V2 Ix - admin
Perp Withdraw Fees - admin
Token Withdraw Fees - alt
Extend - alt
Set - build
Health Remaining Accounts - close
Mango Account - create
Mango Account - edit
Mango Account - empty
And Close Mango Account - estimate
Prioritization Fee - expand
Mango Account - get
All Mango Accounts - get
Banks For Group - get
Group - get
Group For Creator - get
Groups For Creator - get
Ids - get
Mango Account - get
Mango Account For Owner - get
Mango Account From Ai - get
Mango Account From Pk - get
Mango Account With Slot - get
Mango Accounts For Delegate - get
Mango Accounts For Owner - get
Mint Info For Token Index - get
Mint Infos For Group - get
Stub Oracle - group
Close - group
Create - group
Edit - health
Region Begin Ix - health
Region End Ix - ix
Gate Set - liq
Token With Token - margin
Trade - modify
Perp Order - modify
Serum3 Order - perp
Cancel All Orders - perp
Cancel All Orders Ix - perp
Cancel Order - perp
Cancel Order By Client Order Id Ix - perp
Cancel Order Ix - perp
Close All - perp
Close Market - perp
Consume All Events - perp
Consume Events - perp
Consume Events Ix - perp
Create Market - perp
Deactivate Position - perp
Deactivate Position Ix - perp
Edit Market - perp
Force Close Position - perp
Get Markets - perp
Place Order - perp
Place Order Ix - perp
Place Order Pegged - perp
Place Order Pegged Ix - perp
Place Order Pegged V2 Ix - perp
Place Order V2 Ix - perp
Settle Fees - perp
Settle Fees Ix - perp
Settle Pnl - perp
Settle Pnl And Fees - perp
Settle Pnl Ix - perp
Update Funding Ix - send
And Confirm Transaction - send
And Confirm Transaction For Group - send
And Confirm Transaction Single - serum3
Cancel All Orders - serum3
Cancel All Orders Ix - serum3
Cancel Order - serum3
Cancel Order By Client Id - serum3
Cancel Order By Client Id Ix - serum3
Cancel Order Ix - serum3
Close Open Orders - serum3
Close Open Orders Ix - serum3
Consume Events - serum3
Create Open Orders - serum3
Create Open Orders Ix - serum3
Edit Market - serum3
Get Markets - serum3
Liq Force Cancel Orders - serum3
Place Order - serum3
Place Order Ix - serum3
Place Order V1 Ix - serum3
Place Order V2 Ix - serum3
Register Market - serum3
Settle Funds - serum3
Settle Funds Ix - serum3
Settle Funds V2 Ix - serum3deregister
Market - settle
All - stub
Oracle Close - stub
Oracle Create - stub
Oracle Set - tcs
Stop Loss On Borrow - tcs
Stop Loss On Borrow Ix - tcs
Stop Loss On Deposit - tcs
Stop Loss On Deposit Ix - tcs
Take Profit On Borrow - tcs
Take Profit On Borrow Ix - tcs
Take Profit On Deposit - tcs
Take Profit On Deposit Ix - toggle
Mango Account Freeze - token
Conditional Swap Cancel - token
Conditional Swap Cancel All - token
Conditional Swap Cancel Ix - token
Conditional Swap Create - token
Conditional Swap Create Ix - token
Conditional Swap Create Linear Auction - token
Conditional Swap Create Linear Auction Ix - token
Conditional Swap Create Premium Auction - token
Conditional Swap Create Premium Auction Ix - token
Conditional Swap Create Raw - token
Conditional Swap Create Raw Ix - token
Conditional Swap Trigger - token
Conditional Swap Trigger Ix - token
Deposit - token
Deposit Native - token
Deregister - token
Edit - token
Force Close Borrows With Token - token
Register - token
Register Trustless - token
Update Index And Rate - token
Update Index And Rate Ix - token
Withdraw - token
Withdraw All Deposit For All Unconfident Or Stale Oracles - token
Withdraw All Deposit For Mint - token
Withdraw Native - token
Withdraw Native Ix - connect
- connect
Default - connect
For Group Name
Constructors
constructor
Parameters
program: Program<MangoV4>
programId: PublicKey
cluster: Cluster
opts: MangoClientOptions = {}
Returns MangoClient
Properties
cluster
Private estimate Fee
Private ids Source
Private multiple Providers
Private openbook Fees To Dao
opts
Private Optional post Send Tx Callback
Type declaration
Parameters
__namedParameters: Object
Returns void
Private prepended Global Additional Instructions
Private prioritization Fee
program
program Id
Private tx Confirmation Commitment
Accessors
connection
Returns Connection
wallet Pk
Returns PublicKey
Methods
account Buyback Fees With Mngo
Parameters
group: Group
mangoAccount: MangoAccount
Optional maxBuyback: number
Returns Promise<MangoSignatureStatus>
account Buyback Fees With Mngo Ix
Parameters
group: Group
mangoAccount: MangoAccount
Optional maxBuybackUsd: number
Returns Promise<TransactionInstruction>
account Expand V2
Parameters
group: Group
account: MangoAccount
tokenCount: number
serum3Count: number
perpCount: number
perpOoCount: number
tokenConditionalSwapCount: number
Returns Promise<MangoSignatureStatus>
account Expand V2 Ix
Parameters
group: Group
account: MangoAccount
tokenCount: number
serum3Count: number
perpCount: number
perpOoCount: number
tokenConditionalSwapCount: number
Returns Promise<TransactionInstruction>
admin Perp Withdraw Fees
Parameters
group: Group
perpMarket: PerpMarket
tokenAccountPk: PublicKey
Returns Promise<MangoSignatureStatus>
admin Token Withdraw Fees
Parameters
Returns Promise<MangoSignatureStatus>
alt Extend
Parameters
group: Group
addressLookupTable: PublicKey
index: number
pks: PublicKey[]
Returns Promise<MangoSignatureStatus>
alt Set
Parameters
group: Group
addressLookupTable: PublicKey
index: number
Returns Promise<MangoSignatureStatus>
build Health Remaining Accounts
-
+
MangoClient | @blockworks-foundation/mango-v4 Class MangoClient
Hierarchy
- MangoClient
Index
Constructors
Properties
Accessors
Methods
- account
Buyback Fees With Mngo - account
Buyback Fees With Mngo Ix - account
Expand V2 - account
Expand V2 Ix - admin
Perp Withdraw Fees - admin
Token Withdraw Fees - alt
Extend - alt
Set - build
Health Remaining Accounts - close
Mango Account - create
Mango Account - edit
Mango Account - empty
And Close Mango Account - estimate
Prioritization Fee - expand
Mango Account - get
All Mango Accounts - get
Banks For Group - get
Group - get
Group For Creator - get
Groups For Creator - get
Ids - get
Mango Account - get
Mango Account For Owner - get
Mango Account From Ai - get
Mango Account From Pk - get
Mango Account With Slot - get
Mango Accounts For Delegate - get
Mango Accounts For Owner - get
Mint Info For Token Index - get
Mint Infos For Group - get
Stub Oracle - group
Close - group
Create - group
Edit - health
Region Begin Ix - health
Region End Ix - ix
Gate Set - liq
Token With Token - margin
Trade - modify
Perp Order - modify
Serum3 Order - perp
Cancel All Orders - perp
Cancel All Orders Ix - perp
Cancel Order - perp
Cancel Order By Client Order Id Ix - perp
Cancel Order Ix - perp
Close All - perp
Close Market - perp
Consume All Events - perp
Consume Events - perp
Consume Events Ix - perp
Create Market - perp
Deactivate Position - perp
Deactivate Position Ix - perp
Edit Market - perp
Force Close Position - perp
Get Markets - perp
Place Order - perp
Place Order Ix - perp
Place Order Pegged - perp
Place Order Pegged Ix - perp
Place Order Pegged V2 Ix - perp
Place Order V2 Ix - perp
Settle Fees - perp
Settle Fees Ix - perp
Settle Pnl - perp
Settle Pnl And Fees - perp
Settle Pnl Ix - perp
Update Funding Ix - send
And Confirm Transaction - send
And Confirm Transaction For Group - send
And Confirm Transaction Single - serum3
Cancel All Orders - serum3
Cancel All Orders Ix - serum3
Cancel Order - serum3
Cancel Order By Client Id - serum3
Cancel Order By Client Id Ix - serum3
Cancel Order Ix - serum3
Close Open Orders - serum3
Close Open Orders Ix - serum3
Consume Events - serum3
Create Open Orders - serum3
Create Open Orders Ix - serum3
Edit Market - serum3
Get Markets - serum3
Liq Force Cancel Orders - serum3
Place Order - serum3
Place Order Ix - serum3
Place Order V1 Ix - serum3
Place Order V2 Ix - serum3
Register Market - serum3
Settle Funds - serum3
Settle Funds Ix - serum3
Settle Funds V2 Ix - serum3deregister
Market - settle
All - stub
Oracle Close - stub
Oracle Create - stub
Oracle Set - tcs
Stop Loss On Borrow - tcs
Stop Loss On Borrow Ix - tcs
Stop Loss On Deposit - tcs
Stop Loss On Deposit Ix - tcs
Take Profit On Borrow - tcs
Take Profit On Borrow Ix - tcs
Take Profit On Deposit - tcs
Take Profit On Deposit Ix - toggle
Mango Account Freeze - token
Conditional Swap Cancel - token
Conditional Swap Cancel All - token
Conditional Swap Cancel Ix - token
Conditional Swap Create - token
Conditional Swap Create Ix - token
Conditional Swap Create Linear Auction - token
Conditional Swap Create Linear Auction Ix - token
Conditional Swap Create Premium Auction - token
Conditional Swap Create Premium Auction Ix - token
Conditional Swap Create Raw - token
Conditional Swap Create Raw Ix - token
Conditional Swap Trigger - token
Conditional Swap Trigger Ix - token
Deposit - token
Deposit Native - token
Deregister - token
Edit - token
Force Close Borrows With Token - token
Register - token
Register Trustless - token
Update Index And Rate - token
Update Index And Rate Ix - token
Withdraw - token
Withdraw All Deposit For All Unconfident Or Stale Oracles - token
Withdraw All Deposit For Mint - token
Withdraw Native - token
Withdraw Native Ix - connect
- connect
Default - connect
For Group Name
Constructors
constructor
Parameters
program: Program<MangoV4>
programId: PublicKey
cluster: Cluster
opts: MangoClientOptions = {}
Returns MangoClient
Properties
cluster
Private estimate Fee
Private ids Source
Private multiple Providers
Private openbook Fees To Dao
opts
Private Optional post Send Tx Callback
Type declaration
Parameters
__namedParameters: Object
Returns void
Private prepended Global Additional Instructions
Private prioritization Fee
program
program Id
Private tx Confirmation Commitment
Accessors
connection
Returns Connection
wallet Pk
Returns PublicKey
Methods
account Buyback Fees With Mngo
Parameters
group: Group
mangoAccount: MangoAccount
Optional maxBuyback: number
Returns Promise<MangoSignatureStatus>
account Buyback Fees With Mngo Ix
Parameters
group: Group
mangoAccount: MangoAccount
Optional maxBuybackUsd: number
Returns Promise<TransactionInstruction>
account Expand V2
Parameters
group: Group
account: MangoAccount
tokenCount: number
serum3Count: number
perpCount: number
perpOoCount: number
tokenConditionalSwapCount: number
Returns Promise<MangoSignatureStatus>
account Expand V2 Ix
Parameters
group: Group
account: MangoAccount
tokenCount: number
serum3Count: number
perpCount: number
perpOoCount: number
tokenConditionalSwapCount: number
Returns Promise<TransactionInstruction>
admin Perp Withdraw Fees
Parameters
group: Group
perpMarket: PerpMarket
tokenAccountPk: PublicKey
Returns Promise<MangoSignatureStatus>
admin Token Withdraw Fees
Parameters
Returns Promise<MangoSignatureStatus>
alt Extend
Parameters
group: Group
addressLookupTable: PublicKey
index: number
pks: PublicKey[]
Returns Promise<MangoSignatureStatus>
alt Set
Parameters
group: Group
addressLookupTable: PublicKey
index: number
Returns Promise<MangoSignatureStatus>
build Health Remaining Accounts
-
Builds health remaining accounts.
For single mango account it builds a list of PublicKeys
which is compatbile with Fixed account retriever.
@@ -11,19 +11,19 @@ should always be compatible with Scanning account retriever.
markets in which new positions might be opened
openOrdersForMarket: [Serum3Market, PublicKey][] = []
markets in which new positions might be opened
-
Returns PublicKey[]
close Mango Account
-
+
Returns PublicKey[]
close Mango Account
-
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
group: Group
mangoAccount: MangoAccount
forceClose: boolean = false
Returns Promise<MangoSignatureStatus>
create Mango Account
Parameters
group: Group
Optional accountNumber: number
Optional name: string
Optional tokenCount: number
Optional serum3Count: number
Optional perpCount: number
Optional perpOoCount: number
Returns Promise<MangoSignatureStatus>
edit Mango Account
Parameters
group: Group
mangoAccount: MangoAccount
Optional name: string
Optional delegate: PublicKey
Optional temporaryDelegate: PublicKey
Optional delegateExpiry: number
Returns Promise<MangoSignatureStatus>
empty And Close Mango Account
Parameters
group: Group
mangoAccount: MangoAccount
Returns Promise<MangoSignatureStatus>
estimate Prioritization Fee
-
+
Parameters
group: Group
mangoAccount: MangoAccount
forceClose: boolean = false
Returns Promise<MangoSignatureStatus>
create Mango Account
Parameters
group: Group
Optional accountNumber: number
Optional name: string
Optional tokenCount: number
Optional serum3Count: number
Optional perpCount: number
Optional perpOoCount: number
Returns Promise<MangoSignatureStatus>
edit Mango Account
Parameters
group: Group
mangoAccount: MangoAccount
Optional name: string
Optional delegate: PublicKey
Optional temporaryDelegate: PublicKey
Optional delegateExpiry: number
Returns Promise<MangoSignatureStatus>
empty And Close Mango Account
Parameters
group: Group
mangoAccount: MangoAccount
Returns Promise<MangoSignatureStatus>
estimate Prioritization Fee
-
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
-
expand Mango Account
Parameters
group: Group
account: MangoAccount
tokenCount: number
serum3Count: number
perpCount: number
perpOoCount: number
Returns Promise<MangoSignatureStatus>
get All Mango Accounts
Parameters
group: Group
loadSerum3Oo: boolean = false
Returns Promise<MangoAccount[]>
get Banks For Group
get Group
Parameters
groupPk: PublicKey
Returns Promise<Group>
get Group For Creator
Parameters
creatorPk: PublicKey
groupNum: number
Returns Promise<Group>
get Groups For Creator
Parameters
creatorPk: PublicKey
Returns Promise<Group[]>
get Ids
Parameters
groupPk: PublicKey
Returns Promise<undefined | Id>
get Mango Account
Parameters
mangoAccountPk: PublicKey
loadSerum3Oo: boolean = false
Returns Promise<MangoAccount>
get Mango Account For Owner
Parameters
group: Group
ownerPk: PublicKey
accountNumber: number
loadSerum3Oo: boolean = false
Returns Promise<undefined | MangoAccount>
get Mango Account From Ai
Parameters
mangoAccountPk: PublicKey
ai: AccountInfo<Buffer>
Returns MangoAccount
Private get Mango Account From Pk
Parameters
mangoAccountPk: PublicKey
Returns Promise<MangoAccount>
get Mango Account With Slot
Parameters
mangoAccountPk: PublicKey
loadSerum3Oo: boolean = false
Returns Promise<undefined | { slot: number; value: MangoAccount }>
get Mango Accounts For Delegate
Parameters
group: Group
delegate: PublicKey
loadSerum3Oo: boolean = false
Returns Promise<MangoAccount[]>
get Mango Accounts For Owner
Parameters
group: Group
ownerPk: PublicKey
loadSerum3Oo: boolean = false
Returns Promise<MangoAccount[]>
get Mint Info For Token Index
Parameters
group: Group
tokenIndex: TokenIndex
Returns Promise<MintInfo[]>
get Mint Infos For Group
get Stub Oracle
Parameters
group: Group
Optional mintPk: PublicKey
Returns Promise<StubOracle[]>
group Close
Parameters
group: Group
Returns Promise<MangoSignatureStatus>
group Create
Parameters
groupNum: number
testing: boolean
version: number
insuranceMintPk: PublicKey
Returns Promise<MangoSignatureStatus>
group Edit
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>
health Region Begin Ix
Parameters
group: Group
account: MangoAccount
banks: Bank[] = []
perpMarkets: PerpMarket[] = []
Returns Promise<TransactionInstruction>
health Region End Ix
Parameters
group: Group
account: MangoAccount
banks: Bank[] = []
perpMarkets: PerpMarket[] = []
Returns Promise<TransactionInstruction>
ix Gate Set
Parameters
group: Group
ixGateParams: IxGateParams
Returns Promise<MangoSignatureStatus>
liq Token With Token
Parameters
group: Group
liqor: MangoAccount
liqee: MangoAccount
assetMintPk: PublicKey
liabMintPk: PublicKey
maxLiabTransfer: number
Returns Promise<MangoSignatureStatus>
margin Trade
Parameters
__namedParameters: { amountIn: number; flashLoanType: FlashLoanType; group: Group; inputMintPk: PublicKey; mangoAccount: MangoAccount; outputMintPk: PublicKey; userDefinedAlts: AddressLookupTableAccount[]; userDefinedInstructions: TransactionInstruction[] }
amount In: number
flash Loan Type: FlashLoanType
group: Group
input Mint Pk: PublicKey
mango Account: MangoAccount
output Mint Pk: PublicKey
user Defined Alts: AddressLookupTableAccount[]
user Defined Instructions: TransactionInstruction[]
Returns Promise<MangoSignatureStatus>
modify Perp Order
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
orderId: BN
side: PerpOrderSide
price: number
quantity: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<MangoSignatureStatus>
modify Serum3 Order
Parameters
group: Group
orderId: BN
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<MangoSignatureStatus>
perp Cancel All Orders
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
limit: number
Returns Promise<MangoSignatureStatus>
perp Cancel All Orders Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
limit: number
Returns Promise<TransactionInstruction>
perp Cancel Order
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
orderId: BN
Returns Promise<MangoSignatureStatus>
perp Cancel Order By Client Order Id Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
clientOrderId: BN
Returns Promise<TransactionInstruction>
perp Cancel Order Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
orderId: BN
Returns Promise<TransactionInstruction>
perp Close All
Parameters
group: Group
mangoAccount: MangoAccount
slippage: number = 0.01
Returns Promise<MangoSignatureStatus>
perp Close Market
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
Returns Promise<MangoSignatureStatus>
perp Consume All Events
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
Returns Promise<void>
perp Consume Events
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
accounts: PublicKey[]
limit: number
Returns Promise<MangoSignatureStatus>
perp Consume Events Ix
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
accounts: PublicKey[]
limit: number
Returns Promise<TransactionInstruction>
perp Create Market
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
Returns Promise<MangoSignatureStatus>
perp Deactivate Position
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
Returns Promise<MangoSignatureStatus>
perp Deactivate Position Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
Returns Promise<TransactionInstruction>
perp Edit Market
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
params: PerpEditParams
Returns Promise<MangoSignatureStatus>
perp Force Close Position
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
accountA: MangoAccount
accountB: MangoAccount
Returns Promise<MangoSignatureStatus>
perp Get Markets
Parameters
group: Group
Returns Promise<PerpMarket[]>
perp Place Order
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
price: number
quantity: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<MangoSignatureStatus>
perp Place Order Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
price: number
quantity: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<TransactionInstruction>
perp Place Order Pegged
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
priceOffset: number
quantity: number
Optional pegLimit: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<MangoSignatureStatus>
perp Place Order Pegged Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
priceOffset: number
quantity: number
Optional pegLimit: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<TransactionInstruction>
perp Place Order Pegged V2 Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
priceOffset: number
quantity: number
Optional pegLimit: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional selfTradeBehavior: PerpSelfTradeBehavior
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<TransactionInstruction>
perp Place Order V2 Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
price: number
quantity: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional selfTradeBehavior: PerpSelfTradeBehavior
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<TransactionInstruction>
perp Settle Fees
Parameters
group: Group
account: MangoAccount
perpMarketIndex: PerpMarketIndex
Optional maxSettleAmount: number
Returns Promise<MangoSignatureStatus>
perp Settle Fees Ix
Parameters
group: Group
account: MangoAccount
perpMarketIndex: PerpMarketIndex
Optional maxSettleAmount: number
Returns Promise<TransactionInstruction>
perp Settle Pnl
Parameters
group: Group
profitableAccount: MangoAccount
unprofitableAccount: MangoAccount
settler: MangoAccount
perpMarketIndex: PerpMarketIndex
Returns Promise<MangoSignatureStatus>
perp Settle Pnl And Fees
Parameters
group: Group
profitableAccount: MangoAccount
unprofitableAccount: MangoAccount
accountToSettleFeesFor: MangoAccount
settler: MangoAccount
perpMarketIndex: PerpMarketIndex
Optional maxSettleAmount: number
Returns Promise<MangoSignatureStatus>
perp Settle Pnl Ix
Parameters
group: Group
profitableAccount: MangoAccount
unprofitableAccount: MangoAccount
settler: MangoAccount
perpMarketIndex: PerpMarketIndex
Returns Promise<TransactionInstruction>
perp Update Funding Ix
Parameters
group: Group
perpMarket: PerpMarket
Returns Promise<TransactionInstruction>
send And Confirm Transaction
Parameters
ixs: TransactionInstruction[]
opts: any = {}
Returns Promise<MangoSignatureStatus>
send And Confirm Transaction For Group
Parameters
group: Group
ixs: TransactionInstruction[]
opts: any = {}
Returns Promise<MangoSignatureStatus>
send And Confirm Transaction Single
Parameters
ixs: TransactionInstruction[]
opts: any = {}
Returns Promise<MangoSignatureStatus>
serum3 Cancel All Orders
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Optional limit: number
Returns Promise<MangoSignatureStatus>
serum3 Cancel All Orders Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Optional limit: number
Returns Promise<TransactionInstruction>
serum3 Cancel Order
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
orderId: BN
Returns Promise<MangoSignatureStatus>
serum3 Cancel Order By Client Id
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
clientOrderId: BN
Returns Promise<MangoSignatureStatus>
serum3 Cancel Order By Client Id Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
clientOrderId: BN
Returns Promise<TransactionInstruction>
serum3 Cancel Order Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
orderId: BN
Returns Promise<TransactionInstruction>
serum3 Close Open Orders
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<MangoSignatureStatus>
serum3 Close Open Orders Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<TransactionInstruction>
serum3 Consume Events
Parameters
group: Group
serum3MarketExternalPk: PublicKey
Returns Promise<MangoSignatureStatus>
serum3 Create Open Orders
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<MangoSignatureStatus>
serum3 Create Open Orders Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<TransactionInstruction>
serum3 Edit Market
Parameters
group: Group
serum3MarketIndex: MarketIndex
reduceOnly: null | boolean
forceClose: null | boolean
name: null | string
oraclePriceBand: null | number
Returns Promise<MangoSignatureStatus>
serum3 Get Markets
Parameters
group: Group
Optional baseTokenIndex: number
Optional quoteTokenIndex: number
Returns Promise<Serum3Market[]>
serum3 Liq Force Cancel Orders
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Optional limit: number
Returns Promise<MangoSignatureStatus>
serum3 Place Order
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<MangoSignatureStatus>
serum3 Place Order Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<TransactionInstruction[]>
serum3 Place Order V1 Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<TransactionInstruction[]>
serum3 Place Order V2 Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<TransactionInstruction[]>
serum3 Register Market
Parameters
group: Group
serum3MarketExternalPk: PublicKey
baseBank: Bank
quoteBank: Bank
marketIndex: number
name: string
oraclePriceBand: number
Returns Promise<MangoSignatureStatus>
serum3 Settle Funds
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<MangoSignatureStatus>
serum3 Settle Funds Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<TransactionInstruction>
serum3 Settle Funds V2 Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<TransactionInstruction>
serum3deregister Market
Parameters
group: Group
externalMarketPk: PublicKey
Returns Promise<MangoSignatureStatus>
settle All
Parameters
client: MangoClient
group: Group
mangoAccount: MangoAccount
Optional allMangoAccounts: MangoAccount[]
Returns Promise<MangoSignatureStatus>
stub Oracle Close
Parameters
group: Group
oracle: PublicKey
Returns Promise<MangoSignatureStatus>
stub Oracle Create
Parameters
group: Group
mintPk: PublicKey
price: number
Returns Promise<MangoSignatureStatus>
stub Oracle Set
Parameters
group: Group
oraclePk: PublicKey
price: number
Returns Promise<MangoSignatureStatus>
tcs Stop Loss On Borrow
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<MangoSignatureStatus>
tcs Stop Loss On Borrow Ix
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[]>
tcs Stop Loss On Deposit
Parameters
group: Group
account: MangoAccount
sellBank: Bank
buyBank: Bank
thresholdPrice: number
thresholdPriceInSellPerBuyToken: boolean
maxSell: null | number
pricePremium: null | number
expiryTimestamp: null | number
Returns Promise<MangoSignatureStatus>
tcs Stop Loss On Deposit Ix
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[]>
tcs Take Profit On Borrow
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<MangoSignatureStatus>
tcs Take Profit On Borrow Ix
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[]>
tcs Take Profit On Deposit
Parameters
group: Group
account: MangoAccount
sellBank: Bank
buyBank: Bank
thresholdPrice: number
thresholdPriceInSellPerBuyToken: boolean
maxSell: null | number
pricePremium: null | number
expiryTimestamp: null | number
Returns Promise<MangoSignatureStatus>
tcs Take Profit On Deposit Ix
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[]>
toggle Mango Account Freeze
Parameters
group: Group
mangoAccount: MangoAccount
freeze: boolean
Returns Promise<MangoSignatureStatus>
token Conditional Swap Cancel
Parameters
group: Group
account: MangoAccount
tokenConditionalSwapId: BN
Returns Promise<MangoSignatureStatus>
token Conditional Swap Cancel All
Parameters
group: Group
account: MangoAccount
Returns Promise<MangoSignatureStatus>
token Conditional Swap Cancel Ix
Parameters
group: Group
account: MangoAccount
tokenConditionalSwapId: BN
Returns Promise<TransactionInstruction>
token Conditional Swap Create
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>
token Conditional Swap Create Ix
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[]>
token Conditional Swap Create Linear Auction
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>
token Conditional Swap Create Linear Auction Ix
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[]>
token Conditional Swap Create Premium Auction
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>
token Conditional Swap Create Premium Auction Ix
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[]>
token Conditional Swap Create Raw
Parameters
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
Returns Promise<MangoSignatureStatus>
token Conditional Swap Create Raw Ix
Parameters
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
Returns Promise<TransactionInstruction[]>
token Conditional Swap Trigger
Parameters
group: Group
liqee: MangoAccount
liqor: MangoAccount
tokenConditionalSwapId: BN
maxBuyTokenToLiqee: number
maxSellTokenToLiqor: number
Returns Promise<MangoSignatureStatus>
token Conditional Swap Trigger Ix
Parameters
group: Group
liqee: MangoAccount
liqor: MangoAccount
tokenConditionalSwapId: BN
maxBuyTokenToLiqee: number
maxSellTokenToLiqor: number
Returns Promise<TransactionInstruction>
token Deposit
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
amount: number
reduceOnly: boolean = false
Returns Promise<MangoSignatureStatus>
token Deposit Native
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
nativeAmount: BN
reduceOnly: boolean = false
Returns Promise<MangoSignatureStatus>
token Deregister
Parameters
group: Group
mintPk: PublicKey
Returns Promise<MangoSignatureStatus>
token Edit
Parameters
group: Group
mintPk: PublicKey
params: TokenEditParams
Returns Promise<MangoSignatureStatus>
token Force Close Borrows With Token
Parameters
group: Group
liqor: MangoAccount
liqee: MangoAccount
assetTokenIndex: TokenIndex
liabTokenIndex: TokenIndex
Optional maxLiabTransfer: number
Returns Promise<MangoSignatureStatus>
token Register
Parameters
group: Group
mintPk: PublicKey
oraclePk: PublicKey
tokenIndex: number
name: string
params: TokenRegisterParams
Returns Promise<MangoSignatureStatus>
token Register Trustless
Parameters
group: Group
mintPk: PublicKey
oraclePk: PublicKey
tokenIndex: number
name: string
Returns Promise<MangoSignatureStatus>
token Update Index And Rate
Parameters
group: Group
mintPk: PublicKey
Returns Promise<MangoSignatureStatus>
token Update Index And Rate Ix
Parameters
group: Group
mintPk: PublicKey
Returns Promise<TransactionInstruction>
token Withdraw
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
amount: number
allowBorrow: boolean
Returns Promise<MangoSignatureStatus>
token Withdraw All Deposit For All Unconfident Or Stale Oracles
Parameters
group: Group
mangoAccount: MangoAccount
Returns Promise<MangoSignatureStatus>
token Withdraw All Deposit For Mint
-
+
expand Mango Account
Parameters
group: Group
account: MangoAccount
tokenCount: number
serum3Count: number
perpCount: number
perpOoCount: number
Returns Promise<MangoSignatureStatus>
get All Mango Accounts
Parameters
group: Group
loadSerum3Oo: boolean = false
Returns Promise<MangoAccount[]>
get Banks For Group
get Group
Parameters
groupPk: PublicKey
Returns Promise<Group>
get Group For Creator
Parameters
creatorPk: PublicKey
groupNum: number
Returns Promise<Group>
get Groups For Creator
Parameters
creatorPk: PublicKey
Returns Promise<Group[]>
get Ids
Parameters
groupPk: PublicKey
Returns Promise<undefined | Id>
get Mango Account
Parameters
mangoAccountPk: PublicKey
loadSerum3Oo: boolean = false
Returns Promise<MangoAccount>
get Mango Account For Owner
Parameters
group: Group
ownerPk: PublicKey
accountNumber: number
loadSerum3Oo: boolean = false
Returns Promise<undefined | MangoAccount>
get Mango Account From Ai
Parameters
mangoAccountPk: PublicKey
ai: AccountInfo<Buffer>
Returns MangoAccount
Private get Mango Account From Pk
Parameters
mangoAccountPk: PublicKey
Returns Promise<MangoAccount>
get Mango Account With Slot
Parameters
mangoAccountPk: PublicKey
loadSerum3Oo: boolean = false
Returns Promise<undefined | { slot: number; value: MangoAccount }>
get Mango Accounts For Delegate
Parameters
group: Group
delegate: PublicKey
loadSerum3Oo: boolean = false
Returns Promise<MangoAccount[]>
get Mango Accounts For Owner
Parameters
group: Group
ownerPk: PublicKey
loadSerum3Oo: boolean = false
Returns Promise<MangoAccount[]>
get Mint Info For Token Index
Parameters
group: Group
tokenIndex: TokenIndex
Returns Promise<MintInfo[]>
get Mint Infos For Group
get Stub Oracle
Parameters
group: Group
Optional mintPk: PublicKey
Returns Promise<StubOracle[]>
group Close
Parameters
group: Group
Returns Promise<MangoSignatureStatus>
group Create
Parameters
groupNum: number
testing: boolean
version: number
insuranceMintPk: PublicKey
Returns Promise<MangoSignatureStatus>
group Edit
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>
health Region Begin Ix
Parameters
group: Group
account: MangoAccount
banks: Bank[] = []
perpMarkets: PerpMarket[] = []
Returns Promise<TransactionInstruction>
health Region End Ix
Parameters
group: Group
account: MangoAccount
banks: Bank[] = []
perpMarkets: PerpMarket[] = []
Returns Promise<TransactionInstruction>
ix Gate Set
Parameters
group: Group
ixGateParams: IxGateParams
Returns Promise<MangoSignatureStatus>
liq Token With Token
Parameters
group: Group
liqor: MangoAccount
liqee: MangoAccount
assetMintPk: PublicKey
liabMintPk: PublicKey
maxLiabTransfer: number
Returns Promise<MangoSignatureStatus>
margin Trade
Parameters
__namedParameters: { amountIn: number; flashLoanType: FlashLoanType; group: Group; inputMintPk: PublicKey; mangoAccount: MangoAccount; outputMintPk: PublicKey; userDefinedAlts: AddressLookupTableAccount[]; userDefinedInstructions: TransactionInstruction[] }
amount In: number
flash Loan Type: FlashLoanType
group: Group
input Mint Pk: PublicKey
mango Account: MangoAccount
output Mint Pk: PublicKey
user Defined Alts: AddressLookupTableAccount[]
user Defined Instructions: TransactionInstruction[]
Returns Promise<MangoSignatureStatus>
modify Perp Order
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
orderId: BN
side: PerpOrderSide
price: number
quantity: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<MangoSignatureStatus>
modify Serum3 Order
Parameters
group: Group
orderId: BN
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<MangoSignatureStatus>
perp Cancel All Orders
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
limit: number
Returns Promise<MangoSignatureStatus>
perp Cancel All Orders Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
limit: number
Returns Promise<TransactionInstruction>
perp Cancel Order
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
orderId: BN
Returns Promise<MangoSignatureStatus>
perp Cancel Order By Client Order Id Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
clientOrderId: BN
Returns Promise<TransactionInstruction>
perp Cancel Order Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
orderId: BN
Returns Promise<TransactionInstruction>
perp Close All
Parameters
group: Group
mangoAccount: MangoAccount
slippage: number = 0.01
Returns Promise<MangoSignatureStatus>
perp Close Market
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
Returns Promise<MangoSignatureStatus>
perp Consume All Events
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
Returns Promise<void>
perp Consume Events
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
accounts: PublicKey[]
limit: number
Returns Promise<MangoSignatureStatus>
perp Consume Events Ix
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
accounts: PublicKey[]
limit: number
Returns Promise<TransactionInstruction>
perp Create Market
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
Returns Promise<MangoSignatureStatus>
perp Deactivate Position
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
Returns Promise<MangoSignatureStatus>
perp Deactivate Position Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
Returns Promise<TransactionInstruction>
perp Edit Market
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
params: PerpEditParams
Returns Promise<MangoSignatureStatus>
perp Force Close Position
Parameters
group: Group
perpMarketIndex: PerpMarketIndex
accountA: MangoAccount
accountB: MangoAccount
Returns Promise<MangoSignatureStatus>
perp Get Markets
Parameters
group: Group
Returns Promise<PerpMarket[]>
perp Place Order
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
price: number
quantity: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<MangoSignatureStatus>
perp Place Order Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
price: number
quantity: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<TransactionInstruction>
perp Place Order Pegged
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
priceOffset: number
quantity: number
Optional pegLimit: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<MangoSignatureStatus>
perp Place Order Pegged Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
priceOffset: number
quantity: number
Optional pegLimit: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<TransactionInstruction>
perp Place Order Pegged V2 Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
priceOffset: number
quantity: number
Optional pegLimit: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional selfTradeBehavior: PerpSelfTradeBehavior
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<TransactionInstruction>
perp Place Order V2 Ix
Parameters
group: Group
mangoAccount: MangoAccount
perpMarketIndex: PerpMarketIndex
side: PerpOrderSide
price: number
quantity: number
Optional maxQuoteQuantity: number
Optional clientOrderId: number
Optional orderType: PerpOrderType
Optional selfTradeBehavior: PerpSelfTradeBehavior
Optional reduceOnly: boolean
Optional expiryTimestamp: number
Optional limit: number
Returns Promise<TransactionInstruction>
perp Settle Fees
Parameters
group: Group
account: MangoAccount
perpMarketIndex: PerpMarketIndex
Optional maxSettleAmount: number
Returns Promise<MangoSignatureStatus>
perp Settle Fees Ix
Parameters
group: Group
account: MangoAccount
perpMarketIndex: PerpMarketIndex
Optional maxSettleAmount: number
Returns Promise<TransactionInstruction>
perp Settle Pnl
Parameters
group: Group
profitableAccount: MangoAccount
unprofitableAccount: MangoAccount
settler: MangoAccount
perpMarketIndex: PerpMarketIndex
Returns Promise<MangoSignatureStatus>
perp Settle Pnl And Fees
Parameters
group: Group
profitableAccount: MangoAccount
unprofitableAccount: MangoAccount
accountToSettleFeesFor: MangoAccount
settler: MangoAccount
perpMarketIndex: PerpMarketIndex
Optional maxSettleAmount: number
Returns Promise<MangoSignatureStatus>
perp Settle Pnl Ix
Parameters
group: Group
profitableAccount: MangoAccount
unprofitableAccount: MangoAccount
settler: MangoAccount
perpMarketIndex: PerpMarketIndex
Returns Promise<TransactionInstruction>
perp Update Funding Ix
Parameters
group: Group
perpMarket: PerpMarket
Returns Promise<TransactionInstruction>
send And Confirm Transaction
Parameters
ixs: TransactionInstruction[]
opts: any = {}
Returns Promise<MangoSignatureStatus>
send And Confirm Transaction For Group
Parameters
group: Group
ixs: TransactionInstruction[]
opts: any = {}
Returns Promise<MangoSignatureStatus>
send And Confirm Transaction Single
Parameters
ixs: TransactionInstruction[]
opts: any = {}
Returns Promise<MangoSignatureStatus>
serum3 Cancel All Orders
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Optional limit: number
Returns Promise<MangoSignatureStatus>
serum3 Cancel All Orders Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Optional limit: number
Returns Promise<TransactionInstruction>
serum3 Cancel Order
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
orderId: BN
Returns Promise<MangoSignatureStatus>
serum3 Cancel Order By Client Id
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
clientOrderId: BN
Returns Promise<MangoSignatureStatus>
serum3 Cancel Order By Client Id Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
clientOrderId: BN
Returns Promise<TransactionInstruction>
serum3 Cancel Order Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
orderId: BN
Returns Promise<TransactionInstruction>
serum3 Close Open Orders
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<MangoSignatureStatus>
serum3 Close Open Orders Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<TransactionInstruction>
serum3 Consume Events
Parameters
group: Group
serum3MarketExternalPk: PublicKey
Returns Promise<MangoSignatureStatus>
serum3 Create Open Orders
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<MangoSignatureStatus>
serum3 Create Open Orders Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<TransactionInstruction>
serum3 Edit Market
Parameters
group: Group
serum3MarketIndex: MarketIndex
reduceOnly: null | boolean
forceClose: null | boolean
name: null | string
oraclePriceBand: null | number
Returns Promise<MangoSignatureStatus>
serum3 Get Markets
Parameters
group: Group
Optional baseTokenIndex: number
Optional quoteTokenIndex: number
Returns Promise<Serum3Market[]>
serum3 Liq Force Cancel Orders
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Optional limit: number
Returns Promise<MangoSignatureStatus>
serum3 Place Order
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<MangoSignatureStatus>
serum3 Place Order Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<TransactionInstruction[]>
serum3 Place Order V1 Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<TransactionInstruction[]>
serum3 Place Order V2 Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
side: Serum3Side
price: number
size: number
selfTradeBehavior: Serum3SelfTradeBehavior
orderType: Serum3OrderType
clientOrderId: number
limit: number
Returns Promise<TransactionInstruction[]>
serum3 Register Market
Parameters
group: Group
serum3MarketExternalPk: PublicKey
baseBank: Bank
quoteBank: Bank
marketIndex: number
name: string
oraclePriceBand: number
Returns Promise<MangoSignatureStatus>
serum3 Settle Funds
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<MangoSignatureStatus>
serum3 Settle Funds Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<TransactionInstruction>
serum3 Settle Funds V2 Ix
Parameters
group: Group
mangoAccount: MangoAccount
externalMarketPk: PublicKey
Returns Promise<TransactionInstruction>
serum3deregister Market
Parameters
group: Group
externalMarketPk: PublicKey
Returns Promise<MangoSignatureStatus>
settle All
Parameters
client: MangoClient
group: Group
mangoAccount: MangoAccount
Optional allMangoAccounts: MangoAccount[]
Returns Promise<MangoSignatureStatus>
stub Oracle Close
Parameters
group: Group
oracle: PublicKey
Returns Promise<MangoSignatureStatus>
stub Oracle Create
Parameters
group: Group
mintPk: PublicKey
price: number
Returns Promise<MangoSignatureStatus>
stub Oracle Set
Parameters
group: Group
oraclePk: PublicKey
price: number
Returns Promise<MangoSignatureStatus>
tcs Stop Loss On Borrow
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<MangoSignatureStatus>
tcs Stop Loss On Borrow Ix
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[]>
tcs Stop Loss On Deposit
Parameters
group: Group
account: MangoAccount
sellBank: Bank
buyBank: Bank
thresholdPrice: number
thresholdPriceInSellPerBuyToken: boolean
maxSell: null | number
pricePremium: null | number
expiryTimestamp: null | number
Returns Promise<MangoSignatureStatus>
tcs Stop Loss On Deposit Ix
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[]>
tcs Take Profit On Borrow
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<MangoSignatureStatus>
tcs Take Profit On Borrow Ix
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[]>
tcs Take Profit On Deposit
Parameters
group: Group
account: MangoAccount
sellBank: Bank
buyBank: Bank
thresholdPrice: number
thresholdPriceInSellPerBuyToken: boolean
maxSell: null | number
pricePremium: null | number
expiryTimestamp: null | number
Returns Promise<MangoSignatureStatus>
tcs Take Profit On Deposit Ix
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[]>
toggle Mango Account Freeze
Parameters
group: Group
mangoAccount: MangoAccount
freeze: boolean
Returns Promise<MangoSignatureStatus>
token Conditional Swap Cancel
Parameters
group: Group
account: MangoAccount
tokenConditionalSwapId: BN
Returns Promise<MangoSignatureStatus>
token Conditional Swap Cancel All
Parameters
group: Group
account: MangoAccount
Returns Promise<MangoSignatureStatus>
token Conditional Swap Cancel Ix
Parameters
group: Group
account: MangoAccount
tokenConditionalSwapId: BN
Returns Promise<TransactionInstruction>
token Conditional Swap Create
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>
token Conditional Swap Create Ix
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[]>
token Conditional Swap Create Linear Auction
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>
token Conditional Swap Create Linear Auction Ix
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[]>
token Conditional Swap Create Premium Auction
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>
token Conditional Swap Create Premium Auction Ix
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[]>
token Conditional Swap Create Raw
Parameters
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
Returns Promise<MangoSignatureStatus>
token Conditional Swap Create Raw Ix
Parameters
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
Returns Promise<TransactionInstruction[]>
token Conditional Swap Trigger
Parameters
group: Group
liqee: MangoAccount
liqor: MangoAccount
tokenConditionalSwapId: BN
maxBuyTokenToLiqee: number
maxSellTokenToLiqor: number
Returns Promise<MangoSignatureStatus>
token Conditional Swap Trigger Ix
Parameters
group: Group
liqee: MangoAccount
liqor: MangoAccount
tokenConditionalSwapId: BN
maxBuyTokenToLiqee: number
maxSellTokenToLiqor: number
Returns Promise<TransactionInstruction>
token Deposit
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
amount: number
reduceOnly: boolean = false
Returns Promise<MangoSignatureStatus>
token Deposit Native
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
nativeAmount: BN
reduceOnly: boolean = false
Returns Promise<MangoSignatureStatus>
token Deregister
Parameters
group: Group
mintPk: PublicKey
Returns Promise<MangoSignatureStatus>
token Edit
Parameters
group: Group
mintPk: PublicKey
params: TokenEditParams
Returns Promise<MangoSignatureStatus>
token Force Close Borrows With Token
Parameters
group: Group
liqor: MangoAccount
liqee: MangoAccount
assetTokenIndex: TokenIndex
liabTokenIndex: TokenIndex
Optional maxLiabTransfer: number
Returns Promise<MangoSignatureStatus>
token Register
Parameters
group: Group
mintPk: PublicKey
oraclePk: PublicKey
tokenIndex: number
name: string
params: TokenRegisterParams
Returns Promise<MangoSignatureStatus>
token Register Trustless
Parameters
group: Group
mintPk: PublicKey
oraclePk: PublicKey
tokenIndex: number
name: string
Returns Promise<MangoSignatureStatus>
token Update Index And Rate
Parameters
group: Group
mintPk: PublicKey
Returns Promise<MangoSignatureStatus>
token Update Index And Rate Ix
Parameters
group: Group
mintPk: PublicKey
Returns Promise<TransactionInstruction>
token Withdraw
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
amount: number
allowBorrow: boolean
Returns Promise<MangoSignatureStatus>
token Withdraw All Deposit For All Unconfident Or Stale Oracles
Parameters
group: Group
mangoAccount: MangoAccount
Returns Promise<MangoSignatureStatus>
token Withdraw All Deposit For Mint
-
Withdraw the entire deposit balance for a token, effectively freeing the token position
-Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
Returns Promise<MangoSignatureStatus>
token Withdraw Native
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
nativeAmount: BN
allowBorrow: boolean
Returns Promise<MangoSignatureStatus>
token Withdraw Native Ix
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
nativeAmount: BN
allowBorrow: boolean
Returns Promise<TransactionInstruction[]>
Static connect
Parameters
provider: default
cluster: Cluster
programId: PublicKey
Optional opts: MangoClientOptions
Returns MangoClient
Static connect Default
-
+
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
Returns Promise<MangoSignatureStatus>
token Withdraw Native
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
nativeAmount: BN
allowBorrow: boolean
Returns Promise<MangoSignatureStatus>
token Withdraw Native Ix
Parameters
group: Group
mangoAccount: MangoAccount
mintPk: PublicKey
nativeAmount: BN
allowBorrow: boolean
Returns Promise<TransactionInstruction[]>
Static connect
Parameters
provider: default
cluster: Cluster
programId: PublicKey
Optional opts: MangoClientOptions
Returns MangoClient
Static connect Default
-
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
Static connect For Group Name
Parameters
provider: default
groupName: string
Returns MangoClient
Generated using TypeDoc
\ No newline at end of file
+Parameters
clusterUrl: string
Returns MangoClient
Static connect For Group Name
Parameters
provider: default
groupName: string
Returns MangoClient
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/MintInfo.html b/ts/client/classes/MintInfo.html
index 3488b60c6..70b015942 100644
--- a/ts/client/classes/MintInfo.html
+++ b/ts/client/classes/MintInfo.html
@@ -1 +1 @@
-MintInfo | @blockworks-foundation/mango-v4 Class MintInfo
Hierarchy
- MintInfo
Index
Constructors
constructor
Parameters
publicKey: PublicKey
group: PublicKey
tokenIndex: TokenIndex
mint: PublicKey
banks: PublicKey[]
vaults: PublicKey[]
oracle: PublicKey
registrationTime: BN
groupInsuranceFund: boolean
Returns MintInfo
Properties
banks
group
group Insurance Fund
mint
oracle
public Key
registration Time
token Index
vaults
Methods
first Bank
Returns PublicKey
first Vault
Returns PublicKey
to String
Returns string
Static from
Parameters
publicKey: PublicKey
obj: { banks: PublicKey[]; group: PublicKey; groupInsuranceFund: number; mint: PublicKey; oracle: PublicKey; registrationTime: BN; tokenIndex: number; vaults: PublicKey[] }
banks: PublicKey[]
group: PublicKey
group Insurance Fund: number
mint: PublicKey
oracle: PublicKey
registration Time: BN
token Index: number
vaults: PublicKey[]
Returns MintInfo
Generated using TypeDoc
\ No newline at end of file
+MintInfo | @blockworks-foundation/mango-v4 Class MintInfo
Hierarchy
- MintInfo
Index
Constructors
constructor
Parameters
publicKey: PublicKey
group: PublicKey
tokenIndex: TokenIndex
mint: PublicKey
banks: PublicKey[]
vaults: PublicKey[]
oracle: PublicKey
registrationTime: BN
groupInsuranceFund: boolean
Returns MintInfo
Properties
banks
group
group Insurance Fund
mint
oracle
public Key
registration Time
token Index
vaults
Methods
first Bank
Returns PublicKey
first Vault
Returns PublicKey
to String
Returns string
Static from
Parameters
publicKey: PublicKey
obj: { banks: PublicKey[]; group: PublicKey; groupInsuranceFund: number; mint: PublicKey; oracle: PublicKey; registrationTime: BN; tokenIndex: number; vaults: PublicKey[] }
banks: PublicKey[]
group: PublicKey
group Insurance Fund: number
mint: PublicKey
oracle: PublicKey
registration Time: BN
token Index: number
vaults: PublicKey[]
Returns MintInfo
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/OracleConfigParams.html b/ts/client/classes/OracleConfigParams.html
index a47884e9f..b3204ff4f 100644
--- a/ts/client/classes/OracleConfigParams.html
+++ b/ts/client/classes/OracleConfigParams.html
@@ -1 +1 @@
-OracleConfigParams | @blockworks-foundation/mango-v4 Class OracleConfigParams
Hierarchy
- OracleConfigParams
Index
Constructors
Properties
Constructors
constructor
Returns OracleConfigParams
Properties
conf Filter
max Staleness Slots
Generated using TypeDoc
\ No newline at end of file
+OracleConfigParams | @blockworks-foundation/mango-v4 Class OracleConfigParams
Hierarchy
- OracleConfigParams
Index
Constructors
Properties
Constructors
constructor
Returns OracleConfigParams
Properties
conf Filter
max Staleness Slots
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/PerpEventQueue.html b/ts/client/classes/PerpEventQueue.html
index 72031625b..d292ed4ee 100644
--- a/ts/client/classes/PerpEventQueue.html
+++ b/ts/client/classes/PerpEventQueue.html
@@ -1 +1 @@
-PerpEventQueue | @blockworks-foundation/mango-v4 Class PerpEventQueue
Hierarchy
- PerpEventQueue
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
client: MangoClient
header: { count: number; head: number; seqNum: BN }
count: number
head: number
seq Num: BN
buf: any
Returns PerpEventQueue
Properties
count
head
raw Events
seq Num
Static FILL_ EVENT_ TYPE
Static LIQUIDATE_ EVENT_ TYPE
Static OUT_ EVENT_ TYPE
Methods
events Since
Parameters
Optional lastSeqNum: BN
Returns (FillEvent | OutEvent | LiquidateEvent)[]
get Unconsumed Events
Returns (FillEvent | OutEvent | LiquidateEvent)[]
Generated using TypeDoc
\ No newline at end of file
+PerpEventQueue | @blockworks-foundation/mango-v4 Class PerpEventQueue
Hierarchy
- PerpEventQueue
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
client: MangoClient
header: { count: number; head: number; seqNum: BN }
count: number
head: number
seq Num: BN
buf: any
Returns PerpEventQueue
Properties
count
head
raw Events
seq Num
Static FILL_ EVENT_ TYPE
Static LIQUIDATE_ EVENT_ TYPE
Static OUT_ EVENT_ TYPE
Methods
events Since
Parameters
Optional lastSeqNum: BN
Returns (FillEvent | OutEvent | LiquidateEvent)[]
get Unconsumed Events
Returns (FillEvent | OutEvent | LiquidateEvent)[]
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/PerpMarket.html b/ts/client/classes/PerpMarket.html
index ae2d14ffa..5af315fa0 100644
--- a/ts/client/classes/PerpMarket.html
+++ b/ts/client/classes/PerpMarket.html
@@ -1,12 +1,12 @@
-PerpMarket | @blockworks-foundation/mango-v4 Class PerpMarket
Hierarchy
- PerpMarket
Index
Constructors
Properties
- _asks
- _bids
- _oracle
Last Known Deviation - _oracle
Last Updated Slot - _oracle
Provider - _price
- _ui
Price - asks
- base
Decimals - base
Liquidation Fee - base
Lot Size - base
Lots To Ui Converter - bids
- event
Queue - fee
Penalty - fees
Accrued - fees
Settled - force
Close - funding
Last Updated - group
- group
Insurance Fund - impact
Quantity - init
Base Asset Weight - init
Base Liab Weight - init
Overall Asset Weight - long
Funding - maint
Base Asset Weight - maint
Base Liab Weight - maint
Overall Asset Weight - maker
Fee - max
Funding - min
Funding - name
- open
Interest - oracle
- oracle
Config - perp
Market Index - positive
Pnl Liquidation Fee - price
Lots To Ui Converter - public
Key - quote
Lot Size - quote
Lots To Ui Converter - reduce
Only - registration
Time - seq
Num - settle
Fee Amount Threshold - settle
Fee Flat - settle
Fee Fraction Low Health - settle
Pnl Limit Factor - settle
Pnl Limit Window Size Ts - settle
Token Index - short
Funding - stable
Price Model - taker
Fee
Accessors
Methods
- base
Lots To Ui - get
Instantaneous Funding Rate - get
Instantaneous Funding Rate Per Second - get
Instantaneous Funding Rate Ui - get
Settle Pnl Candidates - inside
Price Limit - is
Oracle Stale Or Unconfident - load
Asks - load
Bids - load
Event Queue - load
Fills - log
Ob - parse
Fill Event - price
Lots To Native - price
Lots To Ui - price
Native To Ui - quote
Lots To Ui - to
String - ui
Base To Lots - ui
Price To Lots - ui
Quote To Lots - from
Constructors
constructor
Parameters
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
Returns PerpMarket
Properties
_asks
_bids
_oracle Last Known Deviation
_oracle Last Updated Slot
_oracle Provider
_price
_ui Price
asks
base Decimals
base Liquidation Fee
base Lot Size
Private base Lots To Ui Converter
bids
event Queue
fee Penalty
fees Accrued
fees Settled
force Close
funding Last Updated
group
group Insurance Fund
impact Quantity
init Base Asset Weight
init Base Liab Weight
init Overall Asset Weight
long Funding
maint Base Asset Weight
maint Base Liab Weight
maint Overall Asset Weight
maker Fee
max Funding
min Funding
name
open Interest
oracle
oracle Config
perp Market Index
positive Pnl Liquidation Fee
Private price Lots To Ui Converter
public Key
quote Lot Size
Private quote Lots To Ui Converter
reduce Only
registration Time
seq Num
settle Fee Amount Threshold
settle Fee Flat
settle Fee Fraction Low Health
settle Pnl Limit Factor
settle Pnl Limit Window Size Ts
settle Token Index
short Funding
stable Price Model
taker Fee
Accessors
min Order Size
Returns number
oracle Last Updated Slot
Returns number
oracle Provider
Returns OracleProvider
price
Returns I80F48
tick Size
Returns number
ui Price
Returns number
Methods
base Lots To Ui
Parameters
quantity: BN
Returns number
get Instantaneous Funding Rate
get Instantaneous Funding Rate Per Second
get Instantaneous Funding Rate Ui
-
+
PerpMarket | @blockworks-foundation/mango-v4 Class PerpMarket
Hierarchy
- PerpMarket
Index
Constructors
Properties
- _asks
- _bids
- _oracle
Last Known Deviation - _oracle
Last Updated Slot - _oracle
Provider - _price
- _ui
Price - asks
- base
Decimals - base
Liquidation Fee - base
Lot Size - base
Lots To Ui Converter - bids
- event
Queue - fee
Penalty - fees
Accrued - fees
Settled - force
Close - funding
Last Updated - group
- group
Insurance Fund - impact
Quantity - init
Base Asset Weight - init
Base Liab Weight - init
Overall Asset Weight - long
Funding - maint
Base Asset Weight - maint
Base Liab Weight - maint
Overall Asset Weight - maker
Fee - max
Funding - min
Funding - name
- open
Interest - oracle
- oracle
Config - perp
Market Index - positive
Pnl Liquidation Fee - price
Lots To Ui Converter - public
Key - quote
Lot Size - quote
Lots To Ui Converter - reduce
Only - registration
Time - seq
Num - settle
Fee Amount Threshold - settle
Fee Flat - settle
Fee Fraction Low Health - settle
Pnl Limit Factor - settle
Pnl Limit Window Size Ts - settle
Token Index - short
Funding - stable
Price Model - taker
Fee
Accessors
Methods
- base
Lots To Ui - get
Instantaneous Funding Rate - get
Instantaneous Funding Rate Per Second - get
Instantaneous Funding Rate Ui - get
Settle Pnl Candidates - inside
Price Limit - is
Oracle Stale Or Unconfident - load
Asks - load
Bids - load
Event Queue - load
Fills - log
Ob - parse
Fill Event - price
Lots To Native - price
Lots To Ui - price
Native To Ui - quote
Lots To Ui - to
String - ui
Base To Lots - ui
Price To Lots - ui
Quote To Lots - from
Constructors
constructor
Parameters
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
Returns PerpMarket
Properties
_asks
_bids
_oracle Last Known Deviation
_oracle Last Updated Slot
_oracle Provider
_price
_ui Price
asks
base Decimals
base Liquidation Fee
base Lot Size
Private base Lots To Ui Converter
bids
event Queue
fee Penalty
fees Accrued
fees Settled
force Close
funding Last Updated
group
group Insurance Fund
impact Quantity
init Base Asset Weight
init Base Liab Weight
init Overall Asset Weight
long Funding
maint Base Asset Weight
maint Base Liab Weight
maint Overall Asset Weight
maker Fee
max Funding
min Funding
name
open Interest
oracle
oracle Config
perp Market Index
positive Pnl Liquidation Fee
Private price Lots To Ui Converter
public Key
quote Lot Size
Private quote Lots To Ui Converter
reduce Only
registration Time
seq Num
settle Fee Amount Threshold
settle Fee Flat
settle Fee Fraction Low Health
settle Pnl Limit Factor
settle Pnl Limit Window Size Ts
settle Token Index
short Funding
stable Price Model
taker Fee
Accessors
min Order Size
Returns number
oracle Last Updated Slot
Returns number
oracle Provider
Returns OracleProvider
price
Returns I80F48
tick Size
Returns number
ui Price
Returns number
Methods
base Lots To Ui
Parameters
quantity: BN
Returns number
get Instantaneous Funding Rate
get Instantaneous Funding Rate Per Second
get Instantaneous Funding Rate Ui
-
Returns instantaneous funding rate for the day. How is it actually applied - funding is
continously applied on every interaction to a perp position. The rate is further multiplied
by the time elapsed since it was last applied (capped to max. 1hr).
Parameters
Returns number
returns instantaneous funding rate in % form
-
get Settle Pnl Candidates
-
+
get Settle Pnl Candidates
-
Returns a list of (upto count) accounts, and the pnl that is settle'able on this perp market,
the list is sorted ascending for 'negative' direction and descending for 'positive' direction.
NOTE: keep in sync with perp_pnl.rs:fetch_top
TODO: replace with a more performant offchain service call
-Parameters
client: MangoClient
group: Group
Optional accounts: MangoAccount[]
direction: "negative" | "positive" = 'positive'
count: number = 2
Returns Promise<{ account: MangoAccount; settleablePnl: I80F48 }[]>
inside Price Limit
Parameters
side: PerpOrderSide
orderPrice: number
Returns boolean
is Oracle Stale Or Unconfident
Parameters
nowSlot: number
Returns boolean
load Asks
Parameters
client: MangoClient
forceReload: boolean = false
Returns Promise<BookSide>
load Bids
Parameters
client: MangoClient
forceReload: boolean = false
Returns Promise<BookSide>
load Event Queue
Parameters
client: MangoClient
Returns Promise<PerpEventQueue>
load Fills
Parameters
client: MangoClient
lastSeqNum: BN = ...
Returns Promise<FillEvent[]>
log Ob
Parameters
client: MangoClient
Returns Promise<string>
parse Fill Event
Parameters
event: any
Returns ParsedFillEvent
price Lots To Native
Parameters
price: BN
Returns I80F48
price Lots To Ui
Parameters
price: BN
Returns number
price Native To Ui
Parameters
price: number
Returns number
quote Lots To Ui
Parameters
quantity: BN
Returns number
to String
Returns string
ui Base To Lots
Parameters
quantity: number
Returns BN
ui Price To Lots
Parameters
price: number
Returns BN
ui Quote To Lots
Parameters
uiQuote: number
Returns BN
Static from
Parameters
publicKey: PublicKey
obj: { asks: PublicKey; baseDecimals: number; baseLiquidationFee: I80F48Dto; baseLotSize: BN; bids: PublicKey; eventQueue: PublicKey; feePenalty: number; feesAccrued: I80F48Dto; feesSettled: I80F48Dto; 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; 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 }
asks: PublicKey
base Decimals: number
base Liquidation Fee: I80F48Dto
base Lot Size: BN
bids: PublicKey
event Queue: PublicKey
fee Penalty: number
fees Accrued: I80F48Dto
fees Settled: I80F48Dto
force Close: number
funding Last Updated: BN
group: PublicKey
group Insurance Fund: number
impact Quantity: BN
init Base Asset Weight: I80F48Dto
init Base Liab Weight: I80F48Dto
init Overall Asset Weight: I80F48Dto
long Funding: I80F48Dto
maint Base Asset Weight: I80F48Dto
maint Base Liab Weight: I80F48Dto
maint Overall Asset Weight: I80F48Dto
maker Fee: I80F48Dto
max Funding: I80F48Dto
min Funding: I80F48Dto
name: number[]
open Interest: BN
oracle: PublicKey
oracle Config: OracleConfigDto
perp Market Index: number
positive Pnl Liquidation Fee: I80F48Dto
quote Lot Size: BN
reduce Only: number
registration Time: BN
seq Num: BN
settle Fee Amount Threshold: number
settle Fee Flat: number
settle Fee Fraction Low Health: number
settle Pnl Limit Factor: number
settle Pnl Limit Window Size Ts: BN
settle Token Index: number
short Funding: I80F48Dto
stable Price Model: StablePriceModel
taker Fee: I80F48Dto
Returns PerpMarket
Generated using TypeDoc
\ No newline at end of file
+Parameters
client: MangoClient
group: Group
Optional accounts: MangoAccount[]
direction: "negative" | "positive" = 'positive'
count: number = 2
Returns Promise<{ account: MangoAccount; settleablePnl: I80F48 }[]>
inside Price Limit
Parameters
side: PerpOrderSide
orderPrice: number
Returns boolean
is Oracle Stale Or Unconfident
Parameters
nowSlot: number
Returns boolean
load Asks
Parameters
client: MangoClient
forceReload: boolean = false
Returns Promise<BookSide>
load Bids
Parameters
client: MangoClient
forceReload: boolean = false
Returns Promise<BookSide>
load Event Queue
Parameters
client: MangoClient
Returns Promise<PerpEventQueue>
load Fills
Parameters
client: MangoClient
lastSeqNum: BN = ...
Returns Promise<FillEvent[]>
log Ob
Parameters
client: MangoClient
Returns Promise<string>
parse Fill Event
Parameters
event: any
Returns ParsedFillEvent
price Lots To Native
Parameters
price: BN
Returns I80F48
price Lots To Ui
Parameters
price: BN
Returns number
price Native To Ui
Parameters
price: number
Returns number
quote Lots To Ui
Parameters
quantity: BN
Returns number
to String
Returns string
ui Base To Lots
Parameters
quantity: number
Returns BN
ui Price To Lots
Parameters
price: number
Returns BN
ui Quote To Lots
Parameters
uiQuote: number
Returns BN
Static from
Parameters
publicKey: PublicKey
obj: { asks: PublicKey; baseDecimals: number; baseLiquidationFee: I80F48Dto; baseLotSize: BN; bids: PublicKey; eventQueue: PublicKey; feePenalty: number; feesAccrued: I80F48Dto; feesSettled: I80F48Dto; 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; 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 }
asks: PublicKey
base Decimals: number
base Liquidation Fee: I80F48Dto
base Lot Size: BN
bids: PublicKey
event Queue: PublicKey
fee Penalty: number
fees Accrued: I80F48Dto
fees Settled: I80F48Dto
force Close: number
funding Last Updated: BN
group: PublicKey
group Insurance Fund: number
impact Quantity: BN
init Base Asset Weight: I80F48Dto
init Base Liab Weight: I80F48Dto
init Overall Asset Weight: I80F48Dto
long Funding: I80F48Dto
maint Base Asset Weight: I80F48Dto
maint Base Liab Weight: I80F48Dto
maint Overall Asset Weight: I80F48Dto
maker Fee: I80F48Dto
max Funding: I80F48Dto
min Funding: I80F48Dto
name: number[]
open Interest: BN
oracle: PublicKey
oracle Config: OracleConfigDto
perp Market Index: number
positive Pnl Liquidation Fee: I80F48Dto
quote Lot Size: BN
reduce Only: number
registration Time: BN
seq Num: BN
settle Fee Amount Threshold: number
settle Fee Flat: number
settle Fee Fraction Low Health: number
settle Pnl Limit Factor: number
settle Pnl Limit Window Size Ts: BN
settle Token Index: number
short Funding: I80F48Dto
stable Price Model: StablePriceModel
taker Fee: I80F48Dto
Returns PerpMarket
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/PerpOo.html b/ts/client/classes/PerpOo.html
index a3c76fd1f..05cdbd5ab 100644
--- a/ts/client/classes/PerpOo.html
+++ b/ts/client/classes/PerpOo.html
@@ -1 +1 @@
-PerpOo | @blockworks-foundation/mango-v4 Class PerpOo
Hierarchy
- PerpOo
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
sideAndTree: any
orderMarket: number
clientId: BN
id: BN
Returns PerpOo
Properties
client Id
id
order Market
side And Tree
Static Order Market Unset
Methods
is Active
Returns boolean
Static from
Generated using TypeDoc
\ No newline at end of file
+PerpOo | @blockworks-foundation/mango-v4 Class PerpOo
Hierarchy
- PerpOo
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
sideAndTree: any
orderMarket: number
clientId: BN
id: BN
Returns PerpOo
Properties
client Id
id
order Market
side And Tree
Static Order Market Unset
Methods
is Active
Returns boolean
Static from
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/PerpOoDto.html b/ts/client/classes/PerpOoDto.html
index 221044c86..a7e3f13fc 100644
--- a/ts/client/classes/PerpOoDto.html
+++ b/ts/client/classes/PerpOoDto.html
@@ -1 +1 @@
-PerpOoDto | @blockworks-foundation/mango-v4 Class PerpOoDto
Hierarchy
- PerpOoDto
Index
Constructors
Properties
Constructors
constructor
Parameters
sideAndTree: any
market: number
clientId: BN
id: BN
Returns PerpOoDto
Properties
client Id
id
market
side And Tree
Generated using TypeDoc
\ No newline at end of file
+PerpOoDto | @blockworks-foundation/mango-v4 Class PerpOoDto
Hierarchy
- PerpOoDto
Index
Constructors
Properties
Constructors
constructor
Parameters
sideAndTree: any
market: number
clientId: BN
id: BN
Returns PerpOoDto
Properties
client Id
id
market
side And Tree
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/PerpOrder.html b/ts/client/classes/PerpOrder.html
index 68996c26c..e1593b166 100644
--- a/ts/client/classes/PerpOrder.html
+++ b/ts/client/classes/PerpOrder.html
@@ -1 +1 @@
-PerpOrder | @blockworks-foundation/mango-v4 Class PerpOrder
Hierarchy
- PerpOrder
Index
Constructors
constructor
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
expiry Timestamp
fee Tier
is Expired
is Oracle Pegged
open Orders Slot
Optional oracle Pegged Properties
order Id
order Type
owner
perp Market Index
price Lots
seq Num
side
size Lots
timestamp
ui Price
ui Size
Accessors
price
Returns number
size
Returns number
Methods
Static from
Parameters
perpMarket: PerpMarket
leafNode: LeafNode
type: BookSideType
isExpired: boolean = false
isOraclePegged: boolean = false
Returns PerpOrder
Generated using TypeDoc
\ No newline at end of file
+PerpOrder | @blockworks-foundation/mango-v4 Class PerpOrder
Hierarchy
- PerpOrder
Index
Constructors
constructor
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
expiry Timestamp
fee Tier
is Expired
is Oracle Pegged
open Orders Slot
Optional oracle Pegged Properties
order Id
order Type
owner
perp Market Index
price Lots
seq Num
side
size Lots
timestamp
ui Price
ui Size
Accessors
price
Returns number
size
Returns number
Methods
Static from
Parameters
perpMarket: PerpMarket
leafNode: LeafNode
type: BookSideType
isExpired: boolean = false
isOraclePegged: boolean = false
Returns PerpOrder
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/PerpPosition.html b/ts/client/classes/PerpPosition.html
index e7e80a38e..0a080d231 100644
--- a/ts/client/classes/PerpPosition.html
+++ b/ts/client/classes/PerpPosition.html
@@ -1,9 +1,9 @@
-PerpPosition | @blockworks-foundation/mango-v4 Class PerpPosition
Hierarchy
- PerpPosition
Index
Constructors
Properties
- asks
Base Lots - avg
Entry Price Per Base Lot - base
Position Lots - bids
Base Lots - cumulative
Long Funding - cumulative
Short Funding - long
Settled Funding - maker
Volume - market
Index - perp
Spot Transfers - quote
Position Native - quote
Running Native - realized
Other Pnl Native - realized
Pnl For Position Native - realized
Trade Pnl Native - settle
Pnl Limit Realized Trade - settle
Pnl Limit Settled In Current Window Native - settle
Pnl Limit Window - short
Settled Funding - taker
Base Lots - taker
Quote Lots - taker
Volume - Perp
Market Index Unset
Methods
- apply
Pnl Settle Limit - available
Settle Limit - can
Settle Pnl - cumulative
Pnl Over Position Lifetime Ui - get
Average Entry Price - get
Average Entry Price Ui - get
Base Position - get
Base Position Ui - get
Break Even Price - get
Break Even Price Ui - get
Cumulative Funding - get
Cumulative Funding Ui - get
Equity - get
Equity Ui - get
Liquidation Price - get
Liquidation Price Ui - get
Notional Value Ui - get
Quote Position Ui - get
Realized Pnl Ui - get
Settleable Pnl - get
Settleable Pnl Ui - get
Un Realized Pnl Ui - get
Unsettled Funding - get
Unsettled Funding Ui - get
Unsettled Pnl - get
Unsettled Pnl Ui - has
Open Orders - is
Active - to
String - update
Settle Limit - empty
From Perp Market Index - from
Constructors
constructor
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
realizedTradePnlNative: I80F48
realizedOtherPnlNative: I80F48
settlePnlLimitRealizedTrade: BN
realizedPnlForPositionNative: I80F48
Returns PerpPosition
Properties
asks Base Lots
avg Entry Price Per Base Lot
base Position Lots
bids Base Lots
cumulative Long Funding
cumulative Short Funding
long Settled Funding
maker Volume
market Index
perp Spot Transfers
quote Position Native
quote Running Native
realized Other Pnl Native
realized Pnl For Position Native
realized Trade Pnl Native
settle Pnl Limit Realized Trade
settle Pnl Limit Settled In Current Window Native
settle Pnl Limit Window
short Settled Funding
taker Base Lots
taker Quote Lots
taker Volume
Static Perp Market Index Unset
Methods
apply Pnl Settle Limit
Parameters
pnl: I80F48
perpMarket: PerpMarket
Returns I80F48
available Settle Limit
Parameters
perpMarket: PerpMarket
Returns [BN, BN]
can Settle Pnl
Parameters
group: Group
perpMarket: PerpMarket
account: MangoAccount
Returns boolean
cumulative Pnl Over Position Lifetime Ui
Parameters
perpMarket: PerpMarket
Returns number
get Average Entry Price
Parameters
perpMarket: PerpMarket
Returns I80F48
get Average Entry Price Ui
Parameters
perpMarket: PerpMarket
Returns number
get Base Position
Parameters
perpMarket: PerpMarket
Returns I80F48
get Base Position Ui
Parameters
perpMarket: PerpMarket
Optional useEventQueue: boolean
Returns number
get Break Even Price
Parameters
perpMarket: PerpMarket
Returns I80F48
get Break Even Price Ui
Parameters
perpMarket: PerpMarket
Returns number
get Cumulative Funding
Parameters
perpMarket: PerpMarket
Returns CumulativeFunding
perp position cumulative funding, in quote token units.
+
PerpPosition | @blockworks-foundation/mango-v4 Class PerpPosition
Hierarchy
- PerpPosition
Index
Constructors
Properties
- asks
Base Lots - avg
Entry Price Per Base Lot - base
Position Lots - bids
Base Lots - cumulative
Long Funding - cumulative
Short Funding - long
Settled Funding - maker
Volume - market
Index - perp
Spot Transfers - quote
Position Native - quote
Running Native - realized
Other Pnl Native - realized
Pnl For Position Native - realized
Trade Pnl Native - settle
Pnl Limit Realized Trade - settle
Pnl Limit Settled In Current Window Native - settle
Pnl Limit Window - short
Settled Funding - taker
Base Lots - taker
Quote Lots - taker
Volume - Perp
Market Index Unset
Methods
- apply
Pnl Settle Limit - available
Settle Limit - can
Settle Pnl - cumulative
Pnl Over Position Lifetime Ui - get
Average Entry Price - get
Average Entry Price Ui - get
Base Position - get
Base Position Ui - get
Break Even Price - get
Break Even Price Ui - get
Cumulative Funding - get
Cumulative Funding Ui - get
Equity - get
Equity Ui - get
Liquidation Price - get
Liquidation Price Ui - get
Notional Value Ui - get
Quote Position Ui - get
Realized Pnl Ui - get
Settleable Pnl - get
Settleable Pnl Ui - get
Un Realized Pnl Ui - get
Unsettled Funding - get
Unsettled Funding Ui - get
Unsettled Pnl - get
Unsettled Pnl Ui - has
Open Orders - is
Active - to
String - update
Settle Limit - empty
From Perp Market Index - from
Constructors
constructor
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
realizedTradePnlNative: I80F48
realizedOtherPnlNative: I80F48
settlePnlLimitRealizedTrade: BN
realizedPnlForPositionNative: I80F48
Returns PerpPosition
Properties
asks Base Lots
avg Entry Price Per Base Lot
base Position Lots
bids Base Lots
cumulative Long Funding
cumulative Short Funding
long Settled Funding
maker Volume
market Index
perp Spot Transfers
quote Position Native
quote Running Native
realized Other Pnl Native
realized Pnl For Position Native
realized Trade Pnl Native
settle Pnl Limit Realized Trade
settle Pnl Limit Settled In Current Window Native
settle Pnl Limit Window
short Settled Funding
taker Base Lots
taker Quote Lots
taker Volume
Static Perp Market Index Unset
Methods
apply Pnl Settle Limit
Parameters
pnl: I80F48
perpMarket: PerpMarket
Returns I80F48
available Settle Limit
Parameters
perpMarket: PerpMarket
Returns [BN, BN]
can Settle Pnl
Parameters
group: Group
perpMarket: PerpMarket
account: MangoAccount
Returns boolean
cumulative Pnl Over Position Lifetime Ui
Parameters
perpMarket: PerpMarket
Returns number
get Average Entry Price
Parameters
perpMarket: PerpMarket
Returns I80F48
get Average Entry Price Ui
Parameters
perpMarket: PerpMarket
Returns number
get Base Position
Parameters
perpMarket: PerpMarket
Returns I80F48
get Base Position Ui
Parameters
perpMarket: PerpMarket
Optional useEventQueue: boolean
Returns number
get Break Even Price
Parameters
perpMarket: PerpMarket
Returns I80F48
get Break Even Price Ui
Parameters
perpMarket: PerpMarket
Returns number
get Cumulative Funding
Parameters
perpMarket: PerpMarket
Returns CumulativeFunding
perp position cumulative funding, in quote token units.
If the user paid $1 in funding for a short position, this would be -1e6.
Caveat: This will only return cumulative interest since the perp position was last opened.
If the perp position was closed and reopened multiple times it is necessary to add this result to
cumulative funding at each of the prior perp position closings (from mango API) to get the all time
cumulative funding.
-
get Cumulative Funding Ui
Parameters
perpMarket: PerpMarket
Returns number
perp position cumulative funding.
+
get Cumulative Funding Ui
Parameters
perpMarket: PerpMarket
Returns number
perp position cumulative funding.
Caveat: This will only return cumulative interest since the perp position was last opened.
-
get Equity
Parameters
perpMarket: PerpMarket
Returns I80F48
get Equity Ui
Parameters
perpMarket: PerpMarket
Returns number
get Liquidation Price
Parameters
group: Group
mangoAccount: MangoAccount
Returns null | I80F48
get Liquidation Price Ui
Parameters
group: Group
mangoAccount: MangoAccount
Returns null | number
get Notional Value Ui
Parameters
perpMarket: PerpMarket
Optional useEventQueue: boolean
Returns number
get Quote Position Ui
Parameters
perpMarket: PerpMarket
Optional useEventQueue: boolean
Returns number
get Realized Pnl Ui
Returns number
get Settleable Pnl
Parameters
group: Group
perpMarket: PerpMarket
account: MangoAccount
Returns I80F48
get Settleable Pnl Ui
Parameters
group: Group
perpMarket: PerpMarket
account: MangoAccount
Returns number
get Un Realized Pnl Ui
Parameters
perpMarket: PerpMarket
Returns number
get Unsettled Funding
Parameters
perpMarket: PerpMarket
Returns I80F48
get Unsettled Funding Ui
Parameters
perpMarket: PerpMarket
Returns number
get Unsettled Pnl
Parameters
perpMarket: PerpMarket
Returns I80F48
get Unsettled Pnl Ui
Parameters
perpMarket: PerpMarket
Returns number
has Open Orders
Returns boolean
is Active
Returns boolean
to String
Parameters
Optional perpMarket: PerpMarket
Returns string
update Settle Limit
Parameters
perpMarket: PerpMarket
Returns void
Static empty From Perp Market Index
Parameters
perpMarketIndex: PerpMarketIndex
Returns PerpPosition
Static from
Parameters
dto: PerpPositionDto
Returns PerpPosition
Generated using TypeDoc
\ No newline at end of file
+
get Equity
Parameters
perpMarket: PerpMarket
Returns I80F48
get Equity Ui
Parameters
perpMarket: PerpMarket
Returns number
get Liquidation Price
Parameters
group: Group
mangoAccount: MangoAccount
Returns null | I80F48
get Liquidation Price Ui
Parameters
group: Group
mangoAccount: MangoAccount
Returns null | number
get Notional Value Ui
Parameters
perpMarket: PerpMarket
Optional useEventQueue: boolean
Returns number
get Quote Position Ui
Parameters
perpMarket: PerpMarket
Optional useEventQueue: boolean
Returns number
get Realized Pnl Ui
Returns number
get Settleable Pnl
Parameters
group: Group
perpMarket: PerpMarket
account: MangoAccount
Returns I80F48
get Settleable Pnl Ui
Parameters
group: Group
perpMarket: PerpMarket
account: MangoAccount
Returns number
get Un Realized Pnl Ui
Parameters
perpMarket: PerpMarket
Returns number
get Unsettled Funding
Parameters
perpMarket: PerpMarket
Returns I80F48
get Unsettled Funding Ui
Parameters
perpMarket: PerpMarket
Returns number
get Unsettled Pnl
Parameters
perpMarket: PerpMarket
Returns I80F48
get Unsettled Pnl Ui
Parameters
perpMarket: PerpMarket
Returns number
has Open Orders
Returns boolean
is Active
Returns boolean
to String
Parameters
Optional perpMarket: PerpMarket
Returns string
update Settle Limit
Parameters
perpMarket: PerpMarket
Returns void
Static empty From Perp Market Index
Parameters
perpMarketIndex: PerpMarketIndex
Returns PerpPosition
Static from
Parameters
dto: PerpPositionDto
Returns PerpPosition
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/PerpPositionDto.html b/ts/client/classes/PerpPositionDto.html
index 0f5f1d68f..d5affd53f 100644
--- a/ts/client/classes/PerpPositionDto.html
+++ b/ts/client/classes/PerpPositionDto.html
@@ -1 +1 @@
-PerpPositionDto | @blockworks-foundation/mango-v4 Class PerpPositionDto
Hierarchy
- PerpPositionDto
Index
Constructors
Properties
- asks
Base Lots - avg
Entry Price Per Base Lot - base
Position Lots - bids
Base Lots - cumulative
Long Funding - cumulative
Short Funding - long
Settled Funding - maker
Volume - market
Index - perp
Spot Transfers - quote
Position Native - quote
Running Native - realized
Other Pnl Native - realized
Pnl For Position Native - realized
Trade Pnl Native - settle
Pnl Limit Realized Trade - settle
Pnl Limit Settled In Current Window Native - settle
Pnl Limit Window - short
Settled Funding - taker
Base Lots - taker
Quote Lots - taker
Volume
Constructors
constructor
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
realizedTradePnlNative: I80F48Dto
realizedOtherPnlNative: I80F48Dto
settlePnlLimitRealizedTrade: BN
realizedPnlForPositionNative: I80F48Dto
Returns PerpPositionDto
Properties
asks Base Lots
avg Entry Price Per Base Lot
base Position Lots
bids Base Lots
cumulative Long Funding
cumulative Short Funding
long Settled Funding
maker Volume
market Index
perp Spot Transfers
quote Position Native
Type declaration
val: BN
quote Running Native
realized Other Pnl Native
realized Pnl For Position Native
realized Trade Pnl Native
settle Pnl Limit Realized Trade
settle Pnl Limit Settled In Current Window Native
settle Pnl Limit Window
short Settled Funding
taker Base Lots
taker Quote Lots
taker Volume
Generated using TypeDoc
\ No newline at end of file
+PerpPositionDto | @blockworks-foundation/mango-v4 Class PerpPositionDto
Hierarchy
- PerpPositionDto
Index
Constructors
Properties
- asks
Base Lots - avg
Entry Price Per Base Lot - base
Position Lots - bids
Base Lots - cumulative
Long Funding - cumulative
Short Funding - long
Settled Funding - maker
Volume - market
Index - perp
Spot Transfers - quote
Position Native - quote
Running Native - realized
Other Pnl Native - realized
Pnl For Position Native - realized
Trade Pnl Native - settle
Pnl Limit Realized Trade - settle
Pnl Limit Settled In Current Window Native - settle
Pnl Limit Window - short
Settled Funding - taker
Base Lots - taker
Quote Lots - taker
Volume
Constructors
constructor
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
realizedTradePnlNative: I80F48Dto
realizedOtherPnlNative: I80F48Dto
settlePnlLimitRealizedTrade: BN
realizedPnlForPositionNative: I80F48Dto
Returns PerpPositionDto
Properties
asks Base Lots
avg Entry Price Per Base Lot
base Position Lots
bids Base Lots
cumulative Long Funding
cumulative Short Funding
long Settled Funding
maker Volume
market Index
perp Spot Transfers
quote Position Native
Type declaration
val: BN
quote Running Native
realized Other Pnl Native
realized Pnl For Position Native
realized Trade Pnl Native
settle Pnl Limit Realized Trade
settle Pnl Limit Settled In Current Window Native
settle Pnl Limit Window
short Settled Funding
taker Base Lots
taker Quote Lots
taker Volume
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/Serum3Market.html b/ts/client/classes/Serum3Market.html
index f9104da74..8d1784710 100644
--- a/ts/client/classes/Serum3Market.html
+++ b/ts/client/classes/Serum3Market.html
@@ -1,5 +1,5 @@
-Serum3Market | @blockworks-foundation/mango-v4 Class Serum3Market
Hierarchy
- Serum3Market
Index
Constructors
constructor
Parameters
publicKey: PublicKey
group: PublicKey
baseTokenIndex: TokenIndex
quoteTokenIndex: TokenIndex
name: number[]
serumProgram: PublicKey
serumMarketExternal: PublicKey
marketIndex: MarketIndex
registrationTime: BN
reduceOnly: boolean
forceClose: boolean
Returns Serum3Market
Properties
base Token Index
force Close
group
market Index
name
public Key
quote Token Index
reduce Only
registration Time
serum Market External
serum Program
Methods
compute Price For Market Order Of Size
Parameters
client: MangoClient
group: Group
size: number
side: "buy" | "sell"
Returns Promise<number>
find Oo Pda
Parameters
programId: PublicKey
mangoAccount: PublicKey
Returns Promise<PublicKey>
get Fee Rates
Parameters
taker: boolean = true
Returns number
load Asks
Parameters
client: MangoClient
group: Group
Returns Promise<Orderbook>
load Bids
Parameters
client: MangoClient
group: Group
Returns Promise<Orderbook>
log Ob
Parameters
client: MangoClient
group: Group
Returns Promise<string>
max Ask Leverage
Parameters
group: Group
Returns number
maximum leverage one can ask on this market, this is only for display purposes,
+
Serum3Market | @blockworks-foundation/mango-v4 Class Serum3Market
Hierarchy
- Serum3Market
Index
Constructors
constructor
Parameters
publicKey: PublicKey
group: PublicKey
baseTokenIndex: TokenIndex
quoteTokenIndex: TokenIndex
name: number[]
serumProgram: PublicKey
serumMarketExternal: PublicKey
marketIndex: MarketIndex
registrationTime: BN
reduceOnly: boolean
forceClose: boolean
Returns Serum3Market
Properties
base Token Index
force Close
group
market Index
name
public Key
quote Token Index
reduce Only
registration Time
serum Market External
serum Program
Methods
compute Price For Market Order Of Size
Parameters
client: MangoClient
group: Group
size: number
side: "buy" | "sell"
Returns Promise<number>
find Oo Pda
Parameters
programId: PublicKey
mangoAccount: PublicKey
Returns Promise<PublicKey>
get Fee Rates
Parameters
taker: boolean = true
Returns number
load Asks
Parameters
client: MangoClient
group: Group
Returns Promise<Orderbook>
load Bids
Parameters
client: MangoClient
group: Group
Returns Promise<Orderbook>
log Ob
Parameters
client: MangoClient
group: Group
Returns Promise<string>
max Ask Leverage
Parameters
group: Group
Returns number
maximum leverage one can ask on this market, this is only for display purposes,
also see getMaxQuoteForSerum3BidUi and getMaxBaseForSerum3AskUi
-
max Bid Leverage
Parameters
group: Group
Returns number
maximum leverage one can bid on this market, this is only for display purposes,
+
max Bid Leverage
Parameters
group: Group
Returns number
maximum leverage one can bid on this market, this is only for display purposes,
also see getMaxQuoteForSerum3BidUi and getMaxBaseForSerum3AskUi
-
Static from
Parameters
publicKey: PublicKey
obj: { baseTokenIndex: number; forceClose: number; group: PublicKey; marketIndex: number; name: number[]; quoteTokenIndex: number; reduceOnly: number; registrationTime: BN; serumMarketExternal: PublicKey; serumProgram: PublicKey }
base Token Index: number
force Close: number
group: PublicKey
market Index: number
name: number[]
quote Token Index: number
reduce Only: number
registration Time: BN
serum Market External: PublicKey
serum Program: PublicKey
Returns Serum3Market
Generated using TypeDoc
\ No newline at end of file
+
Static from
Parameters
publicKey: PublicKey
obj: { baseTokenIndex: number; forceClose: number; group: PublicKey; marketIndex: number; name: number[]; quoteTokenIndex: number; reduceOnly: number; registrationTime: BN; serumMarketExternal: PublicKey; serumProgram: PublicKey }
base Token Index: number
force Close: number
group: PublicKey
market Index: number
name: number[]
quote Token Index: number
reduce Only: number
registration Time: BN
serum Market External: PublicKey
serum Program: PublicKey
Returns Serum3Market
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/Serum3Orders.html b/ts/client/classes/Serum3Orders.html
index 4d9d7dff3..26afa8497 100644
--- a/ts/client/classes/Serum3Orders.html
+++ b/ts/client/classes/Serum3Orders.html
@@ -1 +1 @@
-Serum3Orders | @blockworks-foundation/mango-v4 Class Serum3Orders
Hierarchy
- Serum3Orders
Index
Constructors
constructor
Parameters
openOrders: PublicKey
marketIndex: MarketIndex
baseTokenIndex: TokenIndex
quoteTokenIndex: TokenIndex
highestPlacedBidInv: number
lowestPlacedAsk: number
Returns Serum3Orders
Properties
base Token Index
highest Placed Bid Inv
lowest Placed Ask
market Index
open Orders
quote Token Index
Static Serum3 Market Index Unset
Methods
is Active
Returns boolean
Static from
Parameters
dto: Serum3PositionDto
Returns Serum3Orders
Generated using TypeDoc
\ No newline at end of file
+Serum3Orders | @blockworks-foundation/mango-v4 Class Serum3Orders
Hierarchy
- Serum3Orders
Index
Constructors
constructor
Parameters
openOrders: PublicKey
marketIndex: MarketIndex
baseTokenIndex: TokenIndex
quoteTokenIndex: TokenIndex
highestPlacedBidInv: number
lowestPlacedAsk: number
Returns Serum3Orders
Properties
base Token Index
highest Placed Bid Inv
lowest Placed Ask
market Index
open Orders
quote Token Index
Static Serum3 Market Index Unset
Methods
is Active
Returns boolean
Static from
Parameters
dto: Serum3PositionDto
Returns Serum3Orders
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/Serum3PositionDto.html b/ts/client/classes/Serum3PositionDto.html
index 44c6a475a..5457e483a 100644
--- a/ts/client/classes/Serum3PositionDto.html
+++ b/ts/client/classes/Serum3PositionDto.html
@@ -1 +1 @@
-Serum3PositionDto | @blockworks-foundation/mango-v4 Class Serum3PositionDto
Hierarchy
- Serum3PositionDto
Index
Constructors
constructor
Parameters
openOrders: PublicKey
marketIndex: number
baseBorrowsWithoutFee: BN
quoteBorrowsWithoutFee: BN
baseTokenIndex: number
quoteTokenIndex: number
highestPlacedBidInv: number
lowestPlacedAsk: number
reserved: number[]
Returns Serum3PositionDto
Properties
base Borrows Without Fee
base Token Index
highest Placed Bid Inv
lowest Placed Ask
market Index
open Orders
quote Borrows Without Fee
quote Token Index
reserved
Generated using TypeDoc
\ No newline at end of file
+Serum3PositionDto | @blockworks-foundation/mango-v4 Class Serum3PositionDto
Hierarchy
- Serum3PositionDto
Index
Constructors
constructor
Parameters
openOrders: PublicKey
marketIndex: number
baseBorrowsWithoutFee: BN
quoteBorrowsWithoutFee: BN
baseTokenIndex: number
quoteTokenIndex: number
highestPlacedBidInv: number
lowestPlacedAsk: number
reserved: number[]
Returns Serum3PositionDto
Properties
base Borrows Without Fee
base Token Index
highest Placed Bid Inv
lowest Placed Ask
market Index
open Orders
quote Borrows Without Fee
quote Token Index
reserved
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/StubOracle.html b/ts/client/classes/StubOracle.html
index 70f701f77..e8dcdb882 100644
--- a/ts/client/classes/StubOracle.html
+++ b/ts/client/classes/StubOracle.html
@@ -1 +1 @@
-StubOracle | @blockworks-foundation/mango-v4 Class StubOracle
Hierarchy
- StubOracle
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
publicKey: PublicKey
group: PublicKey
mint: PublicKey
price: I80F48Dto
lastUpdateTs: BN
lastUpdateSlot: BN
deviation: I80F48Dto
Returns StubOracle
Properties
deviation
group
last Update Slot
last Update Ts
mint
price
public Key
Methods
Static from
Parameters
publicKey: PublicKey
obj: { deviation: I80F48Dto; group: PublicKey; lastUpdateSlot: BN; lastUpdateTs: BN; mint: PublicKey; price: I80F48Dto }
Returns StubOracle
Generated using TypeDoc
\ No newline at end of file
+StubOracle | @blockworks-foundation/mango-v4 Class StubOracle
Hierarchy
- StubOracle
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
publicKey: PublicKey
group: PublicKey
mint: PublicKey
price: I80F48Dto
lastUpdateTs: BN
lastUpdateSlot: BN
deviation: I80F48Dto
Returns StubOracle
Properties
deviation
group
last Update Slot
last Update Ts
mint
price
public Key
Methods
Static from
Parameters
publicKey: PublicKey
obj: { deviation: I80F48Dto; group: PublicKey; lastUpdateSlot: BN; lastUpdateTs: BN; mint: PublicKey; price: I80F48Dto }
Returns StubOracle
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/TokenConditionalSwap.html b/ts/client/classes/TokenConditionalSwap.html
index 266c3db37..9612dce67 100644
--- a/ts/client/classes/TokenConditionalSwap.html
+++ b/ts/client/classes/TokenConditionalSwap.html
@@ -1 +1 @@
-TokenConditionalSwap | @blockworks-foundation/mango-v4 Class TokenConditionalSwap
Hierarchy
- TokenConditionalSwap
Index
Constructors
Properties
Methods
- get
Allow Creating Borrows - get
Allow Creating Deposits - get
Bought Ui - get
Buy Token - get
Current Pair Price Ui - get
Currently Suggested Premium - get
Expiry Timestamp In Epoch Seconds - get
Max Buy Ui - get
Max Sell Ui - get
Price Lower Limit Ui - get
Price Premium - get
Price Upper Limit Ui - get
Sell Token - get
Sold Ui - get
Threshold Price Ui - price
Limit To Ui - to
String - compute
Premium - from
Constructors
constructor
Parameters
id: BN
maxBuy: BN
maxSell: BN
bought: BN
sold: BN
expiryTimestamp: BN
priceLowerLimit: number
priceUpperLimit: number
pricePremiumRate: number
takerFeeRate: number
makerFeeRate: number
buyTokenIndex: TokenIndex
sellTokenIndex: TokenIndex
isConfigured: boolean
allowCreatingDeposits: boolean
allowCreatingBorrows: boolean
priceDisplayStyle: TokenConditionalSwapDisplayPriceStyle
intention: TokenConditionalSwapIntention
Returns TokenConditionalSwap
Properties
allow Creating Borrows
allow Creating Deposits
bought
buy Token Index
expiry Timestamp
id
intention
is Configured
maker Fee Rate
max Buy
max Sell
price Display Style
price Lower Limit
price Premium Rate
price Upper Limit
sell Token Index
sold
taker Fee Rate
Methods
get Allow Creating Borrows
Returns boolean
get Allow Creating Deposits
Returns boolean
get Bought Ui
Parameters
group: Group
Returns number
get Buy Token
get Current Pair Price Ui
Parameters
group: Group
Returns number
get Currently Suggested Premium
Parameters
group: Group
Returns number
get Expiry Timestamp In Epoch Seconds
Returns number
get Max Buy Ui
Parameters
group: Group
Returns number
get Max Sell Ui
Parameters
group: Group
Returns number
get Price Lower Limit Ui
Parameters
group: Group
Returns number
get Price Premium
Returns number
get Price Upper Limit Ui
Parameters
group: Group
Returns number
get Sell Token
get Sold Ui
Parameters
group: Group
Returns number
get Threshold Price Ui
Parameters
group: Group
Returns number
Private price Limit To Ui
Parameters
group: Group
sellTokenPerBuyTokenNative: number
Returns number
to String
Parameters
group: Group
Returns string
Static compute Premium
Static from
Parameters
Returns TokenConditionalSwap
Generated using TypeDoc
\ No newline at end of file
+TokenConditionalSwap | @blockworks-foundation/mango-v4 Class TokenConditionalSwap
Hierarchy
- TokenConditionalSwap
Index
Constructors
Properties
Methods
- get
Allow Creating Borrows - get
Allow Creating Deposits - get
Bought Ui - get
Buy Token - get
Current Pair Price Ui - get
Currently Suggested Premium - get
Expiry Timestamp In Epoch Seconds - get
Max Buy Ui - get
Max Sell Ui - get
Price Lower Limit Ui - get
Price Premium - get
Price Upper Limit Ui - get
Sell Token - get
Sold Ui - get
Threshold Price Ui - price
Limit To Ui - to
String - compute
Premium - from
Constructors
constructor
Parameters
id: BN
maxBuy: BN
maxSell: BN
bought: BN
sold: BN
expiryTimestamp: BN
priceLowerLimit: number
priceUpperLimit: number
pricePremiumRate: number
takerFeeRate: number
makerFeeRate: number
buyTokenIndex: TokenIndex
sellTokenIndex: TokenIndex
isConfigured: boolean
allowCreatingDeposits: boolean
allowCreatingBorrows: boolean
priceDisplayStyle: TokenConditionalSwapDisplayPriceStyle
intention: TokenConditionalSwapIntention
Returns TokenConditionalSwap
Properties
allow Creating Borrows
allow Creating Deposits
bought
buy Token Index
expiry Timestamp
id
intention
is Configured
maker Fee Rate
max Buy
max Sell
price Display Style
price Lower Limit
price Premium Rate
price Upper Limit
sell Token Index
sold
taker Fee Rate
Methods
get Allow Creating Borrows
Returns boolean
get Allow Creating Deposits
Returns boolean
get Bought Ui
Parameters
group: Group
Returns number
get Buy Token
get Current Pair Price Ui
Parameters
group: Group
Returns number
get Currently Suggested Premium
Parameters
group: Group
Returns number
get Expiry Timestamp In Epoch Seconds
Returns number
get Max Buy Ui
Parameters
group: Group
Returns number
get Max Sell Ui
Parameters
group: Group
Returns number
get Price Lower Limit Ui
Parameters
group: Group
Returns number
get Price Premium
Returns number
get Price Upper Limit Ui
Parameters
group: Group
Returns number
get Sell Token
get Sold Ui
Parameters
group: Group
Returns number
get Threshold Price Ui
Parameters
group: Group
Returns number
Private price Limit To Ui
Parameters
group: Group
sellTokenPerBuyTokenNative: number
Returns number
to String
Parameters
group: Group
Returns string
Static compute Premium
Static from
Parameters
Returns TokenConditionalSwap
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/TokenConditionalSwapDto.html b/ts/client/classes/TokenConditionalSwapDto.html
index 4f85b2d89..5503164b5 100644
--- a/ts/client/classes/TokenConditionalSwapDto.html
+++ b/ts/client/classes/TokenConditionalSwapDto.html
@@ -1 +1 @@
-TokenConditionalSwapDto | @blockworks-foundation/mango-v4 Class TokenConditionalSwapDto
Hierarchy
- TokenConditionalSwapDto
Index
Constructors
constructor
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
allow Creating Borrows
allow Creating Deposits
bought
buy Token Index
display Price Style
expiry Timestamp
id
intention
is Configured
maker Fee Rate
max Buy
max Sell
price Lower Limit
price Premium Rate
price Upper Limit
sell Token Index
sold
taker Fee Rate
Generated using TypeDoc
\ No newline at end of file
+TokenConditionalSwapDto | @blockworks-foundation/mango-v4 Class TokenConditionalSwapDto
Hierarchy
- TokenConditionalSwapDto
Index
Constructors
constructor
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
allow Creating Borrows
allow Creating Deposits
bought
buy Token Index
display Price Style
expiry Timestamp
id
intention
is Configured
maker Fee Rate
max Buy
max Sell
price Lower Limit
price Premium Rate
price Upper Limit
sell Token Index
sold
taker Fee Rate
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/TokenPosition.html b/ts/client/classes/TokenPosition.html
index 11f40b207..485f4d66c 100644
--- a/ts/client/classes/TokenPosition.html
+++ b/ts/client/classes/TokenPosition.html
@@ -1,7 +1,7 @@
-TokenPosition | @blockworks-foundation/mango-v4 Class TokenPosition
Hierarchy
- TokenPosition
Index
Constructors
constructor
Parameters
indexedPosition: I80F48
tokenIndex: TokenIndex
inUseCount: number
previousIndex: I80F48
cumulativeDepositInterest: number
cumulativeBorrowInterest: number
Returns TokenPosition
Properties
cumulative Borrow Interest
cumulative Deposit Interest
in Use Count
indexed Position
previous Index
token Index
Static Token Index Unset
Methods
balance
balance Ui
Parameters
bank: Bank
Returns number
UI balance, is signed
-
borrows
borrows Ui
Parameters
bank: Bank
Returns number
UI borrows, 0 if position has deposits
-
deposits
deposits Ui
Parameters
bank: Bank
Returns number
UI deposits, 0 if position has borrows
-
is Active
Returns boolean
to String
Parameters
Optional group: Group
Optional index: number
Returns string
Static from
Parameters
dto: TokenPositionDto
Returns TokenPosition
Generated using TypeDoc
\ No newline at end of file
+TokenPosition | @blockworks-foundation/mango-v4 Class TokenPosition
Hierarchy
- TokenPosition
Index
Constructors
constructor
Parameters
indexedPosition: I80F48
tokenIndex: TokenIndex
inUseCount: number
previousIndex: I80F48
cumulativeDepositInterest: number
cumulativeBorrowInterest: number
Returns TokenPosition
Properties
cumulative Borrow Interest
cumulative Deposit Interest
in Use Count
indexed Position
previous Index
token Index
Static Token Index Unset
Methods
balance
balance Ui
Parameters
bank: Bank
Returns number
UI balance, is signed
+
borrows
borrows Ui
Parameters
bank: Bank
Returns number
UI borrows, 0 if position has deposits
+
deposits
deposits Ui
Parameters
bank: Bank
Returns number
UI deposits, 0 if position has borrows
+
is Active
Returns boolean
to String
Parameters
Optional group: Group
Optional index: number
Returns string
Static from
Parameters
dto: TokenPositionDto
Returns TokenPosition
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/classes/TokenPositionDto.html b/ts/client/classes/TokenPositionDto.html
index 164106c5d..4003ed970 100644
--- a/ts/client/classes/TokenPositionDto.html
+++ b/ts/client/classes/TokenPositionDto.html
@@ -1 +1 @@
-TokenPositionDto | @blockworks-foundation/mango-v4 Class TokenPositionDto
Hierarchy
- TokenPositionDto
Index
Constructors
constructor
Parameters
indexedPosition: I80F48Dto
tokenIndex: number
inUseCount: number
reserved: number[]
previousIndex: I80F48Dto
cumulativeDepositInterest: number
cumulativeBorrowInterest: number
Returns TokenPositionDto
Properties
cumulative Borrow Interest
cumulative Deposit Interest
in Use Count
indexed Position
previous Index
reserved
token Index
Generated using TypeDoc
\ No newline at end of file
+TokenPositionDto | @blockworks-foundation/mango-v4 Class TokenPositionDto
Hierarchy
- TokenPositionDto
Index
Constructors
constructor
Parameters
indexedPosition: I80F48Dto
tokenIndex: number
inUseCount: number
reserved: number[]
previousIndex: I80F48Dto
cumulativeDepositInterest: number
cumulativeBorrowInterest: number
Returns TokenPositionDto
Properties
cumulative Borrow Interest
cumulative Deposit Interest
in Use Count
indexed Position
previous Index
reserved
token Index
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/enums/OracleProvider.html b/ts/client/enums/OracleProvider.html
index 0fbfb642a..046080f82 100644
--- a/ts/client/enums/OracleProvider.html
+++ b/ts/client/enums/OracleProvider.html
@@ -1 +1 @@
-OracleProvider | @blockworks-foundation/mango-v4 Enumeration OracleProvider
Generated using TypeDoc
\ No newline at end of file
+OracleProvider | @blockworks-foundation/mango-v4 Enumeration OracleProvider
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/enums/SwapMode.html b/ts/client/enums/SwapMode.html
index 440499226..c8bbc3594 100644
--- a/ts/client/enums/SwapMode.html
+++ b/ts/client/enums/SwapMode.html
@@ -1 +1 @@
-SwapMode | @blockworks-foundation/mango-v4 Enumeration SwapMode
Generated using TypeDoc
\ No newline at end of file
+SwapMode | @blockworks-foundation/mango-v4 Enumeration SwapMode
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/enums/TransactionErrors.html b/ts/client/enums/TransactionErrors.html
index 803b59a72..871f93b89 100644
--- a/ts/client/enums/TransactionErrors.html
+++ b/ts/client/enums/TransactionErrors.html
@@ -1 +1 @@
-TransactionErrors | @blockworks-foundation/mango-v4 Enumeration TransactionErrors
Generated using TypeDoc
\ No newline at end of file
+TransactionErrors | @blockworks-foundation/mango-v4 Enumeration TransactionErrors
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/index.html b/ts/client/index.html
index 3c995c668..5e2755e81 100644
--- a/ts/client/index.html
+++ b/ts/client/index.html
@@ -1,7 +1,7 @@
-@blockworks-foundation/mango-v4 @blockworks-foundation/mango-v4
Index
Namespaces
Enumerations
Classes
- As
- Bank
- Book
Side - Flash
Loan Withdraw - Group
- Health
Type - I80
F48 - I80
F48 Dto - Inner
Node - Interest
Rate Params - Leaf
Node - Mango
Account - Mango
Client - Mint
Info - Oracle
Config Params - Perp
Event Queue - Perp
Market - Perp
Oo - Perp
Oo Dto - Perp
Order - Perp
Position - Perp
Position Dto - Serum3
Market - Serum3
Orders - Serum3
Position Dto - Stub
Oracle - Token
Conditional Swap - Token
Conditional Swap Dto - Token
Position - Token
Position Dto
Interfaces
Type aliases
- Account
Info Map - Amm
Label - Book
Side Type - Flash
Loan Type - Mango
V4 - Modify
- Oracle
Config - Oracle
Config Dto - Parsed
Fill Event - Perp
Market Index - Perp
Order Side - Perp
Order Type - Perp
Self Trade Behavior - Platform
Fee - Price
Impact - Quote
Mint To Referrer - Routes
- Serum3
Order Type - Serum3
Self Trade Behavior - Serum3
Side - Stable
Price Model - Token
- Token
Conditional Swap Display Price Style - Token
Conditional Swap Intention - Token
Index - Token
Mint Address
Variables
Functions
- HUNDRED_
I80 F48 - MAX_
I80 F48 - MINUS_
ONE_ I80 F48 - ONE_
I80 F48 - RUST_
I64_ MAX - RUST_
I64_ MIN - RUST_
U64_ MAX - ZERO_
I80 F48 - bps
To Decimal - build
Fetch - build
Ix Gate - build
Versioned Tx - compute
Price Impact On Jup - contains
Jupiter Program - create
Associated Token Account Idempotent Instruction - create
Compute Budget Ix - fetch
Jupiter Transaction - fetch
Routes - get
Associated Token Address - get
Closest To Liquidation Perp Positions - get
Equity For Mango Accounts - get
Largest Perp Positions - get
On Chain Price For Mints - get
Perp Positions To Be Liquidated - get
Price Impact For Liqor - get
Risk Stats - is
Oracle Stale Or Unconfident - is
Pyth Oracle - is
Switchboard Oracle - parse
Switchboard Oracle - parse
Switchboard Oracle V1 - parse
Switchboard Oracle V2 - parse
Tx For Known Errors - percentage
To Decimal - prepare
Mango Router Instructions - round
To5 - send
Transaction - switchboard
Decimal To Big - to
Native - to
Native I80 F48 - to
Native I80 F48 For Quote - to
Native Sell Per Buy Token Price - to
Ui Decimals - to
Ui Decimals For Quote - to
Ui I80 F48 - to
Ui Sell Per Buy Token Price
Type aliases
Account Info Map
Amm Label
Book Side Type
Flash Loan Type
Mango V4
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" } }, { name: "util0"; type: { defined: "I80F48" } }, { name: "rate0"; type: { defined: "I80F48" } }, { name: "util1"; type: { defined: "I80F48" } }, { name: "rate1"; type: { defined: "I80F48" } }, { name: "maxRate"; type: { defined: "I80F48" } }, { 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" } }, { 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: ["Min fraction of deposits that must remain in the vault when borrowing."]; 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" }, { name: "padding"; type: { array: ["u8", 6] } }, { 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" }, { name: "maintWeightShiftStart"; type: "u64" }, { name: "maintWeightShiftEnd"; type: "u64" }, { name: "maintWeightShiftDurationInv"; type: { defined: "I80F48" } }, { name: "maintWeightShiftAssetTarget"; type: { defined: "I80F48" } }, { name: "maintWeightShiftLiabTarget"; type: { defined: "I80F48" } }, { name: "fallbackOracle"; type: "publicKey" }, { docs: ["zero means none, in token native"]; name: "depositLimit"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 1968] } }]; 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" }, { name: "fastListingsInInterval"; type: "u16" }, { 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" }, { name: "reserved"; type: { array: ["u8", 1880] } }]; 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" }]
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: "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: "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: "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: "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: "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", "owner"] }, { 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"; relations: ["admin"] }, { 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" }]; 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: "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: ["Amount of pnl that was realized by bringing the base position closer to 0.", "", "The settlement of this type of pnl is limited by settle_pnl_limit_realized_trade.", "Settling pnl reduces this value once other_pnl below is exhausted."]; name: "realizedTradePnlNative"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl realized from fees, funding and liquidation.", "", "This type of realized pnl is always settleable.", "Settling pnl reduces this value first."]; name: "realizedOtherPnlNative"; type: { defined: "I80F48" } }, { docs: ["Settle limit contribution from realized pnl.", "", "Every time pnl is realized, this is increased by a fraction of the stable", "value of the realization. It magnitude decreases when realized pnl drops below its value."]; name: "settlePnlLimitRealizedTrade"; 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: "reserved"; type: { array: ["u8", 64] } }]; 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: "padding4"; type: { array: ["u8", 16] } }, { 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: "padding1"; type: { array: ["u8", 144] } }]; 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: "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
Type parameters
T
R
Oracle Config
Type declaration
conf Filter: I80F48
max Staleness Slots: BN
Oracle Config Dto
Type declaration
conf Filter: I80F48Dto
max Staleness Slots: BN
Parsed Fill Event
Perp Market Index
Perp Order Side
Perp Order Type
Perp Self Trade Behavior
Platform Fee
Type declaration
fee Account: string
fee Bps: number
Price Impact
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
Quote Mint To Referrer
Routes
Serum3 Order Type
Serum3 Self Trade Behavior
Serum3 Side
Stable Price Model
Type declaration
delay Accumulator Price: number
delay Accumulator Time: number
delay Growth Limit: number
delay Interval Seconds: number
delay Prices: number[]
last Delay Interval Index: number
last Update Timestamp: BN
stable Growth Limit: number
stable Price: number
Token
Type declaration
address: string
chain Id: number
decimals: number
extensions: { coingeckoId?: string }
Optional coingecko Id?: string
logoURI: string
name: string
symbol: string
tags: string[]
Token Conditional Swap Display Price Style
Token Conditional Swap Intention
Token Index
Token Mint Address
Variables
Const COMPUTE_ BUDGET_ PROGRAM_ ID
Const I64_ MAX_ BN
Const IDL
Const JUPITER
Type declaration
V3: PublicKey
V4: PublicKey
V6: PublicKey
Const MANGO_ ROUTER_ API_ URL
Const MANGO_ V4_ ID
Type declaration
devnet: PublicKey
mainnet- beta: PublicKey
testnet: PublicKey
Const MANGO_ V4_ MAIN_ GROUP
Const MAX_ RECENT_ PRIORITY_ FEE_ ACCOUNTS
Const Null Perp Edit Params
Const Null Token Edit Params
Const OPENBOOK_ PROGRAM_ ID
Type declaration
devnet: PublicKey
mainnet- beta: PublicKey
Const QUOTE_ DECIMALS
Const True Ix Gate Params
Const U64_ MAX_ BN
Const USDC_ MINT
Functions
HUNDRED_ I80 F48
Returns I80F48
MAX_ I80 F48
Returns I80F48
MINUS_ ONE_ I80 F48
Returns I80F48
ONE_ I80 F48
Returns I80F48
RUST_ I64_ MAX
Returns BN
RUST_ I64_ MIN
Returns BN
RUST_ U64_ MAX
Returns BN
ZERO_ I80 F48
Returns I80F48
bps To Decimal
Parameters
bps: number
Returns number
build Fetch
Returns Promise<(input: RequestInfo | URL, init?: RequestInit) => Promise<Response>>
build Ix Gate
Parameters
p: IxGateParams
Returns BN
build Versioned Tx
Parameters
provider: AnchorProvider
ix: TransactionInstruction[]
additionalSigners: Signer[] = []
alts: AddressLookupTableAccount[] = []
Returns Promise<VersionedTransaction>
compute Price Impact On Jup
-
+
@blockworks-foundation/mango-v4 @blockworks-foundation/mango-v4
Index
Namespaces
Enumerations
Classes
- As
- Bank
- Book
Side - Flash
Loan Withdraw - Group
- Health
Type - I80
F48 - I80
F48 Dto - Inner
Node - Interest
Rate Params - Leaf
Node - Mango
Account - Mango
Client - Mint
Info - Oracle
Config Params - Perp
Event Queue - Perp
Market - Perp
Oo - Perp
Oo Dto - Perp
Order - Perp
Position - Perp
Position Dto - Serum3
Market - Serum3
Orders - Serum3
Position Dto - Stub
Oracle - Token
Conditional Swap - Token
Conditional Swap Dto - Token
Position - Token
Position Dto
Interfaces
Type aliases
- Account
Info Map - Amm
Label - Book
Side Type - Flash
Loan Type - Mango
V4 - Modify
- Oracle
Config - Oracle
Config Dto - Parsed
Fill Event - Perp
Market Index - Perp
Order Side - Perp
Order Type - Perp
Self Trade Behavior - Platform
Fee - Price
Impact - Quote
Mint To Referrer - Routes
- Serum3
Order Type - Serum3
Self Trade Behavior - Serum3
Side - Stable
Price Model - Token
- Token
Conditional Swap Display Price Style - Token
Conditional Swap Intention - Token
Index - Token
Mint Address
Variables
Functions
- HUNDRED_
I80 F48 - MAX_
I80 F48 - MINUS_
ONE_ I80 F48 - ONE_
I80 F48 - RUST_
I64_ MAX - RUST_
I64_ MIN - RUST_
U64_ MAX - ZERO_
I80 F48 - bps
To Decimal - build
Fetch - build
Ix Gate - build
Versioned Tx - compute
Price Impact On Jup - contains
Jupiter Program - create
Associated Token Account Idempotent Instruction - create
Compute Budget Ix - fetch
Jupiter Transaction - fetch
Routes - get
Associated Token Address - get
Closest To Liquidation Perp Positions - get
Equity For Mango Accounts - get
Largest Perp Positions - get
On Chain Price For Mints - get
Perp Positions To Be Liquidated - get
Price Impact For Liqor - get
Risk Stats - is
Oracle Stale Or Unconfident - is
Pyth Oracle - is
Switchboard Oracle - parse
Switchboard Oracle - parse
Switchboard Oracle V1 - parse
Switchboard Oracle V2 - parse
Tx For Known Errors - percentage
To Decimal - prepare
Mango Router Instructions - round
To5 - send
Transaction - switchboard
Decimal To Big - to
Native - to
Native I80 F48 - to
Native I80 F48 For Quote - to
Native Sell Per Buy Token Price - to
Ui Decimals - to
Ui Decimals For Quote - to
Ui I80 F48 - to
Ui Sell Per Buy Token Price
Type aliases
Account Info Map
Amm Label
Book Side Type
Flash Loan Type
Mango V4
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" } }, { name: "util0"; type: { defined: "I80F48" } }, { name: "rate0"; type: { defined: "I80F48" } }, { name: "util1"; type: { defined: "I80F48" } }, { name: "rate1"; type: { defined: "I80F48" } }, { name: "maxRate"; type: { defined: "I80F48" } }, { 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" } }, { 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: ["Min fraction of deposits that must remain in the vault when borrowing."]; 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" }, { name: "padding"; type: { array: ["u8", 6] } }, { 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" }, { name: "maintWeightShiftStart"; type: "u64" }, { name: "maintWeightShiftEnd"; type: "u64" }, { name: "maintWeightShiftDurationInv"; type: { defined: "I80F48" } }, { name: "maintWeightShiftAssetTarget"; type: { defined: "I80F48" } }, { name: "maintWeightShiftLiabTarget"; type: { defined: "I80F48" } }, { name: "fallbackOracle"; type: "publicKey" }, { docs: ["zero means none, in token native"]; name: "depositLimit"; type: "u64" }, { name: "reserved"; type: { array: ["u8", 1968] } }]; 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" }, { name: "fastListingsInInterval"; type: "u16" }, { 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" }, { name: "reserved"; type: { array: ["u8", 1880] } }]; 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" }]
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: "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: "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: "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: "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: "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", "owner"] }, { 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"; relations: ["admin"] }, { 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" }]; 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: "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: ["Amount of pnl that was realized by bringing the base position closer to 0.", "", "The settlement of this type of pnl is limited by settle_pnl_limit_realized_trade.", "Settling pnl reduces this value once other_pnl below is exhausted."]; name: "realizedTradePnlNative"; type: { defined: "I80F48" } }, { docs: ["Amount of pnl realized from fees, funding and liquidation.", "", "This type of realized pnl is always settleable.", "Settling pnl reduces this value first."]; name: "realizedOtherPnlNative"; type: { defined: "I80F48" } }, { docs: ["Settle limit contribution from realized pnl.", "", "Every time pnl is realized, this is increased by a fraction of the stable", "value of the realization. It magnitude decreases when realized pnl drops below its value."]; name: "settlePnlLimitRealizedTrade"; 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: "reserved"; type: { array: ["u8", 64] } }]; 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: "padding4"; type: { array: ["u8", 16] } }, { 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: "padding1"; type: { array: ["u8", 144] } }]; 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: "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
Type parameters
T
R
Oracle Config
Type declaration
conf Filter: I80F48
max Staleness Slots: BN
Oracle Config Dto
Type declaration
conf Filter: I80F48Dto
max Staleness Slots: BN
Parsed Fill Event
Perp Market Index
Perp Order Side
Perp Order Type
Perp Self Trade Behavior
Platform Fee
Type declaration
fee Account: string
fee Bps: number
Price Impact
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
Quote Mint To Referrer
Routes
Serum3 Order Type
Serum3 Self Trade Behavior
Serum3 Side
Stable Price Model
Type declaration
delay Accumulator Price: number
delay Accumulator Time: number
delay Growth Limit: number
delay Interval Seconds: number
delay Prices: number[]
last Delay Interval Index: number
last Update Timestamp: BN
stable Growth Limit: number
stable Price: number
Token
Type declaration
address: string
chain Id: number
decimals: number
extensions: { coingeckoId?: string }
Optional coingecko Id?: string
logoURI: string
name: string
symbol: string
tags: string[]
Token Conditional Swap Display Price Style
Token Conditional Swap Intention
Token Index
Token Mint Address
Variables
Const COMPUTE_ BUDGET_ PROGRAM_ ID
Const I64_ MAX_ BN
Const IDL
Const JUPITER
Type declaration
V3: PublicKey
V4: PublicKey
V6: PublicKey
Const MANGO_ ROUTER_ API_ URL
Const MANGO_ V4_ ID
Type declaration
devnet: PublicKey
mainnet- beta: PublicKey
testnet: PublicKey
Const MANGO_ V4_ MAIN_ GROUP
Const MAX_ RECENT_ PRIORITY_ FEE_ ACCOUNTS
Const Null Perp Edit Params
Const Null Token Edit Params
Const OPENBOOK_ PROGRAM_ ID
Type declaration
devnet: PublicKey
mainnet- beta: PublicKey
Const QUOTE_ DECIMALS
Const True Ix Gate Params
Const U64_ MAX_ BN
Const USDC_ MINT
Functions
HUNDRED_ I80 F48
Returns I80F48
MAX_ I80 F48
Returns I80F48
MINUS_ ONE_ I80 F48
Returns I80F48
ONE_ I80 F48
Returns I80F48
RUST_ I64_ MAX
Returns BN
RUST_ I64_ MIN
Returns BN
RUST_ U64_ MAX
Returns BN
ZERO_ I80 F48
Returns I80F48
bps To Decimal
Parameters
bps: number
Returns number
build Fetch
Returns Promise<(input: RequestInfo | URL, init?: RequestInit) => Promise<Response>>
build Ix Gate
Parameters
p: IxGateParams
Returns BN
build Versioned Tx
Parameters
provider: AnchorProvider
ix: TransactionInstruction[]
additionalSigners: Signer[] = []
alts: AddressLookupTableAccount[] = []
Returns Promise<VersionedTransaction>
compute Price Impact On Jup
-
Returns price impact in bps i.e. 0 to 10,000
returns -1 if data is missing
-Parameters
pis: PriceImpact[]
usdcAmount: number
tokenName: string
Returns number
contains Jupiter Program
Parameters
logMessages: string[]
Returns boolean
create Associated Token Account Idempotent Instruction
Parameters
payer: PublicKey
owner: PublicKey
mint: PublicKey
Returns Promise<TransactionInstruction>
create Compute Budget Ix
Parameters
microLamports: number
Returns TransactionInstruction
fetch Jupiter Transaction
Parameters
connection: Connection
selectedRoute: RouteInfo
userPublicKey: PublicKey
slippage: number
inputMint: PublicKey
outputMint: PublicKey
Returns Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>
fetch 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>
get Associated Token Address
-
+
Parameters
pis: PriceImpact[]
usdcAmount: number
tokenName: string
Returns number
contains Jupiter Program
Parameters
logMessages: string[]
Returns boolean
create Associated Token Account Idempotent Instruction
Parameters
payer: PublicKey
owner: PublicKey
mint: PublicKey
Returns Promise<TransactionInstruction>
create Compute Budget Ix
Parameters
microLamports: number
Returns TransactionInstruction
fetch Jupiter Transaction
Parameters
connection: Connection
selectedRoute: RouteInfo
userPublicKey: PublicKey
slippage: number
inputMint: PublicKey
outputMint: PublicKey
Returns Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>
fetch 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>
get Associated Token Address
-
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
-
get Closest To Liquidation Perp Positions
-
+
get Closest To Liquidation Perp Positions
-
Returns a list of perp positions alongwith their mango account, sorted ascending by closest to liquidation
-Parameters
client: MangoClient
group: Group
Optional accounts: MangoAccount[]
filterByNotionalValueUi: number = 10
Returns Promise<{ mangoAccount: PublicKey; pct: I80F48; perpPosition: PerpPosition }[]>
get Equity For Mango Accounts
Parameters
client: MangoClient
group: Group
mangoAccountPks: PublicKey[]
allMangoAccounts: MangoAccount[]
Returns Promise<AccountEquity[]>
get Largest Perp Positions
-
+
Parameters
client: MangoClient
group: Group
Optional accounts: MangoAccount[]
filterByNotionalValueUi: number = 10
Returns Promise<{ mangoAccount: PublicKey; pct: I80F48; perpPosition: PerpPosition }[]>
get Equity For Mango Accounts
Parameters
client: MangoClient
group: Group
mangoAccountPks: PublicKey[]
allMangoAccounts: MangoAccount[]
Returns Promise<AccountEquity[]>
get Largest Perp Positions
-
Returns a list of perp positions alongwith their mango account, sorted descending by notional value
-Parameters
client: MangoClient
group: Group
Optional accounts: MangoAccount[]
Optional perpMarket: PerpMarket
Returns Promise<{ mangoAccount: PublicKey; perpPosition: PerpPosition }[]>
get On Chain Price For Mints
Parameters
mints: string[]
Returns Promise<number[]>
get Perp Positions To Be Liquidated
Parameters
group: Group
mangoAccounts: MangoAccount[]
Returns Promise<PerpPositionsToBeLiquidated[]>
get Price Impact For Liqor
Parameters
group: Group
pis: PriceImpact[]
mangoAccounts: MangoAccount[]
Returns Promise<LiqorPriceImpact[]>
get Risk Stats
Parameters
client: MangoClient
group: Group
change: number = 0.4
Returns Promise<Risk>
is Oracle Stale Or Unconfident
is Pyth Oracle
Parameters
accountInfo: AccountInfo<Buffer>
Returns boolean
is Switchboard Oracle
Parameters
accountInfo: AccountInfo<Buffer>
Returns boolean
parse Switchboard Oracle
Parameters
accountInfo: AccountInfo<Buffer>
connection: Connection
Returns Promise<{ lastUpdatedSlot: number; price: number; uiDeviation: number }>
ui price
-
parse Switchboard Oracle V1
Parameters
accountInfo: AccountInfo<Buffer>
Returns { lastUpdatedSlot: number; price: number; uiDeviation: number }
last Updated Slot: number
price: number
ui Deviation: number
parse Switchboard Oracle V2
Parameters
program: default
accountInfo: AccountInfo<Buffer>
Returns { lastUpdatedSlot: number; price: number; uiDeviation: number }
last Updated Slot: number
price: number
ui Deviation: number
parse Tx For Known Errors
Parameters
connection: Connection
signature: string
Returns Promise<TransactionErrors>
percentage To Decimal
Parameters
percentage: number
Returns number
prepare Mango Router Instructions
Parameters
selectedRoute: RouteInfo
inputMint: PublicKey
outputMint: PublicKey
userPublicKey: PublicKey
Returns Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>
round To5
Parameters
number: any
Returns number
send Transaction
Parameters
provider: AnchorProvider
ixs: TransactionInstruction[]
alts: AddressLookupTableAccount[]
opts: any = {}
Returns Promise<MangoSignatureStatus>
switchboard Decimal To Big
Parameters
sbDecimal: { mantissa: BN; scale: number }
mantissa: BN
scale: number
Returns Big
to Native
Parameters
uiAmount: number
decimals: number
Returns BN
to Native I80 F48
Parameters
uiAmount: number
decimals: number
Returns I80F48
to Native I80 F48 For Quote
Parameters
uiAmount: number
Returns I80F48
to Native Sell Per Buy Token Price
to Ui Decimals
Parameters
nativeAmount: number | BN | I80F48
decimals: number
Returns number
to Ui Decimals For Quote
Parameters
nativeAmount: number | BN | I80F48
Returns number
to Ui I80 F48
to Ui Sell Per Buy Token Price
Generated using TypeDoc
\ No newline at end of file
+Parameters
client: MangoClient
group: Group
Optional accounts: MangoAccount[]
Optional perpMarket: PerpMarket
Returns Promise<{ mangoAccount: PublicKey; perpPosition: PerpPosition }[]>
get On Chain Price For Mints
Parameters
mints: string[]
Returns Promise<number[]>
get Perp Positions To Be Liquidated
Parameters
group: Group
mangoAccounts: MangoAccount[]
Returns Promise<PerpPositionsToBeLiquidated[]>
get Price Impact For Liqor
Parameters
group: Group
pis: PriceImpact[]
mangoAccounts: MangoAccount[]
Returns Promise<LiqorPriceImpact[]>
get Risk Stats
Parameters
client: MangoClient
group: Group
change: number = 0.4
Returns Promise<Risk>
is Oracle Stale Or Unconfident
is Pyth Oracle
Parameters
accountInfo: AccountInfo<Buffer>
Returns boolean
is Switchboard Oracle
Parameters
accountInfo: AccountInfo<Buffer>
Returns boolean
parse Switchboard Oracle
Parameters
accountInfo: AccountInfo<Buffer>
connection: Connection
Returns Promise<{ lastUpdatedSlot: number; price: number; uiDeviation: number }>
ui price
+
parse Switchboard Oracle V1
Parameters
accountInfo: AccountInfo<Buffer>
Returns { lastUpdatedSlot: number; price: number; uiDeviation: number }
last Updated Slot: number
price: number
ui Deviation: number
parse Switchboard Oracle V2
Parameters
program: default
accountInfo: AccountInfo<Buffer>
Returns { lastUpdatedSlot: number; price: number; uiDeviation: number }
last Updated Slot: number
price: number
ui Deviation: number
parse Tx For Known Errors
Parameters
connection: Connection
signature: string
Returns Promise<TransactionErrors>
percentage To Decimal
Parameters
percentage: number
Returns number
prepare Mango Router Instructions
Parameters
selectedRoute: RouteInfo
inputMint: PublicKey
outputMint: PublicKey
userPublicKey: PublicKey
Returns Promise<[TransactionInstruction[], AddressLookupTableAccount[]]>
round To5
Parameters
number: any
Returns number
send Transaction
Parameters
provider: AnchorProvider
ixs: TransactionInstruction[]
alts: AddressLookupTableAccount[]
opts: any = {}
Returns Promise<MangoSignatureStatus>
switchboard Decimal To Big
Parameters
sbDecimal: { mantissa: BN; scale: number }
mantissa: BN
scale: number
Returns Big
to Native
Parameters
uiAmount: number
decimals: number
Returns BN
to Native I80 F48
Parameters
uiAmount: number
decimals: number
Returns I80F48
to Native I80 F48 For Quote
Parameters
uiAmount: number
Returns I80F48
to Native Sell Per Buy Token Price
to Ui Decimals
Parameters
nativeAmount: number | BN | I80F48
decimals: number
Returns number
to Ui Decimals For Quote
Parameters
nativeAmount: number | BN | I80F48
Returns number
to Ui I80 F48
to Ui Sell Per Buy Token Price
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/AccountEquity.html b/ts/client/interfaces/AccountEquity.html
index 3e728469c..f4c370b75 100644
--- a/ts/client/interfaces/AccountEquity.html
+++ b/ts/client/interfaces/AccountEquity.html
@@ -1 +1 @@
-AccountEquity | @blockworks-foundation/mango-v4 Interface AccountEquity
Generated using TypeDoc
\ No newline at end of file
+AccountEquity | @blockworks-foundation/mango-v4 Interface AccountEquity
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/BankForHealth.html b/ts/client/interfaces/BankForHealth.html
index 28421a42b..d5c795628 100644
--- a/ts/client/interfaces/BankForHealth.html
+++ b/ts/client/interfaces/BankForHealth.html
@@ -1 +1 @@
-BankForHealth | @blockworks-foundation/mango-v4 Interface BankForHealth
Hierarchy
- BankForHealth
Implemented by
Index
Properties
borrow Weight Scale Start Quote
deposit Weight Scale Start Quote
init Asset Weight
init Liab Weight
maint Asset Weight
maint Liab Weight
price
stable Price Model
token Index
Methods
maint Weights
native Borrows
Returns I80F48
native Deposits
Returns I80F48
scaled Init Asset Weight
scaled Init Liab Weight
Generated using TypeDoc
\ No newline at end of file
+BankForHealth | @blockworks-foundation/mango-v4 Interface BankForHealth
Hierarchy
- BankForHealth
Implemented by
Index
Properties
borrow Weight Scale Start Quote
deposit Weight Scale Start Quote
init Asset Weight
init Liab Weight
maint Asset Weight
maint Liab Weight
price
stable Price Model
token Index
Methods
maint Weights
native Borrows
Returns I80F48
native Deposits
Returns I80F48
scaled Init Asset Weight
scaled Init Liab Weight
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/CumulativeFunding.html b/ts/client/interfaces/CumulativeFunding.html
index 5a0ed0276..bc5b1a4d0 100644
--- a/ts/client/interfaces/CumulativeFunding.html
+++ b/ts/client/interfaces/CumulativeFunding.html
@@ -1 +1 @@
-CumulativeFunding | @blockworks-foundation/mango-v4 Interface CumulativeFunding
Generated using TypeDoc
\ No newline at end of file
+CumulativeFunding | @blockworks-foundation/mango-v4 Interface CumulativeFunding
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/Event.html b/ts/client/interfaces/Event.html
index 07f7dc652..c2988dc1e 100644
--- a/ts/client/interfaces/Event.html
+++ b/ts/client/interfaces/Event.html
@@ -1 +1 @@
-Event | @blockworks-foundation/mango-v4 Interface Event
Generated using TypeDoc
\ No newline at end of file
+Event | @blockworks-foundation/mango-v4 Interface Event
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/ExactOutSwapParams.html b/ts/client/interfaces/ExactOutSwapParams.html
index afd214844..f388cc25f 100644
--- a/ts/client/interfaces/ExactOutSwapParams.html
+++ b/ts/client/interfaces/ExactOutSwapParams.html
@@ -1,3 +1,3 @@
-ExactOutSwapParams | @blockworks-foundation/mango-v4 Interface ExactOutSwapParams
Hierarchy
- SwapParams
- ExactOutSwapParams
Index
Properties
amount
+ExactOutSwapParams | @blockworks-foundation/mango-v4 Interface ExactOutSwapParams
Hierarchy
- SwapParams
- ExactOutSwapParams
Index
Properties
amount
amount is used for instruction and can be null when it is an intermediate swap, only the first swap has an amount
-destination Mint
in Amount
Optional open Orders Address
Optional overflow Fee Account
Optional platform Fee
Optional quote Mint To Referrer
slippage Bps
source Mint
swap Mode
user Destination Token Account
user Source Token Account
user Transfer Authority
Generated using TypeDoc
\ No newline at end of file
+destination Mint
in Amount
Optional open Orders Address
Optional overflow Fee Account
Optional platform Fee
Optional quote Mint To Referrer
slippage Bps
source Mint
swap Mode
user Destination Token Account
user Source Token Account
user Transfer Authority
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/Fee.html b/ts/client/interfaces/Fee.html
index 394188165..69a0a97ae 100644
--- a/ts/client/interfaces/Fee.html
+++ b/ts/client/interfaces/Fee.html
@@ -1 +1 @@
-Fee | @blockworks-foundation/mango-v4 Interface Fee
Generated using TypeDoc
\ No newline at end of file
+Fee | @blockworks-foundation/mango-v4 Interface Fee
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/FillEvent.html b/ts/client/interfaces/FillEvent.html
index 225cf32d1..92fb8fb3e 100644
--- a/ts/client/interfaces/FillEvent.html
+++ b/ts/client/interfaces/FillEvent.html
@@ -1 +1 @@
-FillEvent | @blockworks-foundation/mango-v4 Interface FillEvent
Hierarchy
- Event
- FillEvent
Index
Properties
event Type
maker
maker Fee
maker Order Id
maker Out
maker Slot
maker Timestamp
price
quantity
seq Num
taker
taker Client Order Id
taker Fee
taker Order Id
taker Side
timestamp
Generated using TypeDoc
\ No newline at end of file
+FillEvent | @blockworks-foundation/mango-v4 Interface FillEvent
Hierarchy
- Event
- FillEvent
Index
Properties
event Type
maker
maker Fee
maker Order Id
maker Out
maker Slot
maker Timestamp
price
quantity
seq Num
taker
taker Client Order Id
taker Fee
taker Order Id
taker Side
timestamp
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/LiqorPriceImpact.html b/ts/client/interfaces/LiqorPriceImpact.html
index c38184872..82af437c1 100644
--- a/ts/client/interfaces/LiqorPriceImpact.html
+++ b/ts/client/interfaces/LiqorPriceImpact.html
@@ -1 +1 @@
-LiqorPriceImpact | @blockworks-foundation/mango-v4 Interface LiqorPriceImpact
Hierarchy
- LiqorPriceImpact
Index
Properties
Assets
Type declaration
highlight: boolean
val: number
Assets Slippage
Type declaration
highlight: boolean
val: number
Coin
Type declaration
highlight: boolean
val: string
Future Price
Type declaration
highlight: boolean
val: number
Jup Price
Type declaration
highlight: boolean
val: number
Liabs
Type declaration
highlight: boolean
val: number
Liabs Slippage
Type declaration
highlight: boolean
val: number
Oracle Price
Type declaration
highlight: boolean
val: number
V4 Liq Fee
Type declaration
highlight: boolean
val: number
Generated using TypeDoc
\ No newline at end of file
+LiqorPriceImpact | @blockworks-foundation/mango-v4 Interface LiqorPriceImpact
Hierarchy
- LiqorPriceImpact
Index
Properties
Assets
Type declaration
highlight: boolean
val: number
Assets Slippage
Type declaration
highlight: boolean
val: number
Coin
Type declaration
highlight: boolean
val: string
Future Price
Type declaration
highlight: boolean
val: number
Jup Price
Type declaration
highlight: boolean
val: number
Liabs
Type declaration
highlight: boolean
val: number
Liabs Slippage
Type declaration
highlight: boolean
val: number
Oracle Price
Type declaration
highlight: boolean
val: number
V4 Liq Fee
Type declaration
highlight: boolean
val: number
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/LiquidateEvent.html b/ts/client/interfaces/LiquidateEvent.html
index fe98c3b1c..d9b70a5ce 100644
--- a/ts/client/interfaces/LiquidateEvent.html
+++ b/ts/client/interfaces/LiquidateEvent.html
@@ -1 +1 @@
-LiquidateEvent | @blockworks-foundation/mango-v4 Interface LiquidateEvent
Generated using TypeDoc
\ No newline at end of file
+LiquidateEvent | @blockworks-foundation/mango-v4 Interface LiquidateEvent
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/MangoSignatureStatus.html b/ts/client/interfaces/MangoSignatureStatus.html
index e3477543d..0a38099e9 100644
--- a/ts/client/interfaces/MangoSignatureStatus.html
+++ b/ts/client/interfaces/MangoSignatureStatus.html
@@ -1 +1 @@
-MangoSignatureStatus | @blockworks-foundation/mango-v4 Interface MangoSignatureStatus
Generated using TypeDoc
\ No newline at end of file
+MangoSignatureStatus | @blockworks-foundation/mango-v4 Interface MangoSignatureStatus
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/MarketInfo.html b/ts/client/interfaces/MarketInfo.html
index f38e4d986..250cb1304 100644
--- a/ts/client/interfaces/MarketInfo.html
+++ b/ts/client/interfaces/MarketInfo.html
@@ -1 +1 @@
-MarketInfo | @blockworks-foundation/mango-v4 Interface MarketInfo
Generated using TypeDoc
\ No newline at end of file
+MarketInfo | @blockworks-foundation/mango-v4 Interface MarketInfo
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/OutEvent.html b/ts/client/interfaces/OutEvent.html
index e4cfd64a3..521443a89 100644
--- a/ts/client/interfaces/OutEvent.html
+++ b/ts/client/interfaces/OutEvent.html
@@ -1 +1 @@
-OutEvent | @blockworks-foundation/mango-v4 Interface OutEvent
Generated using TypeDoc
\ No newline at end of file
+OutEvent | @blockworks-foundation/mango-v4 Interface OutEvent
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/PerpPositionsToBeLiquidated.html b/ts/client/interfaces/PerpPositionsToBeLiquidated.html
index f4fbcfcf2..a239c4f92 100644
--- a/ts/client/interfaces/PerpPositionsToBeLiquidated.html
+++ b/ts/client/interfaces/PerpPositionsToBeLiquidated.html
@@ -1 +1 @@
-PerpPositionsToBeLiquidated | @blockworks-foundation/mango-v4 Interface PerpPositionsToBeLiquidated
Generated using TypeDoc
\ No newline at end of file
+PerpPositionsToBeLiquidated | @blockworks-foundation/mango-v4 Interface PerpPositionsToBeLiquidated
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/Quote.html b/ts/client/interfaces/Quote.html
index 5e474f241..d06905f08 100644
--- a/ts/client/interfaces/Quote.html
+++ b/ts/client/interfaces/Quote.html
@@ -1 +1 @@
-Quote | @blockworks-foundation/mango-v4 Interface Quote
Generated using TypeDoc
\ No newline at end of file
+Quote | @blockworks-foundation/mango-v4 Interface Quote
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/QuoteParams.html b/ts/client/interfaces/QuoteParams.html
index e3460bb72..ad99c12ff 100644
--- a/ts/client/interfaces/QuoteParams.html
+++ b/ts/client/interfaces/QuoteParams.html
@@ -1 +1 @@
-QuoteParams | @blockworks-foundation/mango-v4 Interface QuoteParams
Generated using TypeDoc
\ No newline at end of file
+QuoteParams | @blockworks-foundation/mango-v4 Interface QuoteParams
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/Risk.html b/ts/client/interfaces/Risk.html
index 16b5ef787..0a08316eb 100644
--- a/ts/client/interfaces/Risk.html
+++ b/ts/client/interfaces/Risk.html
@@ -1 +1 @@
-Risk | @blockworks-foundation/mango-v4 Interface Risk
Hierarchy
- Risk
Index
Properties
asset Drop
Type declaration
data: LiqorPriceImpact[]
title: string
asset Rally
Type declaration
data: LiqorPriceImpact[]
title: string
liqor Equity
Type declaration
data: AccountEquity[]
title: string
market Maker Equity
Type declaration
data: AccountEquity[]
title: string
perp Drop
Type declaration
data: PerpPositionsToBeLiquidated[]
title: string
perp Rally
Type declaration
data: PerpPositionsToBeLiquidated[]
title: string
usdc Depeg
Type declaration
data: LiqorPriceImpact[]
title: string
usdt Depeg
Type declaration
data: LiqorPriceImpact[]
title: string
Generated using TypeDoc
\ No newline at end of file
+Risk | @blockworks-foundation/mango-v4 Interface Risk
Hierarchy
- Risk
Index
Properties
asset Drop
Type declaration
data: LiqorPriceImpact[]
title: string
asset Rally
Type declaration
data: LiqorPriceImpact[]
title: string
liqor Equity
Type declaration
data: AccountEquity[]
title: string
market Maker Equity
Type declaration
data: AccountEquity[]
title: string
perp Drop
Type declaration
data: PerpPositionsToBeLiquidated[]
title: string
perp Rally
Type declaration
data: PerpPositionsToBeLiquidated[]
title: string
usdc Depeg
Type declaration
data: LiqorPriceImpact[]
title: string
usdt Depeg
Type declaration
data: LiqorPriceImpact[]
title: string
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/RouteInfo.html b/ts/client/interfaces/RouteInfo.html
index e378a2bda..11fde63bb 100644
--- a/ts/client/interfaces/RouteInfo.html
+++ b/ts/client/interfaces/RouteInfo.html
@@ -1 +1 @@
-RouteInfo | @blockworks-foundation/mango-v4 Interface RouteInfo
Generated using TypeDoc
\ No newline at end of file
+RouteInfo | @blockworks-foundation/mango-v4 Interface RouteInfo
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/SwapParams.html b/ts/client/interfaces/SwapParams.html
index 5d67554a1..65cbae539 100644
--- a/ts/client/interfaces/SwapParams.html
+++ b/ts/client/interfaces/SwapParams.html
@@ -1,3 +1,3 @@
-SwapParams | @blockworks-foundation/mango-v4 Interface SwapParams
Hierarchy
- SwapParams
Index
Properties
amount
+SwapParams | @blockworks-foundation/mango-v4 Interface SwapParams
Hierarchy
- SwapParams
Index
Properties
amount
amount is used for instruction and can be null when it is an intermediate swap, only the first swap has an amount
-destination Mint
Optional open Orders Address
Optional quote Mint To Referrer
source Mint
swap Mode
user Destination Token Account
user Source Token Account
user Transfer Authority
Generated using TypeDoc
\ No newline at end of file
+destination Mint
Optional open Orders Address
Optional quote Mint To Referrer
source Mint
swap Mode
user Destination Token Account
user Source Token Account
user Transfer Authority
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/interfaces/TransactionFeeInfo.html b/ts/client/interfaces/TransactionFeeInfo.html
index 3f9e3af3d..7d343d73b 100644
--- a/ts/client/interfaces/TransactionFeeInfo.html
+++ b/ts/client/interfaces/TransactionFeeInfo.html
@@ -1 +1 @@
-TransactionFeeInfo | @blockworks-foundation/mango-v4 Interface TransactionFeeInfo
Generated using TypeDoc
\ No newline at end of file
+TransactionFeeInfo | @blockworks-foundation/mango-v4 Interface TransactionFeeInfo
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/BookSideType.html b/ts/client/modules/BookSideType.html
index 3a40e6653..9c2292d25 100644
--- a/ts/client/modules/BookSideType.html
+++ b/ts/client/modules/BookSideType.html
@@ -1 +1 @@
-BookSideType | @blockworks-foundation/mango-v4 Namespace BookSideType
Generated using TypeDoc
\ No newline at end of file
+BookSideType | @blockworks-foundation/mango-v4 Namespace BookSideType
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/FlashLoanType.html b/ts/client/modules/FlashLoanType.html
index 5457f4c9e..68c38026f 100644
--- a/ts/client/modules/FlashLoanType.html
+++ b/ts/client/modules/FlashLoanType.html
@@ -1 +1 @@
-FlashLoanType | @blockworks-foundation/mango-v4 Namespace FlashLoanType
Generated using TypeDoc
\ No newline at end of file
+FlashLoanType | @blockworks-foundation/mango-v4 Namespace FlashLoanType
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/PerpOrderSide.html b/ts/client/modules/PerpOrderSide.html
index 8d75e0b2b..8340e5d7b 100644
--- a/ts/client/modules/PerpOrderSide.html
+++ b/ts/client/modules/PerpOrderSide.html
@@ -1 +1 @@
-PerpOrderSide | @blockworks-foundation/mango-v4 Namespace PerpOrderSide
Generated using TypeDoc
\ No newline at end of file
+PerpOrderSide | @blockworks-foundation/mango-v4 Namespace PerpOrderSide
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/PerpOrderType.html b/ts/client/modules/PerpOrderType.html
index 9e1de3518..f4f4b9e89 100644
--- a/ts/client/modules/PerpOrderType.html
+++ b/ts/client/modules/PerpOrderType.html
@@ -1 +1 @@
-PerpOrderType | @blockworks-foundation/mango-v4 Namespace PerpOrderType
Generated using TypeDoc
\ No newline at end of file
+PerpOrderType | @blockworks-foundation/mango-v4 Namespace PerpOrderType
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/PerpSelfTradeBehavior.html b/ts/client/modules/PerpSelfTradeBehavior.html
index 57cfd505c..4bc648ce7 100644
--- a/ts/client/modules/PerpSelfTradeBehavior.html
+++ b/ts/client/modules/PerpSelfTradeBehavior.html
@@ -1 +1 @@
-PerpSelfTradeBehavior | @blockworks-foundation/mango-v4 Namespace PerpSelfTradeBehavior
Generated using TypeDoc
\ No newline at end of file
+PerpSelfTradeBehavior | @blockworks-foundation/mango-v4 Namespace PerpSelfTradeBehavior
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/Serum3OrderType.html b/ts/client/modules/Serum3OrderType.html
index 135f4cea0..8537a76c7 100644
--- a/ts/client/modules/Serum3OrderType.html
+++ b/ts/client/modules/Serum3OrderType.html
@@ -1 +1 @@
-Serum3OrderType | @blockworks-foundation/mango-v4 Namespace Serum3OrderType
Generated using TypeDoc
\ No newline at end of file
+Serum3OrderType | @blockworks-foundation/mango-v4 Namespace Serum3OrderType
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/Serum3SelfTradeBehavior.html b/ts/client/modules/Serum3SelfTradeBehavior.html
index 9e34a4e41..29f22326b 100644
--- a/ts/client/modules/Serum3SelfTradeBehavior.html
+++ b/ts/client/modules/Serum3SelfTradeBehavior.html
@@ -1 +1 @@
-Serum3SelfTradeBehavior | @blockworks-foundation/mango-v4 Namespace Serum3SelfTradeBehavior
Generated using TypeDoc
\ No newline at end of file
+Serum3SelfTradeBehavior | @blockworks-foundation/mango-v4 Namespace Serum3SelfTradeBehavior
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/Serum3Side.html b/ts/client/modules/Serum3Side.html
index 9f7faa3bc..b554a1cf6 100644
--- a/ts/client/modules/Serum3Side.html
+++ b/ts/client/modules/Serum3Side.html
@@ -1 +1 @@
-Serum3Side | @blockworks-foundation/mango-v4 Namespace Serum3Side
Generated using TypeDoc
\ No newline at end of file
+Serum3Side | @blockworks-foundation/mango-v4 Namespace Serum3Side
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/TokenConditionalSwapDisplayPriceStyle.html b/ts/client/modules/TokenConditionalSwapDisplayPriceStyle.html
index 1430d0344..77b2bd6a9 100644
--- a/ts/client/modules/TokenConditionalSwapDisplayPriceStyle.html
+++ b/ts/client/modules/TokenConditionalSwapDisplayPriceStyle.html
@@ -1 +1 @@
-TokenConditionalSwapDisplayPriceStyle | @blockworks-foundation/mango-v4 Namespace TokenConditionalSwapDisplayPriceStyle
Generated using TypeDoc
\ No newline at end of file
+TokenConditionalSwapDisplayPriceStyle | @blockworks-foundation/mango-v4 Namespace TokenConditionalSwapDisplayPriceStyle
Generated using TypeDoc
\ No newline at end of file
diff --git a/ts/client/modules/TokenConditionalSwapIntention.html b/ts/client/modules/TokenConditionalSwapIntention.html
index c755596b6..fac6cd779 100644
--- a/ts/client/modules/TokenConditionalSwapIntention.html
+++ b/ts/client/modules/TokenConditionalSwapIntention.html
@@ -1 +1 @@
-TokenConditionalSwapIntention | @blockworks-foundation/mango-v4 Namespace TokenConditionalSwapIntention
Generated using TypeDoc
\ No newline at end of file
+TokenConditionalSwapIntention | @blockworks-foundation/mango-v4 Namespace TokenConditionalSwapIntention
Generated using TypeDoc
\ No newline at end of file
- Preparing search index...
- The search index is not available
@blockworks-foundation/mango-v4Class BookSide
Hierarchy
Index
Constructors
Properties
Methods
Constructors
constructor
Parameters
client: MangoClient
perpMarket: PerpMarket
type: BookSideType
rootFixed: OrderTreeRoot
rootOraclePegged: OrderTreeRoot
orderTreeNodes: OrderTreeNodes
Optional maxBookDelay: number
Returns BookSide
Properties
client
now
order Tree Nodes
perp Market
root Fixed
root Oracle Pegged
type
Static Private INNER_ NODE_ TAG
Static Private LEAF_ NODE_ TAG
Methods
best
Returns undefined | PerpOrder
fixed Items
Returns Generator<PerpOrder, any, unknown>
get Impact Price Ui
Parameters
baseLots: BN
Returns undefined | number
get L2
Parameters
depth: number
Returns [number, number, BN, BN][]
get L2 Ui
Parameters
depth: number
Returns [number, number][]
items
iterates over all orders
-Returns Generator<PerpOrder, any, unknown>
items Valid
Returns Generator<PerpOrder, any, unknown>
items Valid
iterates over all orders, skips oracle pegged orders which are invalid due to oracle price crossing the peg limit, skips tif orders which are invalid due to tif having elapsed,
-Returns Generator<PerpOrder, any, unknown>
oracle Pegged Items
Returns Generator<PerpOrder, any, unknown>
Static from
Parameters
client: MangoClient
perpMarket: PerpMarket
bookSideType: BookSideType
obj: { nodes: OrderTreeNodes; roots: OrderTreeRoot[] }
nodes: OrderTreeNodes
roots: OrderTreeRoot[]
Returns BookSide
Static get Price From Key
Parameters
key: BN
Returns BN
Static to Inner Node
Parameters
client: MangoClient
data: [number]
Returns InnerNode
Static to Leaf Node
Parameters
client: MangoClient
data: [number]
Returns LeafNode
Generated using TypeDoc