{
  "address": "E9bGbtxU6PrAVAtw91mXEyyzeGVBeN1Zxzpw3rpag39z",
  "metadata": {
    "name": "woop_core",
    "version": "0.1.0",
    "spec": "0.1.0"
  },
  "instructions": [
    {
      "name": "claim_fair",
      "discriminator": [
        145,
        160,
        92,
        169,
        180,
        221,
        103,
        44
      ],
      "accounts": [
        {
          "name": "sale",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "sale.seed",
                "account": "FairLaunch"
              }
            ]
          }
        },
        {
          "name": "escrow",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114,
                  95,
                  101,
                  115,
                  99,
                  114,
                  111,
                  119
                ]
              },
              {
                "kind": "account",
                "path": "sale"
              }
            ]
          }
        },
        {
          "name": "commit",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114,
                  95,
                  99,
                  111,
                  109,
                  109,
                  105,
                  116
                ]
              },
              {
                "kind": "account",
                "path": "sale"
              },
              {
                "kind": "account",
                "path": "commit.wallet",
                "account": "FairCommit"
              }
            ]
          }
        },
        {
          "name": "mint"
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "escrow_base",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "escrow"
              },
              {
                "kind": "account",
                "path": "base_token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "escrow_quote",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "escrow"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "wallet_base",
          "writable": true
        },
        {
          "name": "wallet_quote",
          "writable": true
        },
        {
          "name": "base_token_program"
        },
        {
          "name": "quote_token_program"
        }
      ],
      "args": []
    },
    {
      "name": "claim_fees",
      "discriminator": [
        82,
        251,
        233,
        156,
        12,
        52,
        184,
        202
      ],
      "accounts": [
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "pair",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  112,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "coin.global_config",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "coin",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "coin_signer",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  105,
                  110
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "platform_config"
        },
        {
          "name": "platform_fee_vault_authority"
        },
        {
          "name": "platform_fee_vault",
          "writable": true
        },
        {
          "name": "creator_fee_vault_authority"
        },
        {
          "name": "creator_fee_vault",
          "writable": true
        },
        {
          "name": "treasury",
          "docs": [
            "The coin's treasury: the coin signer's token account for the quote mint."
          ],
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "coin_signer"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "zync_account",
          "writable": true
        },
        {
          "name": "creator_account",
          "writable": true
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "token_program"
        },
        {
          "name": "associated_token_program",
          "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        },
        {
          "name": "launchlab_program",
          "address": "DRay6fNdQ5J82H7xV6uq2aV3mNrUZ1J4PgSKsWgptcm6"
        },
        {
          "name": "route",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  114,
                  111,
                  117,
                  116,
                  101
                ]
              }
            ]
          }
        },
        {
          "name": "route_stats",
          "docs": [
            "nobody has traded it through the route yet)."
          ],
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  114,
                  111,
                  117,
                  116,
                  101,
                  95,
                  115,
                  116,
                  97,
                  116,
                  115
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "route_vault",
          "writable": true
        }
      ],
      "args": []
    },
    {
      "name": "close_fair_launch",
      "docs": [
        "After the window: create the coin and make one opening buy with everything committed. Anyone can call."
      ],
      "discriminator": [
        143,
        95,
        116,
        39,
        126,
        171,
        6,
        0
      ],
      "accounts": [
        {
          "name": "cranker",
          "docs": [
            "Anyone; pays the coin record's rent and is paid it back from the deposit."
          ],
          "writable": true,
          "signer": true
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "pair",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  112,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "sale.global_config",
                "account": "FairLaunch"
              }
            ]
          }
        },
        {
          "name": "sale",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "sale.seed",
                "account": "FairLaunch"
              }
            ]
          }
        },
        {
          "name": "creator",
          "writable": true
        },
        {
          "name": "escrow",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114,
                  95,
                  101,
                  115,
                  99,
                  114,
                  111,
                  119
                ]
              },
              {
                "kind": "account",
                "path": "sale"
              }
            ]
          }
        },
        {
          "name": "coin",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "base_mint"
              }
            ]
          }
        },
        {
          "name": "coin_signer",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  105,
                  110
                ]
              },
              {
                "kind": "account",
                "path": "base_mint"
              }
            ]
          }
        },
        {
          "name": "platform_config",
          "writable": true
        },
        {
          "name": "cpswap_config"
        },
        {
          "name": "global_config"
        },
        {
          "name": "authority"
        },
        {
          "name": "pool_state",
          "writable": true
        },
        {
          "name": "base_mint",
          "writable": true
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "base_vault",
          "writable": true
        },
        {
          "name": "quote_vault",
          "writable": true
        },
        {
          "name": "metadata_account",
          "writable": true
        },
        {
          "name": "base_token_program",
          "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
        },
        {
          "name": "quote_token_program"
        },
        {
          "name": "metadata_program",
          "address": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        },
        {
          "name": "rent",
          "address": "SysvarRent111111111111111111111111111111111"
        },
        {
          "name": "event_authority"
        },
        {
          "name": "launchlab_program",
          "address": "DRay6fNdQ5J82H7xV6uq2aV3mNrUZ1J4PgSKsWgptcm6"
        },
        {
          "name": "escrow_quote",
          "docs": [
            "(an associated_token constraint here overflows the 4 KB stack)."
          ],
          "writable": true
        },
        {
          "name": "escrow_base",
          "writable": true
        },
        {
          "name": "treasury",
          "writable": true
        },
        {
          "name": "associated_token_program",
          "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
        },
        {
          "name": "ticker",
          "docs": [
            "meanwhile). Address checked and created by hand in register_on_close (constraints here overflow the 4 KB stack)."
          ],
          "writable": true
        }
      ],
      "args": []
    },
    {
      "name": "collect_creator_fees",
      "discriminator": [
        78,
        57,
        27,
        244,
        150,
        73,
        198,
        78
      ],
      "accounts": [
        {
          "name": "coin",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "coin_signer",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  105,
                  110
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "cp_authority"
        },
        {
          "name": "pool_state",
          "writable": true
        },
        {
          "name": "amm_config"
        },
        {
          "name": "token_0_vault",
          "writable": true
        },
        {
          "name": "token_1_vault",
          "writable": true
        },
        {
          "name": "token_0_mint"
        },
        {
          "name": "token_1_mint"
        },
        {
          "name": "treasury_0",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "coin_signer"
              },
              {
                "kind": "account",
                "path": "token_0_program"
              },
              {
                "kind": "account",
                "path": "token_0_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "treasury_1",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "coin_signer"
              },
              {
                "kind": "account",
                "path": "token_1_program"
              },
              {
                "kind": "account",
                "path": "token_1_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "creator_0",
          "writable": true
        },
        {
          "name": "creator_1",
          "writable": true
        },
        {
          "name": "token_0_program"
        },
        {
          "name": "token_1_program"
        },
        {
          "name": "associated_token_program",
          "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        },
        {
          "name": "creator_fee_share"
        },
        {
          "name": "cp_swap_program",
          "address": "DRaycpLY18LhpbydsBWbVJtxpNv9oXPgjRSfpF2bWpYb"
        }
      ],
      "args": []
    },
    {
      "name": "commit_fair",
      "discriminator": [
        162,
        173,
        48,
        7,
        216,
        230,
        234,
        156
      ],
      "accounts": [
        {
          "name": "wallet",
          "writable": true,
          "signer": true
        },
        {
          "name": "sale",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "sale.seed",
                "account": "FairLaunch"
              }
            ]
          }
        },
        {
          "name": "escrow",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114,
                  95,
                  101,
                  115,
                  99,
                  114,
                  111,
                  119
                ]
              },
              {
                "kind": "account",
                "path": "sale"
              }
            ]
          }
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "escrow_quote",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "escrow"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "wallet_quote",
          "writable": true
        },
        {
          "name": "commit",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114,
                  95,
                  99,
                  111,
                  109,
                  109,
                  105,
                  116
                ]
              },
              {
                "kind": "account",
                "path": "sale"
              },
              {
                "kind": "account",
                "path": "wallet"
              }
            ]
          }
        },
        {
          "name": "quote_token_program"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        }
      ],
      "args": [
        {
          "name": "amount",
          "type": "u64"
        }
      ]
    },
    {
      "name": "curve_buy",
      "docs": [
        "Remaining accounts: Exit Queue orders to fill first (writable)."
      ],
      "discriminator": [
        176,
        209,
        141,
        153,
        19,
        58,
        36,
        22
      ],
      "accounts": [
        {
          "name": "trader",
          "docs": [
            "Signs for the quote (a buy) or the coins (a sell). Usually the wallet itself; for a buy it can be an aggregator's",
            "program trading for the wallet (Jupiter's shared accounts), with the coins delivered to the wallet's account."
          ],
          "writable": true,
          "signer": true
        },
        {
          "name": "payer",
          "docs": [
            "Pays the rent of a new position: the trader, or the wallet when an aggregator's program trades for it."
          ],
          "writable": true,
          "signer": true
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "base_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "quote_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "lock",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  108,
                  111,
                  99,
                  107
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "lock_vault",
          "docs": [
            "The creator's buys land here instead of their wallet."
          ],
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "lock"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "trader_base",
          "docs": [
            "The wallet's coin account (created frozen by the associated token program; thawed only inside a trade). Its owner",
            "is the wallet the trade is for: a buy delivers here, and the position is that wallet's. Sells, orders and Exit",
            "Queue orders need it to be the trader's own."
          ],
          "writable": true
        },
        {
          "name": "trader_quote",
          "writable": true
        },
        {
          "name": "position",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  111,
                  115
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "trader_base.owner"
              }
            ]
          }
        },
        {
          "name": "woop_tokens",
          "docs": [
            "Optional: the trader's $WOOP account, for half fees."
          ],
          "optional": true
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        },
        {
          "name": "quote_token_program"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "amount_in",
          "type": "u64"
        },
        {
          "name": "min_out",
          "type": "u64"
        }
      ]
    },
    {
      "name": "curve_claim",
      "discriminator": [
        91,
        52,
        249,
        160,
        211,
        240,
        77,
        239
      ],
      "accounts": [
        {
          "name": "payer",
          "writable": true,
          "signer": true
        },
        {
          "name": "wallet",
          "writable": true
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "base_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "quote_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "lock",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  108,
                  111,
                  99,
                  107
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "lock_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "lock"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "wallet_base",
          "writable": true
        },
        {
          "name": "wallet_quote",
          "writable": true
        },
        {
          "name": "order",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  111,
                  114,
                  100,
                  101,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "wallet"
              }
            ]
          }
        },
        {
          "name": "block",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  98,
                  108,
                  111,
                  99,
                  107
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "order.block_id",
                "account": "Order"
              }
            ]
          }
        },
        {
          "name": "settler",
          "writable": true
        },
        {
          "name": "position",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  111,
                  115
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "wallet"
              }
            ]
          }
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        },
        {
          "name": "quote_token_program"
        }
      ],
      "args": []
    },
    {
      "name": "curve_claim_fees",
      "docs": [
        "Pay a curve coin's fees out: holders' share into its treasury, creator's and woop's to them."
      ],
      "discriminator": [
        102,
        139,
        112,
        223,
        9,
        123,
        4,
        251
      ],
      "accounts": [
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "coin",
          "docs": [
            "The coin's record: its running payout totals (the same ones LaunchLab coins keep) count these payouts too."
          ],
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "coin_signer",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  105,
                  110
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "treasury",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "coin_signer"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "woop_account",
          "writable": true
        },
        {
          "name": "creator_account",
          "writable": true
        },
        {
          "name": "quote_token_program"
        }
      ],
      "args": []
    },
    {
      "name": "curve_create",
      "docs": [
        "A curve launch is curve_create then curve_open, in one transaction."
      ],
      "discriminator": [
        101,
        227,
        215,
        223,
        232,
        188,
        221,
        191
      ],
      "accounts": [
        {
          "name": "creator",
          "writable": true,
          "signer": true
        },
        {
          "name": "coin",
          "docs": [
            "The coin's record and signer, as for every woop coin: the signer's token accounts are its treasury, which",
            "fund_rewards moves into the holders' rewards."
          ],
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "coin_signer",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  105,
                  110
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "ticker",
          "docs": [
            "Ticker protection: created by the first coin with this ticker."
          ],
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  116,
                  105,
                  99,
                  107,
                  101,
                  114
                ]
              },
              {
                "kind": "arg",
                "path": "symbol"
              }
            ]
          }
        },
        {
          "name": "ticker_fee_account",
          "writable": true,
          "optional": true
        },
        {
          "name": "spl_token_program",
          "docs": [
            "The SPL token program (the ticker fee is wrapped SOL)."
          ],
          "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "quote_price",
          "docs": [
            "The pair's price, and SOL's (for the advance; the same account on a SOL pair)."
          ],
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  114,
                  105,
                  99,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "quote_price.mint",
                "account": "QuotePrice"
              }
            ]
          }
        },
        {
          "name": "sol_price",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  114,
                  105,
                  99,
                  101
                ]
              },
              {
                "kind": "const",
                "value": [
                  6,
                  155,
                  136,
                  87,
                  254,
                  171,
                  129,
                  132,
                  251,
                  104,
                  127,
                  99,
                  70,
                  24,
                  192,
                  53,
                  218,
                  196,
                  57,
                  220,
                  26,
                  235,
                  59,
                  85,
                  152,
                  160,
                  240,
                  0,
                  0,
                  0,
                  0,
                  1
                ]
              }
            ]
          }
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "mint",
          "writable": true,
          "signer": true
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "name",
          "type": "string"
        },
        {
          "name": "symbol",
          "type": "string"
        },
        {
          "name": "uri",
          "type": "string"
        },
        {
          "name": "unlock_days",
          "type": "u16"
        },
        {
          "name": "cliff_days",
          "type": "u16"
        }
      ]
    },
    {
      "name": "curve_creator_claim",
      "discriminator": [
        150,
        6,
        125,
        228,
        213,
        129,
        34,
        27
      ],
      "accounts": [
        {
          "name": "payer",
          "signer": true
        },
        {
          "name": "creator"
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "lock",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  108,
                  111,
                  99,
                  107
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "lock_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "lock"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "creator_base",
          "writable": true
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        }
      ],
      "args": []
    },
    {
      "name": "curve_drop_freeze",
      "discriminator": [
        43,
        147,
        46,
        190,
        202,
        80,
        167,
        40
      ],
      "accounts": [
        {
          "name": "signer",
          "signer": true
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "writable": true,
          "relations": [
            "curve"
          ]
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        }
      ],
      "args": []
    },
    {
      "name": "curve_exit_place",
      "docs": [
        "The Exit Queue on the curve: queue coins to sell, and pay sellers out (or cancel)."
      ],
      "discriminator": [
        99,
        161,
        137,
        253,
        161,
        246,
        42,
        231
      ],
      "accounts": [
        {
          "name": "t",
          "accounts": [
            {
              "name": "trader",
              "docs": [
                "Signs for the quote (a buy) or the coins (a sell). Usually the wallet itself; for a buy it can be an aggregator's",
                "program trading for the wallet (Jupiter's shared accounts), with the coins delivered to the wallet's account."
              ],
              "writable": true,
              "signer": true
            },
            {
              "name": "payer",
              "docs": [
                "Pays the rent of a new position: the trader, or the wallet when an aggregator's program trades for it."
              ],
              "writable": true,
              "signer": true
            },
            {
              "name": "curve_config",
              "pda": {
                "seeds": [
                  {
                    "kind": "const",
                    "value": [
                      99,
                      117,
                      114,
                      118,
                      101,
                      95,
                      99,
                      111,
                      110,
                      102,
                      105,
                      103
                    ]
                  }
                ]
              }
            },
            {
              "name": "curve",
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "const",
                    "value": [
                      99,
                      117,
                      114,
                      118,
                      101
                    ]
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  }
                ]
              }
            },
            {
              "name": "mint",
              "relations": [
                "curve"
              ]
            },
            {
              "name": "quote_mint",
              "relations": [
                "curve"
              ]
            },
            {
              "name": "base_vault",
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "account",
                    "path": "curve"
                  },
                  {
                    "kind": "account",
                    "path": "token_program"
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  }
                ],
                "program": {
                  "kind": "const",
                  "value": [
                    140,
                    151,
                    37,
                    143,
                    78,
                    36,
                    137,
                    241,
                    187,
                    61,
                    16,
                    41,
                    20,
                    142,
                    13,
                    131,
                    11,
                    90,
                    19,
                    153,
                    218,
                    255,
                    16,
                    132,
                    4,
                    142,
                    123,
                    216,
                    219,
                    233,
                    248,
                    89
                  ]
                }
              }
            },
            {
              "name": "quote_vault",
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "account",
                    "path": "curve"
                  },
                  {
                    "kind": "account",
                    "path": "quote_token_program"
                  },
                  {
                    "kind": "account",
                    "path": "quote_mint"
                  }
                ],
                "program": {
                  "kind": "const",
                  "value": [
                    140,
                    151,
                    37,
                    143,
                    78,
                    36,
                    137,
                    241,
                    187,
                    61,
                    16,
                    41,
                    20,
                    142,
                    13,
                    131,
                    11,
                    90,
                    19,
                    153,
                    218,
                    255,
                    16,
                    132,
                    4,
                    142,
                    123,
                    216,
                    219,
                    233,
                    248,
                    89
                  ]
                }
              }
            },
            {
              "name": "lock",
              "pda": {
                "seeds": [
                  {
                    "kind": "const",
                    "value": [
                      99,
                      117,
                      114,
                      118,
                      101,
                      95,
                      108,
                      111,
                      99,
                      107
                    ]
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  }
                ]
              }
            },
            {
              "name": "lock_vault",
              "docs": [
                "The creator's buys land here instead of their wallet."
              ],
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "account",
                    "path": "lock"
                  },
                  {
                    "kind": "account",
                    "path": "token_program"
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  }
                ],
                "program": {
                  "kind": "const",
                  "value": [
                    140,
                    151,
                    37,
                    143,
                    78,
                    36,
                    137,
                    241,
                    187,
                    61,
                    16,
                    41,
                    20,
                    142,
                    13,
                    131,
                    11,
                    90,
                    19,
                    153,
                    218,
                    255,
                    16,
                    132,
                    4,
                    142,
                    123,
                    216,
                    219,
                    233,
                    248,
                    89
                  ]
                }
              }
            },
            {
              "name": "trader_base",
              "docs": [
                "The wallet's coin account (created frozen by the associated token program; thawed only inside a trade). Its owner",
                "is the wallet the trade is for: a buy delivers here, and the position is that wallet's. Sells, orders and Exit",
                "Queue orders need it to be the trader's own."
              ],
              "writable": true
            },
            {
              "name": "trader_quote",
              "writable": true
            },
            {
              "name": "position",
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "const",
                    "value": [
                      99,
                      117,
                      114,
                      118,
                      101,
                      95,
                      112,
                      111,
                      115
                    ]
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  },
                  {
                    "kind": "account",
                    "path": "trader_base.owner"
                  }
                ]
              }
            },
            {
              "name": "woop_tokens",
              "docs": [
                "Optional: the trader's $WOOP account, for half fees."
              ],
              "optional": true
            },
            {
              "name": "token_program",
              "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
            },
            {
              "name": "quote_token_program"
            },
            {
              "name": "system_program",
              "address": "11111111111111111111111111111111"
            }
          ]
        },
        {
          "name": "exit",
          "writable": true
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "slot",
          "type": "u8"
        },
        {
          "name": "amount",
          "type": "u64"
        },
        {
          "name": "floor_x18",
          "type": "u128"
        }
      ]
    },
    {
      "name": "curve_exit_withdraw",
      "discriminator": [
        70,
        4,
        177,
        47,
        200,
        213,
        67,
        102
      ],
      "accounts": [
        {
          "name": "payer",
          "writable": true,
          "signer": true
        },
        {
          "name": "wallet",
          "writable": true
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "base_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "quote_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "wallet_base",
          "writable": true
        },
        {
          "name": "wallet_quote",
          "writable": true
        },
        {
          "name": "exit",
          "writable": true
        },
        {
          "name": "position",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  111,
                  115
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "wallet"
              }
            ]
          }
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        },
        {
          "name": "quote_token_program"
        }
      ],
      "args": [
        {
          "name": "cancel",
          "type": "bool"
        }
      ]
    },
    {
      "name": "curve_extend_lock",
      "docs": [
        "The creator makes their lock longer."
      ],
      "discriminator": [
        193,
        129,
        238,
        253,
        228,
        82,
        207,
        180
      ],
      "accounts": [
        {
          "name": "creator",
          "signer": true,
          "relations": [
            "curve"
          ]
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "curve.mint",
                "account": "Curve"
              }
            ]
          }
        }
      ],
      "args": [
        {
          "name": "unlock_days",
          "type": "u16"
        },
        {
          "name": "cliff_days",
          "type": "u16"
        }
      ]
    },
    {
      "name": "curve_graduate",
      "docs": [
        "Graduation into the coin's WAMM pool, then unlocking coin accounts, dropping the freeze authority, and the",
        "creator's daily unlock."
      ],
      "discriminator": [
        164,
        187,
        109,
        159,
        23,
        63,
        5,
        186
      ],
      "accounts": [
        {
          "name": "signer",
          "signer": true
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "writable": true,
          "relations": [
            "curve"
          ]
        },
        {
          "name": "base_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "lock",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  108,
                  111,
                  99,
                  107
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "lock_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "lock"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        }
      ],
      "args": []
    },
    {
      "name": "curve_open",
      "discriminator": [
        251,
        102,
        193,
        169,
        66,
        204,
        247,
        187
      ],
      "accounts": [
        {
          "name": "creator",
          "writable": true,
          "signer": true,
          "relations": [
            "curve"
          ]
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "order",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  111,
                  114,
                  100,
                  101,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "creator"
              }
            ]
          }
        },
        {
          "name": "position",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  111,
                  115
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "creator"
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "writable": true,
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "lock",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  108,
                  111,
                  99,
                  107
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "base_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "lock_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "lock"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "quote_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        },
        {
          "name": "quote_token_program"
        },
        {
          "name": "associated_token_program",
          "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": []
    },
    {
      "name": "curve_order",
      "docs": [
        "Fair Blocks on the curve: place an order, settle a closed block at one price, pay an order out."
      ],
      "discriminator": [
        155,
        172,
        70,
        100,
        140,
        241,
        223,
        8
      ],
      "accounts": [
        {
          "name": "t",
          "accounts": [
            {
              "name": "trader",
              "docs": [
                "Signs for the quote (a buy) or the coins (a sell). Usually the wallet itself; for a buy it can be an aggregator's",
                "program trading for the wallet (Jupiter's shared accounts), with the coins delivered to the wallet's account."
              ],
              "writable": true,
              "signer": true
            },
            {
              "name": "payer",
              "docs": [
                "Pays the rent of a new position: the trader, or the wallet when an aggregator's program trades for it."
              ],
              "writable": true,
              "signer": true
            },
            {
              "name": "curve_config",
              "pda": {
                "seeds": [
                  {
                    "kind": "const",
                    "value": [
                      99,
                      117,
                      114,
                      118,
                      101,
                      95,
                      99,
                      111,
                      110,
                      102,
                      105,
                      103
                    ]
                  }
                ]
              }
            },
            {
              "name": "curve",
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "const",
                    "value": [
                      99,
                      117,
                      114,
                      118,
                      101
                    ]
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  }
                ]
              }
            },
            {
              "name": "mint",
              "relations": [
                "curve"
              ]
            },
            {
              "name": "quote_mint",
              "relations": [
                "curve"
              ]
            },
            {
              "name": "base_vault",
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "account",
                    "path": "curve"
                  },
                  {
                    "kind": "account",
                    "path": "token_program"
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  }
                ],
                "program": {
                  "kind": "const",
                  "value": [
                    140,
                    151,
                    37,
                    143,
                    78,
                    36,
                    137,
                    241,
                    187,
                    61,
                    16,
                    41,
                    20,
                    142,
                    13,
                    131,
                    11,
                    90,
                    19,
                    153,
                    218,
                    255,
                    16,
                    132,
                    4,
                    142,
                    123,
                    216,
                    219,
                    233,
                    248,
                    89
                  ]
                }
              }
            },
            {
              "name": "quote_vault",
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "account",
                    "path": "curve"
                  },
                  {
                    "kind": "account",
                    "path": "quote_token_program"
                  },
                  {
                    "kind": "account",
                    "path": "quote_mint"
                  }
                ],
                "program": {
                  "kind": "const",
                  "value": [
                    140,
                    151,
                    37,
                    143,
                    78,
                    36,
                    137,
                    241,
                    187,
                    61,
                    16,
                    41,
                    20,
                    142,
                    13,
                    131,
                    11,
                    90,
                    19,
                    153,
                    218,
                    255,
                    16,
                    132,
                    4,
                    142,
                    123,
                    216,
                    219,
                    233,
                    248,
                    89
                  ]
                }
              }
            },
            {
              "name": "lock",
              "pda": {
                "seeds": [
                  {
                    "kind": "const",
                    "value": [
                      99,
                      117,
                      114,
                      118,
                      101,
                      95,
                      108,
                      111,
                      99,
                      107
                    ]
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  }
                ]
              }
            },
            {
              "name": "lock_vault",
              "docs": [
                "The creator's buys land here instead of their wallet."
              ],
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "account",
                    "path": "lock"
                  },
                  {
                    "kind": "account",
                    "path": "token_program"
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  }
                ],
                "program": {
                  "kind": "const",
                  "value": [
                    140,
                    151,
                    37,
                    143,
                    78,
                    36,
                    137,
                    241,
                    187,
                    61,
                    16,
                    41,
                    20,
                    142,
                    13,
                    131,
                    11,
                    90,
                    19,
                    153,
                    218,
                    255,
                    16,
                    132,
                    4,
                    142,
                    123,
                    216,
                    219,
                    233,
                    248,
                    89
                  ]
                }
              }
            },
            {
              "name": "trader_base",
              "docs": [
                "The wallet's coin account (created frozen by the associated token program; thawed only inside a trade). Its owner",
                "is the wallet the trade is for: a buy delivers here, and the position is that wallet's. Sells, orders and Exit",
                "Queue orders need it to be the trader's own."
              ],
              "writable": true
            },
            {
              "name": "trader_quote",
              "writable": true
            },
            {
              "name": "position",
              "writable": true,
              "pda": {
                "seeds": [
                  {
                    "kind": "const",
                    "value": [
                      99,
                      117,
                      114,
                      118,
                      101,
                      95,
                      112,
                      111,
                      115
                    ]
                  },
                  {
                    "kind": "account",
                    "path": "mint"
                  },
                  {
                    "kind": "account",
                    "path": "trader_base.owner"
                  }
                ]
              }
            },
            {
              "name": "woop_tokens",
              "docs": [
                "Optional: the trader's $WOOP account, for half fees."
              ],
              "optional": true
            },
            {
              "name": "token_program",
              "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
            },
            {
              "name": "quote_token_program"
            },
            {
              "name": "system_program",
              "address": "11111111111111111111111111111111"
            }
          ]
        },
        {
          "name": "order",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  111,
                  114,
                  100,
                  101,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "t.mint",
                "account": "CurveTradeAccounts"
              },
              {
                "kind": "account",
                "path": "t.trader",
                "account": "CurveTradeAccounts"
              }
            ]
          }
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "buy",
          "type": "bool"
        },
        {
          "name": "amount",
          "type": "u64"
        }
      ]
    },
    {
      "name": "curve_refund",
      "discriminator": [
        45,
        231,
        198,
        135,
        155,
        188,
        186,
        78
      ],
      "accounts": [
        {
          "name": "payer",
          "writable": true,
          "signer": true
        },
        {
          "name": "wallet"
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "wallet_quote",
          "writable": true
        },
        {
          "name": "position",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  111,
                  115
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "wallet"
              }
            ]
          }
        },
        {
          "name": "order",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  111,
                  114,
                  100,
                  101,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "wallet"
              }
            ]
          }
        },
        {
          "name": "exit0"
        },
        {
          "name": "exit1"
        },
        {
          "name": "quote_token_program"
        }
      ],
      "args": []
    },
    {
      "name": "curve_refund_start",
      "docs": [
        "Refund mode: a coin that hasn't graduated in time refunds everyone their share of what they paid in."
      ],
      "discriminator": [
        148,
        220,
        139,
        82,
        57,
        50,
        46,
        0
      ],
      "accounts": [
        {
          "name": "signer",
          "signer": true
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "curve.mint",
                "account": "Curve"
              }
            ]
          }
        }
      ],
      "args": []
    },
    {
      "name": "curve_sell_instant",
      "discriminator": [
        141,
        0,
        203,
        135,
        59,
        109,
        129,
        84
      ],
      "accounts": [
        {
          "name": "trader",
          "docs": [
            "Signs for the quote (a buy) or the coins (a sell). Usually the wallet itself; for a buy it can be an aggregator's",
            "program trading for the wallet (Jupiter's shared accounts), with the coins delivered to the wallet's account."
          ],
          "writable": true,
          "signer": true
        },
        {
          "name": "payer",
          "docs": [
            "Pays the rent of a new position: the trader, or the wallet when an aggregator's program trades for it."
          ],
          "writable": true,
          "signer": true
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "base_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "quote_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "lock",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  108,
                  111,
                  99,
                  107
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "lock_vault",
          "docs": [
            "The creator's buys land here instead of their wallet."
          ],
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "lock"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "trader_base",
          "docs": [
            "The wallet's coin account (created frozen by the associated token program; thawed only inside a trade). Its owner",
            "is the wallet the trade is for: a buy delivers here, and the position is that wallet's. Sells, orders and Exit",
            "Queue orders need it to be the trader's own."
          ],
          "writable": true
        },
        {
          "name": "trader_quote",
          "writable": true
        },
        {
          "name": "position",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  111,
                  115
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              },
              {
                "kind": "account",
                "path": "trader_base.owner"
              }
            ]
          }
        },
        {
          "name": "woop_tokens",
          "docs": [
            "Optional: the trader's $WOOP account, for half fees."
          ],
          "optional": true
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        },
        {
          "name": "quote_token_program"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "amount",
          "type": "u64"
        },
        {
          "name": "min_out",
          "type": "u64"
        }
      ]
    },
    {
      "name": "curve_settle",
      "discriminator": [
        251,
        254,
        196,
        135,
        26,
        1,
        97,
        172
      ],
      "accounts": [
        {
          "name": "settler",
          "writable": true,
          "signer": true
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "curve.mint",
                "account": "Curve"
              }
            ]
          }
        },
        {
          "name": "block",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  98,
                  108,
                  111,
                  99,
                  107
                ]
              },
              {
                "kind": "account",
                "path": "curve.mint",
                "account": "Curve"
              },
              {
                "kind": "account",
                "path": "curve.block_id",
                "account": "Curve"
              }
            ]
          }
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": []
    },
    {
      "name": "curve_unlock",
      "discriminator": [
        20,
        229,
        249,
        161,
        97,
        185,
        219,
        41
      ],
      "accounts": [
        {
          "name": "curve",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "account",
          "writable": true
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        }
      ],
      "args": []
    },
    {
      "name": "fund_rewards",
      "discriminator": [
        114,
        64,
        163,
        112,
        175,
        167,
        19,
        121
      ],
      "accounts": [
        {
          "name": "coin",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "coin_signer",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  105,
                  110
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "reward_mint"
        },
        {
          "name": "treasury",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "coin_signer"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "reward_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "distributor"
        },
        {
          "name": "distributor_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "distributor"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "reward_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "token_program"
        }
      ],
      "args": []
    },
    {
      "name": "harvest_pool_fees",
      "discriminator": [
        220,
        111,
        249,
        100,
        4,
        231,
        179,
        83
      ],
      "accounts": [
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "coin",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "coin_signer",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  105,
                  110
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "lock_authority"
        },
        {
          "name": "fee_nft_account"
        },
        {
          "name": "locked_liquidity",
          "writable": true
        },
        {
          "name": "cp_swap_program",
          "address": "DRaycpLY18LhpbydsBWbVJtxpNv9oXPgjRSfpF2bWpYb"
        },
        {
          "name": "cp_authority"
        },
        {
          "name": "pool_state",
          "writable": true
        },
        {
          "name": "lp_mint",
          "writable": true
        },
        {
          "name": "token_0_vault",
          "writable": true
        },
        {
          "name": "token_1_vault",
          "writable": true
        },
        {
          "name": "token_0_mint"
        },
        {
          "name": "token_1_mint"
        },
        {
          "name": "locked_lp_vault",
          "writable": true
        },
        {
          "name": "treasury_0",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "coin_signer"
              },
              {
                "kind": "account",
                "path": "token_0_program"
              },
              {
                "kind": "account",
                "path": "token_0_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "treasury_1",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "coin_signer"
              },
              {
                "kind": "account",
                "path": "token_1_program"
              },
              {
                "kind": "account",
                "path": "token_1_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "zync_0",
          "writable": true
        },
        {
          "name": "zync_1",
          "writable": true
        },
        {
          "name": "creator_0",
          "writable": true
        },
        {
          "name": "creator_1",
          "writable": true
        },
        {
          "name": "token_0_program"
        },
        {
          "name": "token_1_program"
        },
        {
          "name": "token_program",
          "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
        },
        {
          "name": "token_program_2022",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        },
        {
          "name": "memo_program",
          "address": "MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"
        },
        {
          "name": "lock_program",
          "address": "DRay25Usp3YJAi7beckgpGUC7mGJ2cR1AVPxhYfwVCUX"
        }
      ],
      "args": [
        {
          "name": "fee_lp_amount",
          "type": "u64"
        }
      ]
    },
    {
      "name": "init_config",
      "discriminator": [
        23,
        235,
        115,
        232,
        168,
        96,
        1,
        231
      ],
      "accounts": [
        {
          "name": "payer",
          "writable": true,
          "signer": true
        },
        {
          "name": "config",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        },
        {
          "name": "program_data",
          "docs": [
            "This program's ProgramData: only its upgrade authority (the deployer) can create the config, so nobody can take",
            "admin between the deploy and the setup."
          ],
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  195,
                  91,
                  83,
                  24,
                  88,
                  68,
                  149,
                  16,
                  125,
                  141,
                  214,
                  22,
                  41,
                  122,
                  36,
                  32,
                  85,
                  246,
                  33,
                  247,
                  190,
                  205,
                  161,
                  241,
                  26,
                  111,
                  184,
                  239,
                  254,
                  205,
                  63,
                  25
                ]
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                2,
                168,
                246,
                145,
                78,
                136,
                161,
                176,
                226,
                16,
                21,
                62,
                247,
                99,
                174,
                43,
                0,
                194,
                185,
                61,
                22,
                193,
                36,
                210,
                192,
                83,
                122,
                16,
                4,
                128,
                0,
                0
              ]
            }
          }
        }
      ],
      "args": [
        {
          "name": "params",
          "type": {
            "defined": {
              "name": "ConfigParams"
            }
          }
        }
      ]
    },
    {
      "name": "launch",
      "discriminator": [
        153,
        241,
        93,
        225,
        22,
        69,
        74,
        61
      ],
      "accounts": [
        {
          "name": "creator",
          "docs": [
            "Pays for everything and is recorded as the coin's creator."
          ],
          "writable": true,
          "signer": true
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "pair",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  112,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "global_config"
              }
            ]
          }
        },
        {
          "name": "coin",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "base_mint"
              }
            ]
          }
        },
        {
          "name": "coin_signer",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  105,
                  110
                ]
              },
              {
                "kind": "account",
                "path": "base_mint"
              }
            ]
          }
        },
        {
          "name": "platform_config",
          "writable": true
        },
        {
          "name": "cpswap_config"
        },
        {
          "name": "global_config"
        },
        {
          "name": "authority"
        },
        {
          "name": "pool_state",
          "writable": true
        },
        {
          "name": "base_mint",
          "writable": true,
          "signer": true
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "base_vault",
          "writable": true
        },
        {
          "name": "quote_vault",
          "writable": true
        },
        {
          "name": "metadata_account",
          "writable": true
        },
        {
          "name": "base_token_program",
          "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
        },
        {
          "name": "quote_token_program"
        },
        {
          "name": "metadata_program",
          "address": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        },
        {
          "name": "rent",
          "address": "SysvarRent111111111111111111111111111111111"
        },
        {
          "name": "event_authority"
        },
        {
          "name": "launchlab_program",
          "address": "DRay6fNdQ5J82H7xV6uq2aV3mNrUZ1J4PgSKsWgptcm6"
        },
        {
          "name": "vesting_record",
          "writable": true
        },
        {
          "name": "ticker",
          "docs": [
            "Ticker protection: created by the first coin with this ticker."
          ],
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  116,
                  105,
                  99,
                  107,
                  101,
                  114
                ]
              },
              {
                "kind": "arg",
                "path": "symbol"
              }
            ]
          }
        },
        {
          "name": "ticker_fee_account",
          "writable": true,
          "optional": true
        }
      ],
      "args": [
        {
          "name": "name",
          "type": "string"
        },
        {
          "name": "symbol",
          "type": "string"
        },
        {
          "name": "uri",
          "type": "string"
        },
        {
          "name": "lock",
          "type": {
            "defined": {
              "name": "LockParams"
            }
          }
        }
      ]
    },
    {
      "name": "open_fair_launch",
      "discriminator": [
        213,
        179,
        67,
        65,
        210,
        112,
        81,
        196
      ],
      "accounts": [
        {
          "name": "creator",
          "writable": true,
          "signer": true
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "pair",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  112,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "pair.global_config",
                "account": "Pair"
              }
            ]
          }
        },
        {
          "name": "sale",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "arg",
                "path": "seed"
              }
            ]
          }
        },
        {
          "name": "escrow",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114,
                  95,
                  101,
                  115,
                  99,
                  114,
                  111,
                  119
                ]
              },
              {
                "kind": "account",
                "path": "sale"
              }
            ]
          }
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "escrow_quote",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "escrow"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "quote_token_program"
        },
        {
          "name": "associated_token_program",
          "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        },
        {
          "name": "ticker",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  116,
                  105,
                  99,
                  107,
                  101,
                  114
                ]
              },
              {
                "kind": "arg",
                "path": "symbol"
              }
            ]
          }
        },
        {
          "name": "ticker_fee_account",
          "writable": true,
          "optional": true
        },
        {
          "name": "token_program",
          "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
        }
      ],
      "args": [
        {
          "name": "seed",
          "type": "pubkey"
        },
        {
          "name": "name",
          "type": "string"
        },
        {
          "name": "symbol",
          "type": "string"
        },
        {
          "name": "uri",
          "type": "string"
        },
        {
          "name": "window",
          "type": "i64"
        },
        {
          "name": "max_per_wallet",
          "type": "u64"
        },
        {
          "name": "lock",
          "type": {
            "defined": {
              "name": "LockParams"
            }
          }
        },
        {
          "name": "release",
          "type": "i64"
        }
      ]
    },
    {
      "name": "refund_fair",
      "discriminator": [
        44,
        163,
        173,
        232,
        15,
        137,
        11,
        61
      ],
      "accounts": [
        {
          "name": "sale",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "sale.seed",
                "account": "FairLaunch"
              }
            ]
          }
        },
        {
          "name": "escrow",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114,
                  95,
                  101,
                  115,
                  99,
                  114,
                  111,
                  119
                ]
              },
              {
                "kind": "account",
                "path": "sale"
              }
            ]
          }
        },
        {
          "name": "commit",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  102,
                  97,
                  105,
                  114,
                  95,
                  99,
                  111,
                  109,
                  109,
                  105,
                  116
                ]
              },
              {
                "kind": "account",
                "path": "sale"
              },
              {
                "kind": "account",
                "path": "commit.wallet",
                "account": "FairCommit"
              }
            ]
          }
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "escrow_quote",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "escrow"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "wallet_quote",
          "writable": true
        },
        {
          "name": "quote_token_program"
        }
      ],
      "args": []
    },
    {
      "name": "register_ticker",
      "docs": [
        "Backfill: record the first coin for a ticker launched before ticker protection."
      ],
      "discriminator": [
        18,
        49,
        241,
        37,
        111,
        227,
        32,
        83
      ],
      "accounts": [
        {
          "name": "admin",
          "writable": true,
          "signer": true
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "coin",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "ticker",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  116,
                  105,
                  99,
                  107,
                  101,
                  114
                ]
              },
              {
                "kind": "arg",
                "path": "symbol"
              }
            ]
          }
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "symbol",
          "type": "string"
        }
      ]
    },
    {
      "name": "route_trade",
      "docs": [
        "A curve trade through woop, with the rebate paid back in the same transaction."
      ],
      "discriminator": [
        41,
        87,
        24,
        232,
        33,
        89,
        191,
        154
      ],
      "accounts": [
        {
          "name": "payer",
          "docs": [
            "Pays the coin's stats account rent on its first routed trade: the trader in the app, the cranker for a Fair",
            "Block (the batch that trades for a block is a program account and can't pay rent)."
          ],
          "writable": true,
          "signer": true
        },
        {
          "name": "trader",
          "writable": true,
          "signer": true
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "route",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  114,
                  111,
                  117,
                  116,
                  101
                ]
              }
            ]
          }
        },
        {
          "name": "coin",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  115,
                  116,
                  97,
                  116,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "stats",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  114,
                  111,
                  117,
                  116,
                  101,
                  95,
                  115,
                  116,
                  97,
                  116,
                  115
                ]
              },
              {
                "kind": "account",
                "path": "coin.mint",
                "account": "Coin"
              }
            ]
          }
        },
        {
          "name": "route_vault",
          "writable": true
        },
        {
          "name": "trader_quote",
          "writable": true
        },
        {
          "name": "quote_mint"
        },
        {
          "name": "quote_token_program"
        },
        {
          "name": "platform_config"
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "buy",
          "type": "bool"
        },
        {
          "name": "amount_in",
          "type": "u64"
        },
        {
          "name": "min_out",
          "type": "u64"
        },
        {
          "name": "share_fee_rate",
          "type": "u64"
        }
      ]
    },
    {
      "name": "set_curve_config",
      "docs": [
        "The woop curve (docs/CURVE.md). Admin: its settings."
      ],
      "discriminator": [
        204,
        69,
        243,
        237,
        169,
        204,
        21,
        59
      ],
      "accounts": [
        {
          "name": "admin",
          "writable": true,
          "signer": true,
          "relations": [
            "config"
          ]
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve_config",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "params",
          "type": {
            "defined": {
              "name": "CurveParams"
            }
          }
        }
      ]
    },
    {
      "name": "set_pair",
      "discriminator": [
        42,
        150,
        180,
        126,
        54,
        219,
        46,
        191
      ],
      "accounts": [
        {
          "name": "admin",
          "writable": true,
          "signer": true,
          "relations": [
            "config"
          ]
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "global_config"
        },
        {
          "name": "pair",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  112,
                  97,
                  105,
                  114
                ]
              },
              {
                "kind": "account",
                "path": "global_config"
              }
            ]
          }
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "params",
          "type": {
            "defined": {
              "name": "PairParams"
            }
          }
        }
      ]
    },
    {
      "name": "set_quote_price",
      "docs": [
        "Admin opens a quote token; the keeper posts its USD price within limits."
      ],
      "discriminator": [
        89,
        65,
        224,
        178,
        29,
        110,
        75,
        137
      ],
      "accounts": [
        {
          "name": "signer",
          "writable": true,
          "signer": true
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "mint"
        },
        {
          "name": "quote_price",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  112,
                  114,
                  105,
                  99,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "price_e12",
          "type": "u64"
        },
        {
          "name": "enabled",
          "type": "bool"
        }
      ]
    },
    {
      "name": "set_route",
      "docs": [
        "Fair launch: open a commit window for a coin that doesn't exist yet.",
        "Admin: the route's rebate and creator bonus rates (docs/INCENTIVES.md)."
      ],
      "discriminator": [
        244,
        231,
        3,
        84,
        233,
        61,
        146,
        149
      ],
      "accounts": [
        {
          "name": "admin",
          "writable": true,
          "signer": true
        },
        {
          "name": "config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "route",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  114,
                  111,
                  117,
                  116,
                  101
                ]
              }
            ]
          }
        },
        {
          "name": "system_program",
          "address": "11111111111111111111111111111111"
        }
      ],
      "args": [
        {
          "name": "params",
          "type": {
            "defined": {
              "name": "RouteParams"
            }
          }
        }
      ]
    },
    {
      "name": "update_config",
      "discriminator": [
        29,
        158,
        252,
        191,
        10,
        83,
        219,
        99
      ],
      "accounts": [
        {
          "name": "admin",
          "signer": true,
          "relations": [
            "config"
          ]
        },
        {
          "name": "config",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        }
      ],
      "args": [
        {
          "name": "params",
          "type": {
            "defined": {
              "name": "ConfigParams"
            }
          }
        }
      ]
    },
    {
      "name": "wamm_swap",
      "docs": [
        "A swap on a graduated coin's WAMM pool."
      ],
      "discriminator": [
        3,
        117,
        119,
        80,
        44,
        56,
        177,
        155
      ],
      "accounts": [
        {
          "name": "trader",
          "signer": true
        },
        {
          "name": "curve_config",
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101,
                  95,
                  99,
                  111,
                  110,
                  102,
                  105,
                  103
                ]
              }
            ]
          }
        },
        {
          "name": "curve",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "const",
                "value": [
                  99,
                  117,
                  114,
                  118,
                  101
                ]
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ]
          }
        },
        {
          "name": "mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "quote_mint",
          "relations": [
            "curve"
          ]
        },
        {
          "name": "base_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "token_program"
              },
              {
                "kind": "account",
                "path": "mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "quote_vault",
          "writable": true,
          "pda": {
            "seeds": [
              {
                "kind": "account",
                "path": "curve"
              },
              {
                "kind": "account",
                "path": "quote_token_program"
              },
              {
                "kind": "account",
                "path": "quote_mint"
              }
            ],
            "program": {
              "kind": "const",
              "value": [
                140,
                151,
                37,
                143,
                78,
                36,
                137,
                241,
                187,
                61,
                16,
                41,
                20,
                142,
                13,
                131,
                11,
                90,
                19,
                153,
                218,
                255,
                16,
                132,
                4,
                142,
                123,
                216,
                219,
                233,
                248,
                89
              ]
            }
          }
        },
        {
          "name": "trader_base",
          "writable": true
        },
        {
          "name": "trader_quote",
          "writable": true
        },
        {
          "name": "woop_tokens",
          "docs": [
            "Optional: the trader's $WOOP account, for half fees."
          ],
          "optional": true
        },
        {
          "name": "token_program",
          "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
        },
        {
          "name": "quote_token_program"
        }
      ],
      "args": [
        {
          "name": "buy",
          "type": "bool"
        },
        {
          "name": "amount_in",
          "type": "u64"
        },
        {
          "name": "min_out",
          "type": "u64"
        }
      ]
    }
  ],
  "accounts": [
    {
      "name": "Block",
      "discriminator": [
        12,
        72,
        207,
        108,
        1,
        228,
        167,
        221
      ]
    },
    {
      "name": "Coin",
      "discriminator": [
        215,
        195,
        53,
        238,
        217,
        196,
        213,
        51
      ]
    },
    {
      "name": "Config",
      "discriminator": [
        155,
        12,
        170,
        224,
        30,
        250,
        204,
        130
      ]
    },
    {
      "name": "Curve",
      "discriminator": [
        191,
        180,
        249,
        66,
        180,
        71,
        51,
        182
      ]
    },
    {
      "name": "CurveConfig",
      "discriminator": [
        96,
        75,
        211,
        144,
        193,
        36,
        243,
        41
      ]
    },
    {
      "name": "ExitOrder",
      "discriminator": [
        193,
        69,
        133,
        134,
        58,
        17,
        166,
        50
      ]
    },
    {
      "name": "FairCommit",
      "discriminator": [
        43,
        26,
        66,
        44,
        89,
        44,
        181,
        222
      ]
    },
    {
      "name": "FairLaunch",
      "discriminator": [
        66,
        0,
        62,
        83,
        227,
        66,
        175,
        18
      ]
    },
    {
      "name": "Order",
      "discriminator": [
        134,
        173,
        223,
        185,
        77,
        86,
        28,
        51
      ]
    },
    {
      "name": "Pair",
      "discriminator": [
        85,
        72,
        49,
        176,
        182,
        228,
        141,
        82
      ]
    },
    {
      "name": "Position",
      "discriminator": [
        170,
        188,
        143,
        228,
        122,
        64,
        247,
        208
      ]
    },
    {
      "name": "QuotePrice",
      "discriminator": [
        37,
        105,
        162,
        125,
        249,
        131,
        29,
        118
      ]
    },
    {
      "name": "RouteConfig",
      "discriminator": [
        199,
        3,
        230,
        135,
        198,
        43,
        57,
        160
      ]
    },
    {
      "name": "RouteStats",
      "discriminator": [
        227,
        155,
        237,
        55,
        246,
        69,
        177,
        99
      ]
    },
    {
      "name": "Ticker",
      "discriminator": [
        214,
        74,
        184,
        188,
        214,
        64,
        251,
        53
      ]
    }
  ],
  "events": [
    {
      "name": "BlockSettled",
      "discriminator": [
        5,
        6,
        241,
        58,
        120,
        223,
        42,
        68
      ]
    },
    {
      "name": "CoinLaunched",
      "discriminator": [
        169,
        65,
        49,
        61,
        3,
        18,
        32,
        179
      ]
    },
    {
      "name": "CreatorFeesCollected",
      "discriminator": [
        117,
        190,
        177,
        156,
        222,
        94,
        28,
        227
      ]
    },
    {
      "name": "CurveFeesClaimed",
      "discriminator": [
        134,
        227,
        212,
        155,
        241,
        169,
        9,
        62
      ]
    },
    {
      "name": "CurveGraduated",
      "discriminator": [
        3,
        228,
        116,
        195,
        148,
        182,
        240,
        104
      ]
    },
    {
      "name": "CurveLaunched",
      "discriminator": [
        202,
        20,
        128,
        231,
        162,
        180,
        61,
        53
      ]
    },
    {
      "name": "CurveRefunded",
      "discriminator": [
        25,
        252,
        111,
        228,
        75,
        41,
        123,
        9
      ]
    },
    {
      "name": "CurveTrade",
      "discriminator": [
        84,
        229,
        77,
        39,
        245,
        87,
        49,
        105
      ]
    },
    {
      "name": "FairLaunchClosed",
      "discriminator": [
        68,
        212,
        27,
        245,
        104,
        187,
        196,
        35
      ]
    },
    {
      "name": "FairLaunchOpened",
      "discriminator": [
        62,
        133,
        98,
        40,
        47,
        51,
        93,
        116
      ]
    },
    {
      "name": "FeesClaimed",
      "discriminator": [
        22,
        104,
        110,
        222,
        38,
        157,
        14,
        62
      ]
    },
    {
      "name": "PoolFeesHarvested",
      "discriminator": [
        137,
        224,
        158,
        217,
        233,
        199,
        9,
        100
      ]
    },
    {
      "name": "RewardsFunded",
      "discriminator": [
        84,
        233,
        245,
        203,
        228,
        147,
        165,
        92
      ]
    },
    {
      "name": "RouteTraded",
      "discriminator": [
        24,
        193,
        151,
        18,
        183,
        196,
        230,
        182
      ]
    },
    {
      "name": "TickerCopied",
      "discriminator": [
        177,
        243,
        242,
        225,
        6,
        61,
        0,
        85
      ]
    },
    {
      "name": "TickerRegistered",
      "discriminator": [
        84,
        8,
        95,
        226,
        16,
        181,
        38,
        94
      ]
    }
  ],
  "errors": [
    {
      "code": 6000,
      "name": "Paused",
      "msg": "Launches are paused"
    },
    {
      "code": 6001,
      "name": "PairDisabled",
      "msg": "This pair is not enabled"
    },
    {
      "code": 6002,
      "name": "WrongAccount",
      "msg": "Account does not match the expected address"
    },
    {
      "code": 6003,
      "name": "BadGlobalConfig",
      "msg": "Global config is not a LaunchLab GlobalConfig for this quote mint"
    },
    {
      "code": 6004,
      "name": "BadSplit",
      "msg": "Split must add up to 100%"
    },
    {
      "code": 6005,
      "name": "FeeTooHigh",
      "msg": "Fee rate is above LaunchLab's limit"
    },
    {
      "code": 6006,
      "name": "BadTokenAccount",
      "msg": "Token account has the wrong mint or owner"
    },
    {
      "code": 6007,
      "name": "MetadataTooLong",
      "msg": "Name, symbol or URI is too long"
    },
    {
      "code": 6008,
      "name": "Overflow",
      "msg": "Math overflow"
    },
    {
      "code": 6009,
      "name": "LockTooLarge",
      "msg": "Creator lock is above the maximum share of supply"
    },
    {
      "code": 6010,
      "name": "BadLockPeriod",
      "msg": "Creator lock cliff or unlock period is out of range"
    },
    {
      "code": 6011,
      "name": "BadWindow",
      "msg": "Fair launch window must be 30 seconds to an hour"
    },
    {
      "code": 6012,
      "name": "WindowClosed",
      "msg": "This fair launch window has closed"
    },
    {
      "code": 6013,
      "name": "WindowOpen",
      "msg": "This fair launch window is still open"
    },
    {
      "code": 6014,
      "name": "AlreadyLaunched",
      "msg": "This fair launch has already launched"
    },
    {
      "code": 6015,
      "name": "NotLaunched",
      "msg": "This fair launch hasn't launched yet"
    },
    {
      "code": 6016,
      "name": "OverWalletCap",
      "msg": "Above the per-wallet limit for this fair launch"
    },
    {
      "code": 6017,
      "name": "AlreadyClaimed",
      "msg": "Already claimed"
    },
    {
      "code": 6018,
      "name": "RefundNotOpen",
      "msg": "Refunds open a day after the window if the sale was never closed"
    },
    {
      "code": 6019,
      "name": "ZeroAmount",
      "msg": "Amount must be above zero"
    },
    {
      "code": 6020,
      "name": "BadTicker",
      "msg": "Ticker must be 2-10 capital letters or digits"
    },
    {
      "code": 6021,
      "name": "TickerFeeAccount",
      "msg": "This ticker is taken: pass the original coin's wrapped-SOL treasury to pay the 1 SOL fee"
    },
    {
      "code": 6022,
      "name": "BadRelease",
      "msg": "Release must be 10, 15, 30 or 60 minutes"
    },
    {
      "code": 6023,
      "name": "NothingUnlocked",
      "msg": "Nothing has unlocked since the last claim"
    },
    {
      "code": 6024,
      "name": "RefundsOpen",
      "msg": "Too late to open: refunds have started"
    },
    {
      "code": 6025,
      "name": "WrongShareFee",
      "msg": "Routed trades pay the share fee wherever the pair has one"
    },
    {
      "code": 6026,
      "name": "NotUpgradeAuthority",
      "msg": "Only the program's upgrade authority can create its config"
    },
    {
      "code": 6027,
      "name": "NotKeeper",
      "msg": "Only the keeper or the admin can post this price, and only for an open pair"
    },
    {
      "code": 6028,
      "name": "PriceTooSoon",
      "msg": "Price update is too soon after the last one"
    },
    {
      "code": 6029,
      "name": "PriceMove",
      "msg": "Price moved more than one update allows"
    },
    {
      "code": 6030,
      "name": "PriceStale",
      "msg": "Price is too old to launch with"
    },
    {
      "code": 6031,
      "name": "BadQuoteMint",
      "msg": "This quote token can't be used on the curve"
    },
    {
      "code": 6032,
      "name": "NotTrading",
      "msg": "This coin isn't trading on the curve"
    },
    {
      "code": 6033,
      "name": "Slippage",
      "msg": "Price moved past your limit"
    },
    {
      "code": 6034,
      "name": "CreatorLocked",
      "msg": "Creator tokens are locked until graduation"
    },
    {
      "code": 6035,
      "name": "InstantLimit",
      "msg": "Instant sells take at most a fifth of your position at a time: sell the rest in a Fair Block or the Exit Queue"
    },
    {
      "code": 6036,
      "name": "InstantCooldown",
      "msg": "One instant sell a minute: wait, or sell in a Fair Block"
    },
    {
      "code": 6037,
      "name": "BlockPending",
      "msg": "A Fair Block is waiting to settle (or the fair opening is still on): settle it first"
    },
    {
      "code": 6038,
      "name": "BlockOpen",
      "msg": "This Fair Block is still collecting orders"
    },
    {
      "code": 6039,
      "name": "OrderUnclaimed",
      "msg": "Your last Fair Block order hasn't been claimed yet"
    },
    {
      "code": 6040,
      "name": "TooManyExits",
      "msg": "At most two Exit Queue orders per wallet in a coin"
    },
    {
      "code": 6041,
      "name": "NotOwner",
      "msg": "Only the order's wallet can cancel it"
    },
    {
      "code": 6042,
      "name": "RefundNotDue",
      "msg": "Refunds start only after the coin's deadline, with no Fair Block waiting"
    },
    {
      "code": 6043,
      "name": "NotRefunding",
      "msg": "This coin isn't in refund mode"
    },
    {
      "code": 6044,
      "name": "AlreadyRefunded",
      "msg": "Already refunded"
    },
    {
      "code": 6045,
      "name": "ExitUnsettled",
      "msg": "Withdraw what your Exit Queue orders sold for first"
    },
    {
      "code": 6046,
      "name": "NotGraduated",
      "msg": "This coin hasn't graduated"
    },
    {
      "code": 6047,
      "name": "OrderTooSmall",
      "msg": "Too small to open a Fair Block"
    },
    {
      "code": 6048,
      "name": "NotEnoughReserve",
      "msg": "Not enough real quote in the curve for this sell: sell in a Fair Block"
    },
    {
      "code": 6049,
      "name": "RefundPending",
      "msg": "Every order and Exit Queue sale must be paid out before refunds"
    },
    {
      "code": 6050,
      "name": "FreezeTooSoon",
      "msg": "Too soon after graduation"
    },
    {
      "code": 6051,
      "name": "NotEnoughCoins",
      "msg": "More than you hold"
    },
    {
      "code": 6052,
      "name": "PastDeadline",
      "msg": "Past this coin's refund deadline: it's going into refunds"
    }
  ],
  "types": [
    {
      "name": "Block",
      "docs": [
        "A settled Fair Block, for its orders to claim against. PDA [\"curve_block\", mint, id (u64 LE)]. Closed (rent to",
        "whoever settled it) when its last order is claimed."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "id",
            "type": "u64"
          },
          {
            "name": "settler",
            "type": "pubkey"
          },
          {
            "name": "buy_net",
            "docs": [
              "Buyers: quote after fees (advance included), quote used, base bought. Sellers: base sold, quote (before fees)."
            ],
            "type": "u64"
          },
          {
            "name": "buy_used",
            "type": "u64"
          },
          {
            "name": "buy_base",
            "type": "u64"
          },
          {
            "name": "sell_base",
            "type": "u64"
          },
          {
            "name": "sell_quote",
            "type": "u64"
          },
          {
            "name": "quote_left",
            "docs": [
              "What's still to pay out, and how many orders haven't claimed."
            ],
            "type": "u64"
          },
          {
            "name": "base_left",
            "type": "u64"
          },
          {
            "name": "orders_left",
            "type": "u32"
          },
          {
            "name": "bump",
            "type": "u8"
          },
          {
            "name": "sell_full_base",
            "docs": [
              "Sellers by fee class (full fee, half fee for $WOOP holders): base sold, quote before fees, quote after fees.",
              "Fixed at settle, so a fee change before the claims can't pay sellers more (or less) than was booked."
            ],
            "type": "u64"
          },
          {
            "name": "sell_half_base",
            "type": "u64"
          },
          {
            "name": "sell_full_gross",
            "type": "u64"
          },
          {
            "name": "sell_half_gross",
            "type": "u64"
          },
          {
            "name": "sell_full_net",
            "type": "u64"
          },
          {
            "name": "sell_half_net",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "BlockSettled",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "id",
            "type": "u64"
          },
          {
            "name": "orders",
            "type": "u32"
          },
          {
            "name": "buy_net",
            "type": "u64"
          },
          {
            "name": "buy_used",
            "type": "u64"
          },
          {
            "name": "buy_base",
            "type": "u64"
          },
          {
            "name": "sell_base",
            "type": "u64"
          },
          {
            "name": "sell_quote",
            "type": "u64"
          },
          {
            "name": "x",
            "type": "u64"
          },
          {
            "name": "sold",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "Coin",
      "docs": [
        "One launched coin. PDA [\"state\", mint].",
        "The coin's signer is a separate system-owned PDA [\"coin\", mint]: LaunchLab platform admin,",
        "fee wallet, Fee-Key NFT owner and pool creator. Its token accounts are the coin's treasury,",
        "and everything in the treasury belongs to holders."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "creator",
            "docs": [
              "The person who launched it; receives creator fees."
            ],
            "type": "pubkey"
          },
          {
            "name": "global_config",
            "type": "pubkey"
          },
          {
            "name": "platform_config",
            "type": "pubkey"
          },
          {
            "name": "pool_state",
            "type": "pubkey"
          },
          {
            "name": "created_at",
            "type": "i64"
          },
          {
            "name": "holders_quote",
            "docs": [
              "Running totals, in quote units."
            ],
            "type": "u64"
          },
          {
            "name": "creator_quote",
            "type": "u64"
          },
          {
            "name": "zync_quote",
            "type": "u64"
          },
          {
            "name": "bump",
            "type": "u8"
          },
          {
            "name": "signer_bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "CoinLaunched",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "creator",
            "type": "pubkey"
          },
          {
            "name": "global_config",
            "type": "pubkey"
          },
          {
            "name": "platform_config",
            "type": "pubkey"
          },
          {
            "name": "pool_state",
            "type": "pubkey"
          }
        ]
      }
    },
    {
      "name": "Config",
      "docs": [
        "Global settings. PDA [\"config\"]."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "admin",
            "type": "pubkey"
          },
          {
            "name": "zync_wallet",
            "docs": [
              "Receives woop's share of every coin's fees (its token accounts, one per mint)."
            ],
            "type": "pubkey"
          },
          {
            "name": "paused",
            "type": "bool"
          },
          {
            "name": "creator_fee_rate",
            "docs": [
              "Creator fee on the curve, set on every coin's platform (5_000 = 0.5%)."
            ],
            "type": "u64"
          },
          {
            "name": "pool_holders_bps",
            "docs": [
              "Split of the graduated pool's fees."
            ],
            "type": "u16"
          },
          {
            "name": "pool_creator_bps",
            "type": "u16"
          },
          {
            "name": "pool_zync_bps",
            "type": "u16"
          },
          {
            "name": "cpswap_config",
            "docs": [
              "CPMM fee tier every coin graduates into."
            ],
            "type": "pubkey"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "ConfigParams",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "admin",
            "type": "pubkey"
          },
          {
            "name": "zync_wallet",
            "type": "pubkey"
          },
          {
            "name": "paused",
            "type": "bool"
          },
          {
            "name": "creator_fee_rate",
            "type": "u64"
          },
          {
            "name": "pool_holders_bps",
            "type": "u16"
          },
          {
            "name": "pool_creator_bps",
            "type": "u16"
          },
          {
            "name": "pool_zync_bps",
            "type": "u16"
          },
          {
            "name": "cpswap_config",
            "type": "pubkey"
          }
        ]
      }
    },
    {
      "name": "CreatorFeesCollected",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "token_0",
            "type": "u64"
          },
          {
            "name": "token_1",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "Curve",
      "docs": [
        "One coin on the woop curve. PDA [\"curve\", mint]: the mint and freeze authority, and the owner of the base and",
        "quote vaults (its associated token accounts). The creator's locked tokens sit in the associated token account of",
        "[\"curve_lock\", mint]."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "creator",
            "type": "pubkey"
          },
          {
            "name": "quote_mint",
            "type": "pubkey"
          },
          {
            "name": "quote_token_program",
            "type": "pubkey"
          },
          {
            "name": "status",
            "type": "u8"
          },
          {
            "name": "v0",
            "docs": [
              "Virtual quote, fixed at launch."
            ],
            "type": "u64"
          },
          {
            "name": "reserve",
            "docs": [
              "Real quote held for the curve (excludes fees owed), and the creator's advance still owed. The curve prices on",
              "`reserve + owed`."
            ],
            "type": "u64"
          },
          {
            "name": "owed",
            "type": "u64"
          },
          {
            "name": "advance",
            "type": "u64"
          },
          {
            "name": "sold",
            "docs": [
              "Base sold (the advance included)."
            ],
            "type": "u64"
          },
          {
            "name": "creator_locked",
            "docs": [
              "Creator's tokens in the lock vault."
            ],
            "type": "u64"
          },
          {
            "name": "holders_fees",
            "docs": [
              "Fees owed, held in the quote vault."
            ],
            "type": "u64"
          },
          {
            "name": "creator_fees",
            "type": "u64"
          },
          {
            "name": "woop_fees",
            "type": "u64"
          },
          {
            "name": "paid_in",
            "docs": [
              "Sum of every wallet's positive net quote paid in (the advance repaid counts as the creator's), for refunds."
            ],
            "type": "u64"
          },
          {
            "name": "advance_repaid",
            "type": "u64"
          },
          {
            "name": "created_at",
            "type": "i64"
          },
          {
            "name": "launched_at",
            "type": "i64"
          },
          {
            "name": "bump",
            "type": "u8"
          },
          {
            "name": "lock_bump",
            "type": "u8"
          },
          {
            "name": "block_id",
            "docs": [
              "The Fair Block collecting orders (or closed and waiting to settle): its number, when it closes, buyers' quote",
              "after fees (the creator's advance included), the buy fees taken, the advance in it, and the base sold into it",
              "by wallets paying the full and the half fee."
            ],
            "type": "u64"
          },
          {
            "name": "block_open",
            "type": "bool"
          },
          {
            "name": "block_closes_at",
            "type": "i64"
          },
          {
            "name": "block_buy_net",
            "type": "u64"
          },
          {
            "name": "block_buy_fees",
            "type": {
              "array": [
                "u64",
                3
              ]
            }
          },
          {
            "name": "block_advance",
            "type": "u64"
          },
          {
            "name": "block_sell_full",
            "type": "u64"
          },
          {
            "name": "block_sell_half",
            "type": "u64"
          },
          {
            "name": "block_orders",
            "type": "u32"
          },
          {
            "name": "pending_quote",
            "docs": [
              "Quote and base in the vaults that belong to orders (waiting for their block, or settled and not yet claimed)."
            ],
            "type": "u64"
          },
          {
            "name": "pending_base",
            "type": "u64"
          },
          {
            "name": "advance_base",
            "docs": [
              "Base the creator's advance bought (burned at graduation for the part still owed)."
            ],
            "type": "u64"
          },
          {
            "name": "pool_base",
            "docs": [
              "After graduation the vaults are the WAMM pool: `reserve` is its quote and `pool_base` its base."
            ],
            "type": "u64"
          },
          {
            "name": "graduated_at",
            "type": "i64"
          },
          {
            "name": "burned",
            "docs": [
              "Burned at graduation (unsold coins the pool didn't need, and the unpaid advance's coins)."
            ],
            "type": "u64"
          },
          {
            "name": "creator_vest",
            "docs": [
              "Creator vesting: locked at graduation, claimed since; it unlocks over `unlock_days` after a cliff of",
              "`cliff_days` (chosen at launch, only ever made longer)."
            ],
            "type": "u64"
          },
          {
            "name": "creator_claimed",
            "type": "u64"
          },
          {
            "name": "unlock_days",
            "type": "u16"
          },
          {
            "name": "cliff_days",
            "type": "u16"
          },
          {
            "name": "refund_at",
            "docs": [
              "Fixed at launch, so later config changes don't reach live coins: when refunds can start, and when the fair",
              "opening ends."
            ],
            "type": "i64"
          },
          {
            "name": "opening_ends",
            "type": "i64"
          },
          {
            "name": "unclaimed",
            "docs": [
              "Orders in settled blocks not yet claimed (their positions aren't booked yet): refunds wait for none."
            ],
            "type": "u32"
          }
        ]
      }
    },
    {
      "name": "CurveConfig",
      "docs": [
        "Settings for the woop curve (docs/CURVE.md). PDA [\"curve_config\"]; the admin is woop_core's Config admin."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "enabled",
            "type": "bool"
          },
          {
            "name": "keeper",
            "docs": [
              "Posts quote prices (within the limits below); the admin can too, without them."
            ],
            "type": "pubkey"
          },
          {
            "name": "woop_mint",
            "docs": [
              "Wallets holding at least `tier_amount` of this mint pay half the curve fee."
            ],
            "type": "pubkey"
          },
          {
            "name": "tier_amount",
            "type": "u64"
          },
          {
            "name": "trade_bps",
            "docs": [
              "Curve fee on every buy, in bps of the trade: holders, creator, woop (60 / 50 / 40 = 1.5%)."
            ],
            "type": {
              "array": [
                "u16",
                3
              ]
            }
          },
          {
            "name": "instant_bps",
            "docs": [
              "Instant sell fee, same order (400 / 300 / 300 = 10%), the same for everyone."
            ],
            "type": {
              "array": [
                "u16",
                3
              ]
            }
          },
          {
            "name": "instant_max_bps",
            "docs": [
              "Most of a position one instant sell can take, and the wait between instant sells."
            ],
            "type": "u16"
          },
          {
            "name": "instant_cooldown",
            "type": "i64"
          },
          {
            "name": "start_mcap_usd",
            "docs": [
              "Every coin opens at this market cap (whole USD); graduation is 10x it."
            ],
            "type": "u64"
          },
          {
            "name": "advance_lamports",
            "docs": [
              "The creator's launch advance, in lamports of SOL (converted to the pair at launch)."
            ],
            "type": "u64"
          },
          {
            "name": "price_max_age",
            "docs": [
              "Quote prices older than this can't launch a coin; one keeper update can move a price at most",
              "`price_max_move_bps`, at most once every `price_min_interval` seconds."
            ],
            "type": "i64"
          },
          {
            "name": "price_max_move_bps",
            "type": "u16"
          },
          {
            "name": "price_min_interval",
            "type": "i64"
          },
          {
            "name": "refund_after",
            "docs": [
              "A coin that hasn't graduated this long after launch goes into refund mode."
            ],
            "type": "i64"
          },
          {
            "name": "block_window",
            "docs": [
              "Fair Blocks: how long a block collects orders; the opening block's length; the most one wallet can put into",
              "the opening (bps of the opening market cap)."
            ],
            "type": "i64"
          },
          {
            "name": "opening_secs",
            "type": "i64"
          },
          {
            "name": "opening_cap_bps",
            "type": "u16"
          },
          {
            "name": "exit_bps",
            "docs": [
              "Exit Queue fee per side, in bps of the quote matched: holders, creator, woop (55 / 25 / 20 = 1%)."
            ],
            "type": {
              "array": [
                "u16",
                3
              ]
            }
          },
          {
            "name": "pool_bps",
            "docs": [
              "WAMM pool fee after graduation, same order (50 / 20 / 30 = 1%)."
            ],
            "type": {
              "array": [
                "u16",
                3
              ]
            }
          },
          {
            "name": "grad_bonus_bps",
            "docs": [
              "The creator's graduation bonus, bps of the quote that graduates (paid out of woop's fees), and how many days",
              "their locked coins take to unlock after graduation (an equal part each day)."
            ],
            "type": "u16"
          },
          {
            "name": "creator_unlock_days",
            "type": "u16"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "CurveFeesClaimed",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "to_holders",
            "type": "u64"
          },
          {
            "name": "to_creator",
            "type": "u64"
          },
          {
            "name": "to_woop",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "CurveGraduated",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "pool_quote",
            "type": "u64"
          },
          {
            "name": "pool_base",
            "type": "u64"
          },
          {
            "name": "burned",
            "type": "u64"
          },
          {
            "name": "advance_burned",
            "type": "u64"
          },
          {
            "name": "creator_bonus",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "CurveLaunched",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "creator",
            "type": "pubkey"
          },
          {
            "name": "quote_mint",
            "type": "pubkey"
          },
          {
            "name": "v0",
            "type": "u64"
          },
          {
            "name": "advance",
            "type": "u64"
          },
          {
            "name": "opens_until",
            "docs": [
              "The fair opening's block closes then."
            ],
            "type": "i64"
          }
        ]
      }
    },
    {
      "name": "CurveParams",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "enabled",
            "type": "bool"
          },
          {
            "name": "keeper",
            "type": "pubkey"
          },
          {
            "name": "woop_mint",
            "type": "pubkey"
          },
          {
            "name": "tier_amount",
            "type": "u64"
          },
          {
            "name": "trade_bps",
            "type": {
              "array": [
                "u16",
                3
              ]
            }
          },
          {
            "name": "instant_bps",
            "type": {
              "array": [
                "u16",
                3
              ]
            }
          },
          {
            "name": "instant_max_bps",
            "type": "u16"
          },
          {
            "name": "instant_cooldown",
            "type": "i64"
          },
          {
            "name": "start_mcap_usd",
            "type": "u64"
          },
          {
            "name": "advance_lamports",
            "type": "u64"
          },
          {
            "name": "price_max_age",
            "type": "i64"
          },
          {
            "name": "price_max_move_bps",
            "type": "u16"
          },
          {
            "name": "price_min_interval",
            "type": "i64"
          },
          {
            "name": "refund_after",
            "type": "i64"
          },
          {
            "name": "block_window",
            "type": "i64"
          },
          {
            "name": "opening_secs",
            "type": "i64"
          },
          {
            "name": "opening_cap_bps",
            "type": "u16"
          },
          {
            "name": "exit_bps",
            "type": {
              "array": [
                "u16",
                3
              ]
            }
          },
          {
            "name": "pool_bps",
            "type": {
              "array": [
                "u16",
                3
              ]
            }
          },
          {
            "name": "grad_bonus_bps",
            "type": "u16"
          },
          {
            "name": "creator_unlock_days",
            "type": "u16"
          }
        ]
      }
    },
    {
      "name": "CurveRefunded",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "wallet",
            "type": "pubkey"
          },
          {
            "name": "amount",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "CurveTrade",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "trader",
            "type": "pubkey"
          },
          {
            "name": "buy",
            "type": "bool"
          },
          {
            "name": "instant",
            "type": "bool"
          },
          {
            "name": "quote",
            "docs": [
              "Quote paid (buy, fees included) or received (sell, after fees), and base bought or sold."
            ],
            "type": "u64"
          },
          {
            "name": "base",
            "type": "u64"
          },
          {
            "name": "fee",
            "type": "u64"
          },
          {
            "name": "x",
            "docs": [
              "The curve after the trade (after graduation: the pool's quote and base)."
            ],
            "type": "u64"
          },
          {
            "name": "sold",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "ExitOrder",
      "docs": [
        "A sell waiting in a coin's Exit Queue. PDA [\"curve_exit\", mint, wallet, slot]. Instant buys fill it at the curve's",
        "price (never below `floor_x18`), so the price doesn't drop; the seller withdraws the quote, or cancels for the rest."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "wallet",
            "type": "pubkey"
          },
          {
            "name": "slot",
            "type": "u8"
          },
          {
            "name": "half",
            "docs": [
              "Pays half the fee ($WOOP holder when placed)."
            ],
            "type": "bool"
          },
          {
            "name": "floor_x18",
            "docs": [
              "Lowest price it fills at: quote per base unit × 1e18."
            ],
            "type": "u128"
          },
          {
            "name": "base_left",
            "type": "u64"
          },
          {
            "name": "quote_owed",
            "docs": [
              "Quote waiting for the seller (after their fee), and what was filled before fees since the last withdraw."
            ],
            "type": "u64"
          },
          {
            "name": "filled",
            "type": "u64"
          },
          {
            "name": "placed_at",
            "type": "i64"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "FairCommit",
      "docs": [
        "One wallet's commitment to a fair launch. PDA [\"fair_commit\", sale, wallet]."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "sale",
            "type": "pubkey"
          },
          {
            "name": "wallet",
            "type": "pubkey"
          },
          {
            "name": "amount",
            "type": "u64"
          },
          {
            "name": "claimed",
            "docs": [
              "Everything paid out (all the coins and the refund), or refunded because the sale never opened."
            ],
            "type": "bool"
          },
          {
            "name": "bump",
            "type": "u8"
          },
          {
            "name": "sent",
            "docs": [
              "Coins sent so far during the release, and whether the unused part of the commitment has gone back."
            ],
            "type": "u64"
          },
          {
            "name": "refund_paid",
            "type": "bool"
          }
        ]
      }
    },
    {
      "name": "FairLaunch",
      "docs": [
        "A fair launch: everyone who commits in the window buys at the same price, in one combined opening buy.",
        "PDA [\"fair\", seed]. The coin's mint is the PDA [\"fair_mint\", sale] (only this program can create it, so nobody can",
        "trade the coin before the opening buy); the escrow [\"fair_escrow\", sale] is a system-owned PDA that holds the",
        "commits, pays the launch and receives the coins."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "creator",
            "type": "pubkey"
          },
          {
            "name": "seed",
            "type": "pubkey"
          },
          {
            "name": "global_config",
            "type": "pubkey"
          },
          {
            "name": "quote_mint",
            "type": "pubkey"
          },
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "name",
            "type": "string"
          },
          {
            "name": "symbol",
            "type": "string"
          },
          {
            "name": "uri",
            "type": "string"
          },
          {
            "name": "ends_at",
            "type": "i64"
          },
          {
            "name": "max_per_wallet",
            "docs": [
              "Most a single wallet can commit (0 = no limit)."
            ],
            "type": "u64"
          },
          {
            "name": "committed",
            "docs": [
              "Quote committed in total, and the most the opening buy will spend."
            ],
            "type": "u64"
          },
          {
            "name": "cap",
            "type": "u64"
          },
          {
            "name": "launched",
            "type": "bool"
          },
          {
            "name": "used",
            "docs": [
              "Filled in at the close: quote spent on the opening buy and coins it bought."
            ],
            "type": "u64"
          },
          {
            "name": "bought",
            "type": "u64"
          },
          {
            "name": "bump",
            "type": "u8"
          },
          {
            "name": "mint_bump",
            "type": "u8"
          },
          {
            "name": "escrow_bump",
            "type": "u8"
          },
          {
            "name": "lock_amount",
            "docs": [
              "The creator's lock, given to them when the coin launches (all zero for none). Same limits as a normal launch;",
              "it comes out of what the curve sells. Last in the account, so sales opened before it still read."
            ],
            "type": "u64"
          },
          {
            "name": "lock_cliff",
            "type": "u64"
          },
          {
            "name": "lock_unlock",
            "type": "u64"
          },
          {
            "name": "release",
            "docs": [
              "Seconds over which committers' coins unlock, and when the sale opened (set at the close). Sales opened before",
              "the release existed read 0: everything at once."
            ],
            "type": "i64"
          },
          {
            "name": "opened_at",
            "type": "i64"
          }
        ]
      }
    },
    {
      "name": "FairLaunchClosed",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "sale",
            "type": "pubkey"
          },
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "committed",
            "type": "u64"
          },
          {
            "name": "used",
            "type": "u64"
          },
          {
            "name": "bought",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "FairLaunchOpened",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "sale",
            "type": "pubkey"
          },
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "creator",
            "type": "pubkey"
          },
          {
            "name": "ends_at",
            "type": "i64"
          }
        ]
      }
    },
    {
      "name": "FeesClaimed",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "platform_fee",
            "type": "u64"
          },
          {
            "name": "creator_fee",
            "type": "u64"
          },
          {
            "name": "to_holders",
            "type": "u64"
          },
          {
            "name": "to_zync",
            "type": "u64"
          },
          {
            "name": "to_creator",
            "type": "u64"
          },
          {
            "name": "route_repaid",
            "docs": [
              "Out of the platform fee before the split: the route's rebates paid back to its vault, and the creator's bonus",
              "on trades routed through woop."
            ],
            "type": "u64"
          },
          {
            "name": "route_bonus",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "LockParams",
      "docs": [
        "Optional creator lock: `amount` base units vest to the creator from graduation, after `cliff_period`",
        "seconds, linearly over `unlock_period`. All zero for no lock. LaunchLab holds and releases the tokens."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "amount",
            "type": "u64"
          },
          {
            "name": "cliff_period",
            "type": "u64"
          },
          {
            "name": "unlock_period",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "Order",
      "docs": [
        "One wallet's order in a Fair Block. PDA [\"curve_order\", mint, wallet]: one at a time; claim it before the next",
        "block (anyone can claim, and the keeper does). Adding to an order in the same block is fine."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "wallet",
            "type": "pubkey"
          },
          {
            "name": "block_id",
            "type": "u64"
          },
          {
            "name": "buy",
            "type": "bool"
          },
          {
            "name": "half",
            "docs": [
              "Pays half the fee ($WOOP holder when the order was placed)."
            ],
            "type": "bool"
          },
          {
            "name": "gross",
            "docs": [
              "Buy: quote paid in (fees included), quote after fees (advance included), the advance. Sell: base in `net`."
            ],
            "type": "u64"
          },
          {
            "name": "net",
            "type": "u64"
          },
          {
            "name": "advance",
            "type": "u64"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "Pair",
      "docs": [
        "One approved quote token. PDA [\"pair\", global_config]."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "global_config",
            "docs": [
              "LaunchLab GlobalConfig for this quote token."
            ],
            "type": "pubkey"
          },
          {
            "name": "quote_mint",
            "type": "pubkey"
          },
          {
            "name": "enabled",
            "type": "bool"
          },
          {
            "name": "platform_fee_rate",
            "docs": [
              "Coin platform fee on the curve (10_000 = 1.0%)."
            ],
            "type": "u64"
          },
          {
            "name": "zync_bps",
            "docs": [
              "woop's share of the platform fee; the rest stays with holders."
            ],
            "type": "u16"
          },
          {
            "name": "supply",
            "docs": [
              "Curve shape for every coin on this pair (base units, 6 decimals; raise in quote units)."
            ],
            "type": "u64"
          },
          {
            "name": "total_base_sell",
            "type": "u64"
          },
          {
            "name": "raise",
            "type": "u64"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "PairParams",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "quote_mint",
            "type": "pubkey"
          },
          {
            "name": "enabled",
            "type": "bool"
          },
          {
            "name": "platform_fee_rate",
            "type": "u64"
          },
          {
            "name": "zync_bps",
            "type": "u16"
          },
          {
            "name": "supply",
            "type": "u64"
          },
          {
            "name": "total_base_sell",
            "type": "u64"
          },
          {
            "name": "raise",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "PoolFeesHarvested",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "fee_lp",
            "type": "u64"
          },
          {
            "name": "token_0",
            "type": "u64"
          },
          {
            "name": "token_1",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "Position",
      "docs": [
        "One wallet's position in one curve coin. PDA [\"curve_pos\", mint, wallet]."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "wallet",
            "type": "pubkey"
          },
          {
            "name": "paid",
            "docs": [
              "Quote put into the curve (after fees) and taken out of it (before the sell fee)."
            ],
            "type": "u64"
          },
          {
            "name": "received",
            "type": "u64"
          },
          {
            "name": "instant_base",
            "docs": [
              "Instant sells: the position they're measured against, sold against it so far, and the last one's time."
            ],
            "type": "u64"
          },
          {
            "name": "instant_sold",
            "type": "u64"
          },
          {
            "name": "last_instant",
            "type": "i64"
          },
          {
            "name": "bump",
            "type": "u8"
          },
          {
            "name": "refunded",
            "docs": [
              "Paid out in refund mode."
            ],
            "type": "bool"
          }
        ]
      }
    },
    {
      "name": "QuotePrice",
      "docs": [
        "One allowed quote token and its USD price. PDA [\"curve_price\", mint]."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "decimals",
            "type": "u8"
          },
          {
            "name": "enabled",
            "type": "bool"
          },
          {
            "name": "price_e12",
            "docs": [
              "USD per whole token, × 1e12."
            ],
            "type": "u64"
          },
          {
            "name": "updated_at",
            "type": "i64"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "RewardsFunded",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "reward_mint",
            "type": "pubkey"
          },
          {
            "name": "amount",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "RouteConfig",
      "docs": [
        "Trades routed through woop (route_trade) pay the trader a rebate out of a woop vault, in the same transaction, so",
        "woop is cheaper than trading the curve from another app. PDA [\"route\"]: settings, and the authority of the vaults",
        "(its associated token account for each quote mint)."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "enabled",
            "type": "bool"
          },
          {
            "name": "rebate_rate",
            "docs": [
              "Paid back to the trader on every routed trade (LaunchLab's denominator: 12_500 = 1.25% of the quote traded)."
            ],
            "type": "u64"
          },
          {
            "name": "creator_bonus_rate",
            "docs": [
              "Owed to the coin's creator on every routed trade, paid out of the platform fee when it's claimed."
            ],
            "type": "u64"
          },
          {
            "name": "min_platform_fee_rate",
            "docs": [
              "Only coins whose platform fee is at least this get the rebate and bonus (older coins launched on a lower fee",
              "would otherwise be paid back more than they charged)."
            ],
            "type": "u64"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "RouteParams",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "enabled",
            "type": "bool"
          },
          {
            "name": "rebate_rate",
            "type": "u64"
          },
          {
            "name": "creator_bonus_rate",
            "type": "u64"
          },
          {
            "name": "min_platform_fee_rate",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "RouteStats",
      "docs": [
        "One coin's routed trading not yet settled by claim_fees. PDA [\"route_stats\", mint], made by its first routed trade."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "rebates_unsettled",
            "docs": [
              "Owed to the route's vault from the coin's next platform fee claim: the rebate rate on every routed trade (paid",
              "out or not, so an empty vault fills itself)."
            ],
            "type": "u64"
          },
          {
            "name": "bonus_unsettled",
            "docs": [
              "Creator bonus owed, to pay out of the coin's next platform fee claim."
            ],
            "type": "u64"
          },
          {
            "name": "routed_quote",
            "docs": [
              "Running totals (quote units): volume routed, rebates paid to traders, bonus paid to the creator."
            ],
            "type": "u64"
          },
          {
            "name": "rebates_quote",
            "type": "u64"
          },
          {
            "name": "bonus_quote",
            "type": "u64"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "RouteTraded",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "trader",
            "type": "pubkey"
          },
          {
            "name": "buy",
            "type": "bool"
          },
          {
            "name": "quote",
            "docs": [
              "Quote the trade moved: paid on a buy, received on a sell (before the rebate)."
            ],
            "type": "u64"
          },
          {
            "name": "rebate",
            "type": "u64"
          },
          {
            "name": "creator_bonus",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "Ticker",
      "docs": [
        "A ticker's first coin. PDA [\"ticker\", SYMBOL]. Any later coin with the same ticker pays TICKER_FEE (wrapped SOL)",
        "into this coin's treasury, for its holders."
      ],
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "mint",
            "type": "pubkey"
          },
          {
            "name": "bump",
            "type": "u8"
          }
        ]
      }
    },
    {
      "name": "TickerCopied",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "symbol",
            "type": "string"
          },
          {
            "name": "original",
            "type": "pubkey"
          },
          {
            "name": "payer",
            "type": "pubkey"
          },
          {
            "name": "fee",
            "type": "u64"
          }
        ]
      }
    },
    {
      "name": "TickerRegistered",
      "type": {
        "kind": "struct",
        "fields": [
          {
            "name": "symbol",
            "type": "string"
          },
          {
            "name": "mint",
            "type": "pubkey"
          }
        ]
      }
    }
  ]
}