[INFO] cloning repository https://github.com/cawabunga/ref-finance-stableswap-math
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cawabunga/ref-finance-stableswap-math" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcawabunga%2Fref-finance-stableswap-math", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcawabunga%2Fref-finance-stableswap-math'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8f96090c52b6ef093cbbd2bc5a642fb55bca5f56
[INFO] checking cawabunga/ref-finance-stableswap-math against master#c8a31b780d5415358566a20b94912620a3f27067 for pr-139493-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcawabunga%2Fref-finance-stableswap-math" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/cawabunga/ref-finance-stableswap-math
[INFO] finished tweaking git repo https://github.com/cawabunga/ref-finance-stableswap-math
[INFO] tweaked toml for git repo https://github.com/cawabunga/ref-finance-stableswap-math written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/cawabunga/ref-finance-stableswap-math on toolchain c8a31b780d5415358566a20b94912620a3f27067
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/cawabunga/ref-finance-stableswap-math already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-test-macro v0.3.43
[INFO] [stderr]   Downloaded minicov v0.3.5
[INFO] [stderr]   Downloaded wasm-bindgen-test v0.3.43
[INFO] [stderr]   Downloaded ahash v0.4.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8cc95fe4942936721a1d223e47e860ed30c0f2fdd8351ab342758a24690a5164
[INFO] running `Command { std: "docker" "start" "-a" "8cc95fe4942936721a1d223e47e860ed30c0f2fdd8351ab342758a24690a5164", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8cc95fe4942936721a1d223e47e860ed30c0f2fdd8351ab342758a24690a5164", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8cc95fe4942936721a1d223e47e860ed30c0f2fdd8351ab342758a24690a5164", kill_on_drop: false }`
[INFO] [stdout] 8cc95fe4942936721a1d223e47e860ed30c0f2fdd8351ab342758a24690a5164
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a19909fa295db3ecb1093ded409ad9a9ffbe42e2cb54c6aa6d49dd2e83d12ee9
[INFO] running `Command { std: "docker" "start" "-a" "a19909fa295db3ecb1093ded409ad9a9ffbe42e2cb54c6aa6d49dd2e83d12ee9", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.57
[INFO] [stderr]    Compiling unicode-xid v0.2.5
[INFO] [stderr]    Compiling serde_json v1.0.128
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling num-bigint v0.3.3
[INFO] [stderr]     Checking ahash v0.4.8
[INFO] [stderr]    Compiling itoa v1.0.11
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling indexmap v2.5.0
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]    Compiling syn v2.0.77
[INFO] [stderr]     Checking regex-syntax v0.8.4
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]    Compiling wee_alloc v0.4.5
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]     Checking memory_units v0.4.0
[INFO] [stderr]     Checking hashbrown v0.9.1
[INFO] [stderr]     Checking uint v0.9.5
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking sha3 v0.9.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking regex-automata v0.4.7
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.93
[INFO] [stderr]     Checking regex v1.10.6
[INFO] [stderr]     Checking near-runtime-utils v4.0.0-pre.1
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]    Compiling derive_more v0.99.18
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.43
[INFO] [stderr]    Compiling borsh-derive-internal v0.8.2
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.8.2
[INFO] [stderr]    Compiling near-sdk-core v3.1.0
[INFO] [stderr]    Compiling near-sdk-macros v3.1.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.93
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.93
[INFO] [stderr]     Checking wasm-bindgen v0.2.93
[INFO] [stderr]    Compiling serde v1.0.210
[INFO] [stderr]     Checking js-sys v0.3.70
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.43
[INFO] [stderr]     Checking wasm-bindgen-test v0.3.43
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling near-rpc-error-core v0.1.0
[INFO] [stderr]    Compiling borsh-derive v0.8.2
[INFO] [stderr]    Compiling near-rpc-error-macro v0.1.0
[INFO] [stderr]     Checking borsh v0.8.2
[INFO] [stderr]     Checking near-primitives-core v0.4.0
[INFO] [stderr]     Checking near-vm-errors v4.0.0-pre.1
[INFO] [stderr]     Checking near-vm-logic v4.0.0-pre.1
[INFO] [stderr]     Checking near-sdk v3.1.0
[INFO] [stderr]     Checking ref-finance-stableswap-math v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[wasm_bindgen(js_name = getAmountOut)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen` may come from an old version of the `wasm_bindgen_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[wasm_bindgen(js_name = getAmountOut)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen` may come from an old version of the `wasm_bindgen_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[wasm_bindgen_test]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen_test` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen_test` may come from an old version of the `wasm_bindgen_test_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_test_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen_test` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_RESERVE` is never used
[INFO] [stdout]   --> src/ref_finance/mod.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const MIN_RESERVE: u128 = 1_000_000_000_000_000;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `amounts_to_c_amounts` is never used
[INFO] [stdout]   --> src/ref_finance/mod.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl StableSwapPool {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn amounts_to_c_amounts(&self, amounts: &Vec<u128>) -> Vec<u128> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `exchange_id` and `referral_info` are never read
[INFO] [stdout]   --> src/ref_finance/admin_fee.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct AdminFees {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub exchange_id: AccountId,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub referral_info: Option<(AccountId, u32)>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `zero` and `calc_referral_share` are never used
[INFO] [stdout]   --> src/ref_finance/admin_fee.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl AdminFees {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn zero() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn calc_referral_share(&self, admin_share: u128) -> (u128, AccountId) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR10_ACC_NOT_REGISTERED` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const ERR10_ACC_NOT_REGISTERED: &str = "E10: account not registered";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR11_INSUFFICIENT_STORAGE` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const ERR11_INSUFFICIENT_STORAGE: &str = "E11: insufficient $NEAR storage deposit";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR12_TOKEN_NOT_WHITELISTED` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const ERR12_TOKEN_NOT_WHITELISTED: &str = "E12: token not whitelisted";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR13_LP_NOT_REGISTERED` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const ERR13_LP_NOT_REGISTERED: &str = "E13: LP not registered";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR14_LP_ALREADY_REGISTERED` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const ERR14_LP_ALREADY_REGISTERED: &str = "E14: LP already registered";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR15_NO_STORAGE_CAN_WITHDRAW` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const ERR15_NO_STORAGE_CAN_WITHDRAW: &str = "E15: no storage can withdraw";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR16_STORAGE_WITHDRAW_TOO_MUCH` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const ERR16_STORAGE_WITHDRAW_TOO_MUCH: &str = "E16: storage withdraw too much";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR17_DEPOSIT_LESS_THAN_MIN_STORAGE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const ERR17_DEPOSIT_LESS_THAN_MIN_STORAGE: &str = "E17: deposit less than min storage";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR18_TOKENS_NOT_EMPTY` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const ERR18_TOKENS_NOT_EMPTY: &str = "E18: storage unregister tokens not empty";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR21_TOKEN_NOT_REG` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const ERR21_TOKEN_NOT_REG: &str = "E21: token not registered";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR22_NOT_ENOUGH_TOKENS` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const ERR22_NOT_ENOUGH_TOKENS: &str = "E22: not enough tokens in deposit";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR24_NON_ZERO_TOKEN_BALANCE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const ERR24_NON_ZERO_TOKEN_BALANCE: &str = "E24: non-zero token balance";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR25_CALLBACK_POST_WITHDRAW_INVALID` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub const ERR25_CALLBACK_POST_WITHDRAW_INVALID: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR27_DEPOSIT_NEEDED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const ERR27_DEPOSIT_NEEDED: &str = 
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR28_WRONG_MSG_FORMAT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const ERR28_WRONG_MSG_FORMAT: &str = "E28: Illegal msg in ft_transfer_call";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR29_ILLEGAL_WITHDRAW_AMOUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const ERR29_ILLEGAL_WITHDRAW_AMOUNT: &str = "E29: Illegal withdraw amount";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR31_ZERO_AMOUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub const ERR31_ZERO_AMOUNT: &str = "E31: adding zero amount";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR32_ZERO_SHARES` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:31:11
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub const ERR32_ZERO_SHARES: &str = "E32: minting zero shares";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR33_TRANSFER_TO_SELF` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const ERR33_TRANSFER_TO_SELF: &str = "E33: transfer to self";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR34_INSUFFICIENT_LP_SHARES` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:34:11
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub const ERR34_INSUFFICIENT_LP_SHARES: &str = "E34: insufficient lp shares";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR35_AT_LEAST_ONE_YOCTO` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub const ERR35_AT_LEAST_ONE_YOCTO: &str = "E35: requires attached deposit of at least 1 yoctoNEAR";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR36_SHARES_TOTAL_SUPPLY_OVERFLOW` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub const ERR36_SHARES_TOTAL_SUPPLY_OVERFLOW: &str = "E36: shares_total_supply overflow";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR41_WRONG_ACTION_RESULT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub const ERR41_WRONG_ACTION_RESULT: &str = "E41: wrong action result type";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR51_CONTRACT_PAUSED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:43:11
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub const ERR51_CONTRACT_PAUSED: &str = "E51: contract paused";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR52_FROZEN_TOKEN` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub const ERR52_FROZEN_TOKEN: &str = "E52: token frozen";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR53_TOKEN_NOT_IN_LIST` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:45:11
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub const ERR53_TOKEN_NOT_IN_LIST: &str = "E53: token not in list";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR64_TOKENS_COUNT_ILLEGAL` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:52:11
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub const ERR64_TOKENS_COUNT_ILLEGAL: &str = "E64: illegal tokens count";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR65_INIT_TOKEN_BALANCE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:53:11
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub const ERR65_INIT_TOKEN_BALANCE: &str = "E65: init token balance should be non-zero";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR66_INVARIANT_CALC_ERR` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:54:11
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub const ERR66_INVARIANT_CALC_ERR: &str = "E66: encounter err when calc invariant D";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR67_LPSHARE_CALC_ERR` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:55:11
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub const ERR67_LPSHARE_CALC_ERR: &str = "E67: encounter err when calc lp shares";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR68_SLIPPAGE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:56:11
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub const ERR68_SLIPPAGE: &str = "E68: slippage error";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR69_MIN_RESERVE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:57:11
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub const ERR69_MIN_RESERVE: &str = "E69: pool reserved token balance less than MIN_RESERVE";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR72_AT_LEAST_ONE_SWAP` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:60:11
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub const ERR72_AT_LEAST_ONE_SWAP: &str = "E72: at least one swap";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR73_SAME_TOKEN` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:61:11
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub const ERR73_SAME_TOKEN: &str = "E73: same token swap";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR75_INVARIANT_REDUCE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:62:11
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub const ERR75_INVARIANT_REDUCE: &str = "E75: invariant can not reduce ";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR76_INVALID_PARAMS` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:63:11
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub const ERR76_INVALID_PARAMS: &str = "E76: invalid params";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR77_INVALID_ACTION_TYPE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub const ERR77_INVALID_ACTION_TYPE: &str = "E77: all action types must be the same";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR81_AMP_IN_LOCK` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub const ERR81_AMP_IN_LOCK: &str = "E81: amp is currently in lock";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR82_INSUFFICIENT_RAMP_TIME` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:68:11
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub const ERR82_INSUFFICIENT_RAMP_TIME: &str = "E82: insufficient ramp time";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR83_INVALID_AMP_FACTOR` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:69:11
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub const ERR83_INVALID_AMP_FACTOR: &str = "E83: invalid amp factor";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR84_AMP_LARGE_CHANGE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:70:11
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub const ERR84_AMP_LARGE_CHANGE: &str = "E84: amp factor change is too large";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR85_NO_POOL` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:71:11
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub const ERR85_NO_POOL: &str = "E85: invalid pool id";
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR86_MIN_AMOUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub const ERR86_MIN_AMOUNT: &str = "E86: amount need above min amount";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR87_ILLEGAL_POOL_ID` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:73:11
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub const ERR87_ILLEGAL_POOL_ID: &str = "E87: illegal pool id";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR88_NOT_STABLE_POOL` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:74:11
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub const ERR88_NOT_STABLE_POOL: &str = "E88: not stable pool";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR89_WRONG_TOKEN_COUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:75:11
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub const ERR89_WRONG_TOKEN_COUNT: &str = "E89: wrong token count";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR90_FEE_TOO_LARGE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:76:11
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub const ERR90_FEE_TOO_LARGE: &str = "E90: fee too large";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR91_NOT_ENOUGH_SHARES` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:77:11
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub const ERR91_NOT_ENOUGH_SHARES: &str = "E91: not enough shares";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR92_TOKEN_DUPLICATES` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub const ERR92_TOKEN_DUPLICATES: &str = "E92: token duplicated";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR89_WRONG_AMOUNT_COUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:79:11
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub const ERR89_WRONG_AMOUNT_COUNT: &str = "E89: wrong amount count";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR100_NOT_ALLOWED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:83:11
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub const ERR100_NOT_ALLOWED: &str = "E100: no permission to invoke this";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR101_ILLEGAL_FEE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:84:11
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub const ERR101_ILLEGAL_FEE: &str = "E101: illegal fee";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR102_INVALID_TOKEN_ID` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:85:11
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub const ERR102_INVALID_TOKEN_ID: &str = "E102: invalid token id";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR103_NOT_INITIALIZED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:86:11
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub const ERR103_NOT_INITIALIZED: &str = "E103: contract is not initialized";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR104_GUARDIAN_NOT_IN_LIST` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:87:11
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub const ERR104_GUARDIAN_NOT_IN_LIST: &str = "E104: guardian not in list";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR105_WHITELISTED_POSTFIX_NOT_IN_LIST` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:88:11
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub const ERR105_WHITELISTED_POSTFIX_NOT_IN_LIST: &str = "E105: whitelisted postfix not in list";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR110_INVALID_REGISTER` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:92:11
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub const ERR110_INVALID_REGISTER: &str = "E110: Invalid register";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR120_RATES_EXPIRED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:95:11
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub const ERR120_RATES_EXPIRED: &str = "E120: Rates expired";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR123_TWO_PROMISE_RESULT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:97:11
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub const ERR123_TWO_PROMISE_RESULT: &str = "E123: Cross-contract call should have exactly two promise result";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR124_CROSS_CALL_FAILED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:98:11
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub const ERR124_CROSS_CALL_FAILED: &str = "E124: Cross-contract call failed";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR126_FAILED_TO_PARSE_RESULT` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:100:11
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub const ERR126_FAILED_TO_PARSE_RESULT: &str = "E126: Failed to parse cross-contract call result";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR127_INVALID_RATE_TYPE` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:101:11
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub const ERR127_INVALID_RATE_TYPE: &str = "E127: Invalid rate type";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR128_INVALID_EXTRA_INFO_MSG_FORMAT` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:102:11
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub const ERR128_INVALID_EXTRA_INFO_MSG_FORMAT: &str = "E128: Invalid extra info message format";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR129_DEGENS_EXPIRED` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:103:11
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub const ERR129_DEGENS_EXPIRED: &str = "E129: Degens expired";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR130_REFERRAL_EXIST` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:106:11
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub const ERR130_REFERRAL_EXIST: &str = "E130: Referral already exist";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR131_REFERRAL_NOT_EXIST` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:107:11
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub const ERR131_REFERRAL_NOT_EXIST: &str = "E131: Referral not exist";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR132_ILLEGAL_REFERRAL_FEE` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:108:11
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub const ERR132_ILLEGAL_REFERRAL_FEE: &str = "E132: Illegal referral fee";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_RAMP_DURATION` is never used
[INFO] [stdout]   --> src/ref_finance/math.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const MIN_RAMP_DURATION: Timestamp = 86400 * 1_000_000_000;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_AMP_CHANGE` is never used
[INFO] [stdout]   --> src/ref_finance/math.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const MAX_AMP_CHANGE: u128 = 10;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `zero` and `normalized_trade_fee` are never used
[INFO] [stdout]   --> src/ref_finance/math.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Fees {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn zero() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn normalized_trade_fee(&self, num_coins: u32, amount: Balance) -> Balance {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `new_source_amount`, `new_destination_amount`, `admin_fee`, and `fee` are never read
[INFO] [stdout]   --> src/ref_finance/math.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct SwapResult {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 58 |     /// New amount of source token.
[INFO] [stdout] 59 |     pub new_source_amount: Balance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 60 |     /// New amount of destination token.
[INFO] [stdout] 61 |     pub new_destination_amount: Balance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub admin_fee: Balance,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 66 |     /// Fee for the swap.
[INFO] [stdout] 67 |     pub fee: Balance,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SwapResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `compute_lp_amount_for_deposit` and `compute_lp_amount_for_withdraw` are never used
[INFO] [stdout]    --> src/ref_finance/math.rs:187:12
[INFO] [stdout]     |
[INFO] [stdout]  84 | impl StableSwap {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub fn compute_lp_amount_for_deposit(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |     pub fn compute_lp_amount_for_withdraw(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SwapVolume` is never constructed
[INFO] [stdout]   --> src/ref_finance/utils.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SwapVolume {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_RESERVE` is never used
[INFO] [stdout]   --> src/ref_finance/mod.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const MIN_RESERVE: u128 = 1_000_000_000_000_000;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `amounts_to_c_amounts` is never used
[INFO] [stdout]   --> src/ref_finance/mod.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl StableSwapPool {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn amounts_to_c_amounts(&self, amounts: &Vec<u128>) -> Vec<u128> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `exchange_id` and `referral_info` are never read
[INFO] [stdout]   --> src/ref_finance/admin_fee.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct AdminFees {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub exchange_id: AccountId,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub referral_info: Option<(AccountId, u32)>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `zero` and `calc_referral_share` are never used
[INFO] [stdout]   --> src/ref_finance/admin_fee.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl AdminFees {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn zero() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn calc_referral_share(&self, admin_share: u128) -> (u128, AccountId) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR10_ACC_NOT_REGISTERED` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const ERR10_ACC_NOT_REGISTERED: &str = "E10: account not registered";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR11_INSUFFICIENT_STORAGE` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const ERR11_INSUFFICIENT_STORAGE: &str = "E11: insufficient $NEAR storage deposit";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR12_TOKEN_NOT_WHITELISTED` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const ERR12_TOKEN_NOT_WHITELISTED: &str = "E12: token not whitelisted";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR13_LP_NOT_REGISTERED` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const ERR13_LP_NOT_REGISTERED: &str = "E13: LP not registered";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR14_LP_ALREADY_REGISTERED` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const ERR14_LP_ALREADY_REGISTERED: &str = "E14: LP already registered";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR15_NO_STORAGE_CAN_WITHDRAW` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const ERR15_NO_STORAGE_CAN_WITHDRAW: &str = "E15: no storage can withdraw";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR16_STORAGE_WITHDRAW_TOO_MUCH` is never used
[INFO] [stdout]  --> src/ref_finance/errors.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const ERR16_STORAGE_WITHDRAW_TOO_MUCH: &str = "E16: storage withdraw too much";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR17_DEPOSIT_LESS_THAN_MIN_STORAGE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const ERR17_DEPOSIT_LESS_THAN_MIN_STORAGE: &str = "E17: deposit less than min storage";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR18_TOKENS_NOT_EMPTY` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const ERR18_TOKENS_NOT_EMPTY: &str = "E18: storage unregister tokens not empty";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR21_TOKEN_NOT_REG` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const ERR21_TOKEN_NOT_REG: &str = "E21: token not registered";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR22_NOT_ENOUGH_TOKENS` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const ERR22_NOT_ENOUGH_TOKENS: &str = "E22: not enough tokens in deposit";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR24_NON_ZERO_TOKEN_BALANCE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const ERR24_NON_ZERO_TOKEN_BALANCE: &str = "E24: non-zero token balance";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR25_CALLBACK_POST_WITHDRAW_INVALID` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub const ERR25_CALLBACK_POST_WITHDRAW_INVALID: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR27_DEPOSIT_NEEDED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const ERR27_DEPOSIT_NEEDED: &str = 
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR28_WRONG_MSG_FORMAT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const ERR28_WRONG_MSG_FORMAT: &str = "E28: Illegal msg in ft_transfer_call";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR29_ILLEGAL_WITHDRAW_AMOUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const ERR29_ILLEGAL_WITHDRAW_AMOUNT: &str = "E29: Illegal withdraw amount";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR31_ZERO_AMOUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub const ERR31_ZERO_AMOUNT: &str = "E31: adding zero amount";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR32_ZERO_SHARES` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:31:11
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub const ERR32_ZERO_SHARES: &str = "E32: minting zero shares";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR33_TRANSFER_TO_SELF` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const ERR33_TRANSFER_TO_SELF: &str = "E33: transfer to self";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR34_INSUFFICIENT_LP_SHARES` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:34:11
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub const ERR34_INSUFFICIENT_LP_SHARES: &str = "E34: insufficient lp shares";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR35_AT_LEAST_ONE_YOCTO` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub const ERR35_AT_LEAST_ONE_YOCTO: &str = "E35: requires attached deposit of at least 1 yoctoNEAR";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR36_SHARES_TOTAL_SUPPLY_OVERFLOW` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub const ERR36_SHARES_TOTAL_SUPPLY_OVERFLOW: &str = "E36: shares_total_supply overflow";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR41_WRONG_ACTION_RESULT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub const ERR41_WRONG_ACTION_RESULT: &str = "E41: wrong action result type";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR51_CONTRACT_PAUSED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:43:11
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub const ERR51_CONTRACT_PAUSED: &str = "E51: contract paused";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR52_FROZEN_TOKEN` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub const ERR52_FROZEN_TOKEN: &str = "E52: token frozen";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR53_TOKEN_NOT_IN_LIST` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:45:11
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub const ERR53_TOKEN_NOT_IN_LIST: &str = "E53: token not in list";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR64_TOKENS_COUNT_ILLEGAL` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:52:11
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub const ERR64_TOKENS_COUNT_ILLEGAL: &str = "E64: illegal tokens count";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR65_INIT_TOKEN_BALANCE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:53:11
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub const ERR65_INIT_TOKEN_BALANCE: &str = "E65: init token balance should be non-zero";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR66_INVARIANT_CALC_ERR` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:54:11
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub const ERR66_INVARIANT_CALC_ERR: &str = "E66: encounter err when calc invariant D";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR67_LPSHARE_CALC_ERR` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:55:11
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub const ERR67_LPSHARE_CALC_ERR: &str = "E67: encounter err when calc lp shares";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR68_SLIPPAGE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:56:11
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub const ERR68_SLIPPAGE: &str = "E68: slippage error";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR69_MIN_RESERVE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:57:11
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub const ERR69_MIN_RESERVE: &str = "E69: pool reserved token balance less than MIN_RESERVE";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR72_AT_LEAST_ONE_SWAP` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:60:11
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub const ERR72_AT_LEAST_ONE_SWAP: &str = "E72: at least one swap";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR73_SAME_TOKEN` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:61:11
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub const ERR73_SAME_TOKEN: &str = "E73: same token swap";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR75_INVARIANT_REDUCE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:62:11
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub const ERR75_INVARIANT_REDUCE: &str = "E75: invariant can not reduce ";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR76_INVALID_PARAMS` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:63:11
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub const ERR76_INVALID_PARAMS: &str = "E76: invalid params";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR77_INVALID_ACTION_TYPE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub const ERR77_INVALID_ACTION_TYPE: &str = "E77: all action types must be the same";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR81_AMP_IN_LOCK` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub const ERR81_AMP_IN_LOCK: &str = "E81: amp is currently in lock";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR82_INSUFFICIENT_RAMP_TIME` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:68:11
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub const ERR82_INSUFFICIENT_RAMP_TIME: &str = "E82: insufficient ramp time";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR83_INVALID_AMP_FACTOR` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:69:11
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub const ERR83_INVALID_AMP_FACTOR: &str = "E83: invalid amp factor";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR84_AMP_LARGE_CHANGE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:70:11
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub const ERR84_AMP_LARGE_CHANGE: &str = "E84: amp factor change is too large";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR85_NO_POOL` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:71:11
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub const ERR85_NO_POOL: &str = "E85: invalid pool id";
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR86_MIN_AMOUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub const ERR86_MIN_AMOUNT: &str = "E86: amount need above min amount";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR87_ILLEGAL_POOL_ID` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:73:11
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub const ERR87_ILLEGAL_POOL_ID: &str = "E87: illegal pool id";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR88_NOT_STABLE_POOL` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:74:11
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub const ERR88_NOT_STABLE_POOL: &str = "E88: not stable pool";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR89_WRONG_TOKEN_COUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:75:11
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub const ERR89_WRONG_TOKEN_COUNT: &str = "E89: wrong token count";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR90_FEE_TOO_LARGE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:76:11
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub const ERR90_FEE_TOO_LARGE: &str = "E90: fee too large";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR91_NOT_ENOUGH_SHARES` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:77:11
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub const ERR91_NOT_ENOUGH_SHARES: &str = "E91: not enough shares";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR92_TOKEN_DUPLICATES` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub const ERR92_TOKEN_DUPLICATES: &str = "E92: token duplicated";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR89_WRONG_AMOUNT_COUNT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:79:11
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub const ERR89_WRONG_AMOUNT_COUNT: &str = "E89: wrong amount count";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR100_NOT_ALLOWED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:83:11
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub const ERR100_NOT_ALLOWED: &str = "E100: no permission to invoke this";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR101_ILLEGAL_FEE` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:84:11
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub const ERR101_ILLEGAL_FEE: &str = "E101: illegal fee";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR102_INVALID_TOKEN_ID` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:85:11
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub const ERR102_INVALID_TOKEN_ID: &str = "E102: invalid token id";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR103_NOT_INITIALIZED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:86:11
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub const ERR103_NOT_INITIALIZED: &str = "E103: contract is not initialized";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR104_GUARDIAN_NOT_IN_LIST` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:87:11
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub const ERR104_GUARDIAN_NOT_IN_LIST: &str = "E104: guardian not in list";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR105_WHITELISTED_POSTFIX_NOT_IN_LIST` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:88:11
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub const ERR105_WHITELISTED_POSTFIX_NOT_IN_LIST: &str = "E105: whitelisted postfix not in list";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR110_INVALID_REGISTER` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:92:11
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub const ERR110_INVALID_REGISTER: &str = "E110: Invalid register";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR120_RATES_EXPIRED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:95:11
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub const ERR120_RATES_EXPIRED: &str = "E120: Rates expired";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR123_TWO_PROMISE_RESULT` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:97:11
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub const ERR123_TWO_PROMISE_RESULT: &str = "E123: Cross-contract call should have exactly two promise result";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR124_CROSS_CALL_FAILED` is never used
[INFO] [stdout]   --> src/ref_finance/errors.rs:98:11
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub const ERR124_CROSS_CALL_FAILED: &str = "E124: Cross-contract call failed";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR126_FAILED_TO_PARSE_RESULT` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:100:11
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub const ERR126_FAILED_TO_PARSE_RESULT: &str = "E126: Failed to parse cross-contract call result";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR127_INVALID_RATE_TYPE` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:101:11
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub const ERR127_INVALID_RATE_TYPE: &str = "E127: Invalid rate type";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR128_INVALID_EXTRA_INFO_MSG_FORMAT` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:102:11
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub const ERR128_INVALID_EXTRA_INFO_MSG_FORMAT: &str = "E128: Invalid extra info message format";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR129_DEGENS_EXPIRED` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:103:11
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub const ERR129_DEGENS_EXPIRED: &str = "E129: Degens expired";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR130_REFERRAL_EXIST` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:106:11
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub const ERR130_REFERRAL_EXIST: &str = "E130: Referral already exist";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR131_REFERRAL_NOT_EXIST` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:107:11
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub const ERR131_REFERRAL_NOT_EXIST: &str = "E131: Referral not exist";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ERR132_ILLEGAL_REFERRAL_FEE` is never used
[INFO] [stdout]    --> src/ref_finance/errors.rs:108:11
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub const ERR132_ILLEGAL_REFERRAL_FEE: &str = "E132: Illegal referral fee";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_RAMP_DURATION` is never used
[INFO] [stdout]   --> src/ref_finance/math.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const MIN_RAMP_DURATION: Timestamp = 86400 * 1_000_000_000;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_AMP_CHANGE` is never used
[INFO] [stdout]   --> src/ref_finance/math.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const MAX_AMP_CHANGE: u128 = 10;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `zero` and `normalized_trade_fee` are never used
[INFO] [stdout]   --> src/ref_finance/math.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Fees {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn zero() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn normalized_trade_fee(&self, num_coins: u32, amount: Balance) -> Balance {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `new_source_amount`, `new_destination_amount`, `admin_fee`, and `fee` are never read
[INFO] [stdout]   --> src/ref_finance/math.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct SwapResult {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 58 |     /// New amount of source token.
[INFO] [stdout] 59 |     pub new_source_amount: Balance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 60 |     /// New amount of destination token.
[INFO] [stdout] 61 |     pub new_destination_amount: Balance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub admin_fee: Balance,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 66 |     /// Fee for the swap.
[INFO] [stdout] 67 |     pub fee: Balance,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SwapResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `compute_lp_amount_for_deposit` and `compute_lp_amount_for_withdraw` are never used
[INFO] [stdout]    --> src/ref_finance/math.rs:187:12
[INFO] [stdout]     |
[INFO] [stdout]  84 | impl StableSwap {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub fn compute_lp_amount_for_deposit(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |     pub fn compute_lp_amount_for_withdraw(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SwapVolume` is never constructed
[INFO] [stdout]   --> src/ref_finance/utils.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct SwapVolume {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.36s
[INFO] running `Command { std: "docker" "inspect" "a19909fa295db3ecb1093ded409ad9a9ffbe42e2cb54c6aa6d49dd2e83d12ee9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a19909fa295db3ecb1093ded409ad9a9ffbe42e2cb54c6aa6d49dd2e83d12ee9", kill_on_drop: false }`
[INFO] [stdout] a19909fa295db3ecb1093ded409ad9a9ffbe42e2cb54c6aa6d49dd2e83d12ee9
