[INFO] cloning repository https://github.com/ShivankK26/SolPayFlex
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ShivankK26/SolPayFlex" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShivankK26%2FSolPayFlex", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShivankK26%2FSolPayFlex'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 673c12f0bc46518d67165b48009c240d703394df
[INFO] checking ShivankK26/SolPayFlex/673c12f0bc46518d67165b48009c240d703394df against master#32cd9114712a24010b0583624dc52ac302194128 for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShivankK26%2FSolPayFlex" "/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/ShivankK26/SolPayFlex
[INFO] finished tweaking git repo https://github.com/ShivankK26/SolPayFlex
[INFO] tweaked toml for git repo https://github.com/ShivankK26/SolPayFlex written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ShivankK26/SolPayFlex on toolchain 32cd9114712a24010b0583624dc52ac302194128
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ShivankK26/SolPayFlex 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" "+32cd9114712a24010b0583624dc52ac302194128" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a69df51f9110cb239f0e2346fface9d747ec849d52d11acbe48a48e064b0947f
[INFO] running `Command { std: "docker" "start" "-a" "a69df51f9110cb239f0e2346fface9d747ec849d52d11acbe48a48e064b0947f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a69df51f9110cb239f0e2346fface9d747ec849d52d11acbe48a48e064b0947f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a69df51f9110cb239f0e2346fface9d747ec849d52d11acbe48a48e064b0947f", kill_on_drop: false }`
[INFO] [stdout] a69df51f9110cb239f0e2346fface9d747ec849d52d11acbe48a48e064b0947f
[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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bc1de0d2311dfe34da5e95983bbb564e0eb1a1b1cc92f1bd6bb5b0c6da426661
[INFO] running `Command { std: "docker" "start" "-a" "bc1de0d2311dfe34da5e95983bbb564e0eb1a1b1cc92f1bd6bb5b0c6da426661", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling proc-macro2 v1.0.80
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking subtle v2.4.1
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling thiserror v1.0.58
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling anyhow v1.0.82
[INFO] [stderr]    Compiling semver v1.0.22
[INFO] [stderr]    Compiling serde_json v1.0.116
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]     Checking cpufeatures v0.2.12
[INFO] [stderr]     Checking either v1.11.0
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]     Checking zerocopy v0.7.32
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]     Checking block-padding v0.2.1
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.92
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling winnow v0.5.40
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling indexmap v2.2.6
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling feature-probe v0.1.1
[INFO] [stderr]    Compiling bumpalo v3.16.0
[INFO] [stderr]    Compiling solana-frozen-abi-macro v1.18.11
[INFO] [stderr]    Compiling bv v0.11.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling im v15.1.0
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling syn v2.0.59
[INFO] [stderr]    Compiling rustversion v1.0.15
[INFO] [stderr]     Checking keccak v0.1.5
[INFO] [stderr]     Checking bitmaps v2.1.0
[INFO] [stderr]    Compiling borsh v1.4.0
[INFO] [stderr]    Compiling jobserver v0.1.30
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]    Compiling solana-frozen-abi v1.18.11
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling cc v1.0.94
[INFO] [stderr]     Checking sized-chunks v0.6.5
[INFO] [stderr]     Checking arrayref v0.3.7
[INFO] [stderr]    Compiling wasm-bindgen v0.2.92
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking constant_time_eq v0.3.0
[INFO] [stderr]     Checking ryu v1.0.17
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]    Compiling bs58 v0.4.0
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]     Checking regex-syntax v0.8.3
[INFO] [stderr]     Checking signature v1.6.4
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]     Checking ed25519 v1.5.3
[INFO] [stderr]    Compiling solana-sdk v1.18.11
[INFO] [stderr]     Checking derivation-path v0.2.0
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]     Checking uriparse v0.6.4
[INFO] [stderr]     Checking assert_matches v1.5.0
[INFO] [stderr]     Checking siphasher v0.3.11
[INFO] [stderr]    Compiling toml_edit v0.21.1
[INFO] [stderr]     Checking qstring v0.7.2
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]     Checking memmap2 v0.5.10
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]    Compiling bs58 v0.5.1
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking solana-security-txt v1.1.1
[INFO] [stderr]     Checking base64 v0.13.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]    Compiling blake3 v1.5.1
[INFO] [stderr]    Compiling solana-program v1.18.11
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking ark-std v0.4.0
[INFO] [stderr]    Compiling proc-macro-crate v3.1.0
[INFO] [stderr]    Compiling borsh-derive-internal v0.10.3
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.10.3
[INFO] [stderr]    Compiling ark-serialize-derive v0.4.2
[INFO] [stderr]    Compiling ark-ff-asm v0.4.2
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling ark-ff-macros v0.4.2
[INFO] [stderr]    Compiling anchor-derive-space v0.29.0
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]     Checking env_logger v0.9.3
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.92
[INFO] [stderr]    Compiling darling_core v0.20.8
[INFO] [stderr]     Checking solana-logger v1.18.11
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling thiserror-impl v1.0.58
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling syn_derive v0.1.8
[INFO] [stderr]    Compiling bytemuck_derive v1.6.0
[INFO] [stderr]    Compiling solana-sdk-macro v1.18.11
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling num_enum_derive v0.7.2
[INFO] [stderr]    Compiling qualifier_attr v0.2.2
[INFO] [stderr]    Compiling borsh-derive v1.4.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.92
[INFO] [stderr]     Checking zeroize v1.3.0
[INFO] [stderr]     Checking bytemuck v1.15.0
[INFO] [stderr]     Checking merlin v3.0.0
[INFO] [stderr]     Checking num_enum v0.7.2
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.92
[INFO] [stderr]    Compiling darling_macro v0.20.8
[INFO] [stderr]    Compiling darling v0.20.8
[INFO] [stderr]    Compiling serde_with_macros v2.3.3
[INFO] [stderr]     Checking serde_bytes v0.11.14
[INFO] [stderr]     Checking bitflags v2.5.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking serde_with v2.3.3
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]     Checking crypto-mac v0.8.0
[INFO] [stderr]     Checking cipher v0.3.0
[INFO] [stderr]     Checking universal-hash v0.4.1
[INFO] [stderr]     Checking aead v0.4.3
[INFO] [stderr]     Checking pbkdf2 v0.4.0
[INFO] [stderr]     Checking polyval v0.5.3
[INFO] [stderr]     Checking ctr v0.8.0
[INFO] [stderr]     Checking aes v0.7.5
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking hmac v0.8.1
[INFO] [stderr]     Checking curve25519-dalek v3.2.1
[INFO] [stderr]     Checking sha3 v0.9.1
[INFO] [stderr]    Compiling spl-discriminator-syn v0.1.2
[INFO] [stderr]     Checking hmac-drbg v0.3.0
[INFO] [stderr]    Compiling spl-program-error-derive v0.3.2
[INFO] [stderr]     Checking ark-serialize v0.4.2
[INFO] [stderr]     Checking sha3 v0.10.8
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]    Compiling spl-discriminator-derive v0.1.2
[INFO] [stderr]     Checking tiny-bip39 v0.8.2
[INFO] [stderr]     Checking aes-gcm-siv v0.10.3
[INFO] [stderr]    Compiling anchor-syn v0.29.0
[INFO] [stderr]     Checking ark-ff v0.4.2
[INFO] [stderr]     Checking ed25519-dalek v1.0.1
[INFO] [stderr]    Compiling borsh-derive v0.10.3
[INFO] [stderr]    Compiling borsh-derive v0.9.3
[INFO] [stderr]     Checking ed25519-dalek-bip32 v0.2.0
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]     Checking borsh v0.10.3
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]     Checking borsh v0.9.3
[INFO] [stderr]    Compiling anchor-attribute-error v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-access-control v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-program v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-event v0.29.0
[INFO] [stderr]    Compiling anchor-derive-serde v0.29.0
[INFO] [stderr]    Compiling anchor-derive-accounts v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-account v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-constant v0.29.0
[INFO] [stderr]     Checking ark-poly v0.4.2
[INFO] [stderr]     Checking ark-ec v0.4.2
[INFO] [stderr]     Checking ark-bn254 v0.4.0
[INFO] [stderr]     Checking light-poseidon v0.2.0
[INFO] [stderr]     Checking spl-program-error v0.3.1
[INFO] [stderr]     Checking spl-discriminator v0.1.1
[INFO] [stderr]     Checking spl-memo v4.0.1
[INFO] [stderr]     Checking spl-token v4.0.1
[INFO] [stderr]     Checking anchor-lang v0.29.0
[INFO] [stderr]     Checking solana-zk-token-sdk v1.18.11
[INFO] [stderr]     Checking spl-pod v0.1.1
[INFO] [stderr]     Checking spl-type-length-value v0.3.1
[INFO] [stderr]     Checking spl-token-group-interface v0.1.1
[INFO] [stderr]     Checking spl-tlv-account-resolution v0.5.2
[INFO] [stderr]     Checking spl-token-metadata-interface v0.2.1
[INFO] [stderr]     Checking spl-tlv-account-resolution v0.4.0
[INFO] [stderr]     Checking spl-transfer-hook-interface v0.5.1
[INFO] [stderr]     Checking spl-transfer-hook-interface v0.3.0
[INFO] [stderr]     Checking spl-token-2022 v0.9.0
[INFO] [stderr]     Checking spl-token-2022 v2.0.2
[INFO] [stderr]     Checking spl-associated-token-account v2.3.1
[INFO] [stderr]     Checking anchor-spl v0.29.0
[INFO] [stderr]     Checking nft-lendswap v0.1.0 (/opt/rustwide/workdir/programs/nft-lendswap)
[INFO] [stdout] error: expected `::`, found `)`
[INFO] [stdout]   --> programs/nft-lendswap/src/lib.rs:46:38
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn liquidate(ctx: <Liquidate>) -> Result<()> {
[INFO] [stdout]    |                                      ^ expected `::`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected `::`, found `)`
[INFO] [stdout]   --> programs/nft-lendswap/src/lib.rs:46:38
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn liquidate(ctx: <Liquidate>) -> Result<()> {
[INFO] [stdout]    |                                      ^ expected `::`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the payer specified for an init constraint must be mutable.
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected `::`
[INFO] [stdout]   --> programs/nft-lendswap/src/lib.rs:46:38
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn liquidate(ctx: <Liquidate>) -> Result<()> {
[INFO] [stdout]    |                                      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected non-macro attribute, found attribute macro `account`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/create_pool.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 |     #[account(
[INFO] [stdout]   |       ^^^^^^^ not a non-macro attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected non-macro attribute, found attribute macro `account`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/create_pool.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 |     #[account(mut)]
[INFO] [stdout]    |       ^^^^^^^ not a non-macro attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `anchor_spl::Mint`, `anchor_spl::Token`, `anchor_spl::TokenAccount`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use anchor_spl::{self, Mint, Token, TokenAccount};
[INFO] [stdout]   |                        ^^^^  ^^^^^  ^^^^^^^^^^^^ no `TokenAccount` in the root
[INFO] [stdout]   |                        |     |
[INFO] [stdout]   |                        |     no `Token` in the root
[INFO] [stdout]   |                        no `Mint` in the root
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these structs instead:
[INFO] [stdout]           crate::liquidate::anchor_spl::token_interface::Mint
[INFO] [stdout]           anchor_spl::token::Mint
[INFO] [stdout]           anchor_spl::token_interface::Mint
[INFO] [stdout]   = note: struct `crate::__cpi_client_accounts_borrow::Mint` exists but is inaccessible
[INFO] [stdout]   = help: consider importing this struct instead:
[INFO] [stdout]           anchor_spl::token::Token
[INFO] [stdout]   = note: struct `crate::__cpi_client_accounts_borrow::Token` exists but is inaccessible
[INFO] [stdout]   = help: consider importing one of these structs instead:
[INFO] [stdout]           crate::liquidate::anchor_spl::token_interface::TokenAccount
[INFO] [stdout]           anchor_spl::token::TokenAccount
[INFO] [stdout]           anchor_spl::token_interface::TokenAccount
[INFO] [stdout]   = note: struct `crate::__cpi_client_accounts_borrow::TokenAccount` exists but is inaccessible
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]   |
[INFO] [stdout] 2 - use anchor_spl::{self, Mint, Token, TokenAccount};
[INFO] [stdout] 2 + use anchor_spl::{self, mint, Token, TokenAccount};
[INFO] [stdout]   |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]   |
[INFO] [stdout] 2 - use anchor_spl::{self, Mint, Token, TokenAccount};
[INFO] [stdout] 2 + use anchor_spl::{self, Mint, token, TokenAccount};
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `anchor_lang::token`, `anchor_lang::token`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use anchor_lang::token::{ self, Mint, Token, TokenAccount, Transfer };
[INFO] [stdout]   |                  ^^^^^    ^^^^ no `token` in the root
[INFO] [stdout]   |                  |
[INFO] [stdout]   |                  could not find `token` in `anchor_lang`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this module instead:
[INFO] [stdout]           anchor_spl::token
[INFO] [stdout]   = note: module `crate::__cpi_client_accounts_borrow::token` exists but is inaccessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `accounts` in this scope
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/create_pool.rs:5:10
[INFO] [stdout]     |
[INFO] [stdout] 5   | #[derive(accounts)]
[INFO] [stdout]     |          ^^^^^^^^ help: a derive macro with a similar name exists: `Accounts`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-derive-accounts-0.29.0/src/lib.rs:633:1
[INFO] [stdout]     |
[INFO] [stdout] 633 | pub fn derive_anchor_deserialize(item: TokenStream) -> TokenStream {
[INFO] [stdout]     | ------------------------------------------------------------------ similarly named derive macro `Accounts` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `instruction` in this scope
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/create_pool.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[instruction(collection_id: Pubkey)]
[INFO] [stdout]   |   ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: `instruction` is an attribute that can be used by the derive macro `Accounts`, you might be missing a `derive` attribute
[INFO] [stdout]   |
[INFO] [stdout] 8 + #[derive(Accounts)]
[INFO] [stdout] 9 | pub struct CreatePool<'info> {
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `Transfer` in this scope
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:68:24
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let cpi_accounts = Transfer {
[INFO] [stdout]    |                        ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: struct `crate::__cpi_client_accounts_borrow::Transfer` exists but is inaccessible
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout] 1  + use crate::liquidate::anchor_spl::token_interface::Transfer;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use anchor_lang::system_program::Transfer;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use anchor_spl::token::Transfer;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use anchor_spl::token_interface::Transfer;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `token`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     token::transfer(cpi_ctx, 1)?;
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `token`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `token`, use `cargo add token` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing one of these modules
[INFO] [stdout]    |
[INFO] [stdout] 1  + use crate::liquidate::anchor_spl::token;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use anchor_spl::token;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `borrower_asset_account` in this scope
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:29:22
[INFO] [stdout]    |
[INFO] [stdout] 29 |         constraint = borrower_asset_account.mint == asset_mint.key(),
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anchor_lang::prelude::*`
[INFO] [stdout]  --> programs/nft-lendswap/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anchor_lang::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `cpi`, `default`, `no-entrypoint`, `no-idl`, and `no-log-ix-name`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Accounts` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `Accounts` may come from an old version of the `anchor_derive_accounts` crate, try updating your dependency with `cargo update -p anchor_derive_accounts`
[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 derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `cpi`, `default`, `no-entrypoint`, `no-idl`, and `no-log-ix-name`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Accounts` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `Accounts` may come from an old version of the `anchor_derive_accounts` crate, try updating your dependency with `cargo update -p anchor_derive_accounts`
[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 derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:89:8
[INFO] [stdout]    |
[INFO] [stdout] 89 |     if (!active_loan.repay_ts < clock.unix_timestamp) {
[INFO] [stdout]    |        ^                                            ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 89 -     if (!active_loan.repay_ts < clock.unix_timestamp) {
[INFO] [stdout] 89 +     if !active_loan.repay_ts < clock.unix_timestamp {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `cpi`, `default`, `no-entrypoint`, `no-idl`, and `no-log-ix-name`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Accounts` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `Accounts` may come from an old version of the `anchor_derive_accounts` crate, try updating your dependency with `cargo update -p anchor_derive_accounts`
[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 derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `cpi`, `default`, `no-entrypoint`, `no-idl`, and `no-log-ix-name`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Accounts` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `Accounts` may come from an old version of the `anchor_derive_accounts` crate, try updating your dependency with `cargo update -p anchor_derive_accounts`
[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 derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/mod.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub use borrow::*;
[INFO] [stdout]    |         ^^^^^^^^^ the name `handler` in the value namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 13 | pub use withdraw_offer::*;
[INFO] [stdout]    |         ----------------- but the name `handler` in the value namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the payer specified for an init constraint must be mutable.
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:26
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:26
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:26
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:25
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:25
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:25
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:28
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:28
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:28
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected `::`
[INFO] [stdout]   --> programs/nft-lendswap/src/lib.rs:46:38
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn liquidate(ctx: <Liquidate>) -> Result<()> {
[INFO] [stdout]    |                                      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected non-macro attribute, found attribute macro `account`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/create_pool.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 |     #[account(
[INFO] [stdout]   |       ^^^^^^^ not a non-macro attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected non-macro attribute, found attribute macro `account`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/create_pool.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 |     #[account(mut)]
[INFO] [stdout]    |       ^^^^^^^ not a non-macro attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CreatePool<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/create_pool.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn handler(ctx: Context<CreatePool>, collection_id: Pubkey, duration: i64) -> Result<()> {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^ the trait `Bumps` is not implemented for `CreatePool<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] note: required by a bound in `anchor_lang::context::Context`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/context.rs:24:42
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context<'a, 'b, 'c, 'info, T: Bumps> {
[INFO] [stdout]    |                                          ^^^^^ required by this bound in `Context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:26
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:26
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:26
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:20
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:20
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:20
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:86:19
[INFO] [stdout]     |
[INFO] [stdout] 86  |     active_loan: &Account<'info, ActiveLoan>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:86:19
[INFO] [stdout]     |
[INFO] [stdout] 86  |     active_loan: &Account<'info, ActiveLoan>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:86:19
[INFO] [stdout]     |
[INFO] [stdout] 86  |     active_loan: &Account<'info, ActiveLoan>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:21:25
[INFO] [stdout]     |
[INFO] [stdout] 21  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:21:25
[INFO] [stdout]     |
[INFO] [stdout] 21  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:21:25
[INFO] [stdout]     |
[INFO] [stdout] 21  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:35:24
[INFO] [stdout]     |
[INFO] [stdout] 35  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:35:24
[INFO] [stdout]     |
[INFO] [stdout] 35  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:35:24
[INFO] [stdout]     |
[INFO] [stdout] 35  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `OfferLoan<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:58:21
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn handler(ctx: Context<OfferLoan>, offer_amount: u64) -> Result<()> {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^ the trait `Bumps` is not implemented for `OfferLoan<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] note: required by a bound in `anchor_lang::context::Context`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/context.rs:24:42
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context<'a, 'b, 'c, 'info, T: Bumps> {
[INFO] [stdout]    |                                          ^^^^^ required by this bound in `Context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:26
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:26
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:26
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `anchor_spl::Mint`, `anchor_spl::Token`, `anchor_spl::TokenAccount`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use anchor_spl::{self, Mint, Token, TokenAccount};
[INFO] [stdout]   |                        ^^^^  ^^^^^  ^^^^^^^^^^^^ no `TokenAccount` in the root
[INFO] [stdout]   |                        |     |
[INFO] [stdout]   |                        |     no `Token` in the root
[INFO] [stdout]   |                        no `Mint` in the root
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these structs instead:
[INFO] [stdout]           crate::liquidate::anchor_spl::token_interface::Mint
[INFO] [stdout]           anchor_spl::token::Mint
[INFO] [stdout]           anchor_spl::token_interface::Mint
[INFO] [stdout]   = note: struct `crate::__cpi_client_accounts_borrow::Mint` exists but is inaccessible
[INFO] [stdout]   = help: consider importing this struct instead:
[INFO] [stdout]           anchor_spl::token::Token
[INFO] [stdout]   = note: struct `crate::__cpi_client_accounts_borrow::Token` exists but is inaccessible
[INFO] [stdout]   = help: consider importing one of these structs instead:
[INFO] [stdout]           crate::liquidate::anchor_spl::token_interface::TokenAccount
[INFO] [stdout]           anchor_spl::token::TokenAccount
[INFO] [stdout]           anchor_spl::token_interface::TokenAccount
[INFO] [stdout]   = note: struct `crate::__cpi_client_accounts_borrow::TokenAccount` exists but is inaccessible
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]   |
[INFO] [stdout] 2 - use anchor_spl::{self, Mint, Token, TokenAccount};
[INFO] [stdout] 2 + use anchor_spl::{self, mint, Token, TokenAccount};
[INFO] [stdout]   |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]   |
[INFO] [stdout] 2 - use anchor_spl::{self, Mint, Token, TokenAccount};
[INFO] [stdout] 2 + use anchor_spl::{self, Mint, token, TokenAccount};
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `anchor_lang::token`, `anchor_lang::token`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use anchor_lang::token::{ self, Mint, Token, TokenAccount, Transfer };
[INFO] [stdout]   |                  ^^^^^    ^^^^ no `token` in the root
[INFO] [stdout]   |                  |
[INFO] [stdout]   |                  could not find `token` in `anchor_lang`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this module instead:
[INFO] [stdout]           anchor_spl::token
[INFO] [stdout]   = note: module `crate::__cpi_client_accounts_borrow::token` exists but is inaccessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:20
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:20
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `accounts` in this scope
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/create_pool.rs:5:10
[INFO] [stdout]     |
[INFO] [stdout] 5   | #[derive(accounts)]
[INFO] [stdout]     |          ^^^^^^^^ help: a derive macro with a similar name exists: `Accounts`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-derive-accounts-0.29.0/src/lib.rs:633:1
[INFO] [stdout]     |
[INFO] [stdout] 633 | pub fn derive_anchor_deserialize(item: TokenStream) -> TokenStream {
[INFO] [stdout]     | ------------------------------------------------------------------ similarly named derive macro `Accounts` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:20
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:24
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:24
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `instruction` in this scope
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/create_pool.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[instruction(collection_id: Pubkey)]
[INFO] [stdout]   |   ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: `instruction` is an attribute that can be used by the derive macro `Accounts`, you might be missing a `derive` attribute
[INFO] [stdout]   |
[INFO] [stdout] 8 + #[derive(Accounts)]
[INFO] [stdout] 9 | pub struct CreatePool<'info> {
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:24
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:25
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:25
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:25
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:24
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:24
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:24
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `Transfer` in this scope
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:68:24
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let cpi_accounts = Transfer {
[INFO] [stdout]    |                        ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: struct `crate::__cpi_client_accounts_borrow::Transfer` exists but is inaccessible
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout] 1  + use crate::liquidate::anchor_spl::token_interface::Transfer;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use anchor_lang::system_program::Transfer;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use anchor_spl::token::Transfer;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use anchor_spl::token_interface::Transfer;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `token`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     token::transfer(cpi_ctx, 1)?;
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `token`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `token`, use `cargo add token` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing one of these modules
[INFO] [stdout]    |
[INFO] [stdout] 1  + use crate::liquidate::anchor_spl::token;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use anchor_spl::token;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `borrower_asset_account` in this scope
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:29:22
[INFO] [stdout]    |
[INFO] [stdout] 29 |         constraint = borrower_asset_account.mint == asset_mint.key(),
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anchor_lang::prelude::*`
[INFO] [stdout]  --> programs/nft-lendswap/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anchor_lang::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `cpi`, `default`, `no-entrypoint`, `no-idl`, and `no-log-ix-name`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Accounts` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `Accounts` may come from an old version of the `anchor_derive_accounts` crate, try updating your dependency with `cargo update -p anchor_derive_accounts`
[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 derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `cpi`, `default`, `no-entrypoint`, `no-idl`, and `no-log-ix-name`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Accounts` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `Accounts` may come from an old version of the `anchor_derive_accounts` crate, try updating your dependency with `cargo update -p anchor_derive_accounts`
[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 derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:89:8
[INFO] [stdout]    |
[INFO] [stdout] 89 |     if (!active_loan.repay_ts < clock.unix_timestamp) {
[INFO] [stdout]    |        ^                                            ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 89 -     if (!active_loan.repay_ts < clock.unix_timestamp) {
[INFO] [stdout] 89 +     if !active_loan.repay_ts < clock.unix_timestamp {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `cpi`, `default`, `no-entrypoint`, `no-idl`, and `no-log-ix-name`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Accounts` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `Accounts` may come from an old version of the `anchor_derive_accounts` crate, try updating your dependency with `cargo update -p anchor_derive_accounts`
[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 derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, offer::Offer>` to implement `anchor_lang::Accounts<'_, BorrowBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, offer::Offer>>` to implement `anchor_lang::Accounts<'_, BorrowBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `cpi`, `default`, `no-entrypoint`, `no-idl`, and `no-log-ix-name`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Accounts` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `Accounts` may come from an old version of the `anchor_derive_accounts` crate, try updating your dependency with `cargo update -p anchor_derive_accounts`
[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 derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/mod.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub use borrow::*;
[INFO] [stdout]    |         ^^^^^^^^^ the name `handler` in the value namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 13 | pub use withdraw_offer::*;
[INFO] [stdout]    |         ----------------- but the name `handler` in the value namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, vault::Vault>` to implement `anchor_lang::Accounts<'_, BorrowBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, vault::Vault>>` to implement `anchor_lang::Accounts<'_, BorrowBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:12:45
[INFO] [stdout]     |
[INFO] [stdout] 12  |         seeds = [b"active-loan", offer_loan.key().as_ref()],
[INFO] [stdout]     |                                             ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account::<'a, T>::try_from_unchecked`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:302:53
[INFO] [stdout]     |
[INFO] [stdout] 302 | impl<'a, T: AccountSerialize + AccountDeserialize + Owner + Clone> Account<'a, T> {
[INFO] [stdout]     |                                                     ^^^^^ required by this bound in `Account::<'a, T>::try_from_unchecked`
[INFO] [stdout] ...
[INFO] [stdout] 321 |     pub fn try_from_unchecked(info: &'a AccountInfo<'a>) -> Result<Account<'a, T>> {
[INFO] [stdout]     |            ------------------ required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:26
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:26
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:26
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:25
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:25
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:25
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:28
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:28
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:28
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CreatePool<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/create_pool.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn handler(ctx: Context<CreatePool>, collection_id: Pubkey, duration: i64) -> Result<()> {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^ the trait `Bumps` is not implemented for `CreatePool<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] note: required by a bound in `anchor_lang::context::Context`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/context.rs:24:42
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context<'a, 'b, 'c, 'info, T: Bumps> {
[INFO] [stdout]    |                                          ^^^^^ required by this bound in `Context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:26
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:26
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout] note: there's an earlier shadowed binding `active_loan` of type `&anchor_lang::prelude::AccountInfo<'info>` that has method `to_account_info` available
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `active_loan` of type `&anchor_lang::prelude::AccountInfo<'info>` that has method `to_account_info` defined earlier here
[INFO] [stdout]     |         earlier `active_loan` shadowed here with type `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:26
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:20
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:20
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:20
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:86:19
[INFO] [stdout]     |
[INFO] [stdout] 86  |     active_loan: &Account<'info, ActiveLoan>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:86:19
[INFO] [stdout]     |
[INFO] [stdout] 86  |     active_loan: &Account<'info, ActiveLoan>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:86:19
[INFO] [stdout]     |
[INFO] [stdout] 86  |     active_loan: &Account<'info, ActiveLoan>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:21:25
[INFO] [stdout]     |
[INFO] [stdout] 21  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:21:25
[INFO] [stdout]     |
[INFO] [stdout] 21  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:21:25
[INFO] [stdout]     |
[INFO] [stdout] 21  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:35:24
[INFO] [stdout]     |
[INFO] [stdout] 35  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:35:24
[INFO] [stdout]     |
[INFO] [stdout] 35  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:29:24
[INFO] [stdout]     |
[INFO] [stdout] 29  |             offer_loan.key().as_ref(),
[INFO] [stdout]     |                        ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:9
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:9
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:9
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:9
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:9
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:9
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:35:24
[INFO] [stdout]     |
[INFO] [stdout] 35  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `OfferLoan<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:58:21
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn handler(ctx: Context<OfferLoan>, offer_amount: u64) -> Result<()> {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^ the trait `Bumps` is not implemented for `OfferLoan<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] note: required by a bound in `anchor_lang::context::Context`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/context.rs:24:42
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context<'a, 'b, 'c, 'info, T: Bumps> {
[INFO] [stdout]    |                                          ^^^^^ required by this bound in `Context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:26
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:26
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:26
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:20
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:20
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:20
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:24
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:24
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:24
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:25
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:25
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:25
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:24
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:24
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:24
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, vault::Vault>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, vault::Vault>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, offer::Offer>` to implement `anchor_lang::Accounts<'_, BorrowBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, offer::Offer>>` to implement `anchor_lang::Accounts<'_, BorrowBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, vault::Vault>` to implement `anchor_lang::Accounts<'_, BorrowBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, vault::Vault>>` to implement `anchor_lang::Accounts<'_, BorrowBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, vault::Vault>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, vault::Vault>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:12:45
[INFO] [stdout]     |
[INFO] [stdout] 12  |         seeds = [b"active-loan", offer_loan.key().as_ref()],
[INFO] [stdout]     |                                             ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, offer::Offer>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, offer::Offer>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, vault::Vault>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_loan_taken` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 |     if offer.is_loan_taken == true {
[INFO] [stdout]    |              ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `collection` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |     active_loan.collection = collection.key();
[INFO] [stdout]    |                 ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `offer_account` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:85:17
[INFO] [stdout]    |
[INFO] [stdout] 85 |     active_loan.offer_account = offer.key();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for mutable reference `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:85:39
[INFO] [stdout]     |
[INFO] [stdout] 85  |     active_loan.offer_account = offer.key();
[INFO] [stdout]     |                                       ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `lender` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:86:17
[INFO] [stdout]    |
[INFO] [stdout] 86 |     active_loan.lender = offer.lender.key();
[INFO] [stdout]    |                 ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `lender` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:86:32
[INFO] [stdout]    |
[INFO] [stdout] 86 |     active_loan.lender = offer.lender.key();
[INFO] [stdout]    |                                ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `borrower` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |     active_loan.borrower = ctx.accounts.borrower.key();
[INFO] [stdout]    |                 ^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `mint` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |     active_loan.mint = ctx.accounts.asset_mint.key();
[INFO] [stdout]    |                 ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `loan_ts` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 |     active_loan.loan_ts = ctx.accounts.clock.unix_timestamp;
[INFO] [stdout]    |                 ^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `repay_ts` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:90:17
[INFO] [stdout]    |
[INFO] [stdout] 90 |     active_loan.repay_ts = ctx.accounts.clock.unix_timestamp + collection.duration;
[INFO] [stdout]    |                 ^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_repaid` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |     active_loan.is_repaid = false;
[INFO] [stdout]    |                 ^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_liquidated` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     active_loan.is_liquidated = false;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `bump` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:93:17
[INFO] [stdout]    |
[INFO] [stdout] 93 |     active_loan.bump = *ctx.bumps.get("active_loan").unwrap();
[INFO] [stdout]    |                 ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account::<'a, T>::try_from_unchecked`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:302:53
[INFO] [stdout]     |
[INFO] [stdout] 302 | impl<'a, T: AccountSerialize + AccountDeserialize + Owner + Clone> Account<'a, T> {
[INFO] [stdout]     |                                                     ^^^^^ required by this bound in `Account::<'a, T>::try_from_unchecked`
[INFO] [stdout] ...
[INFO] [stdout] 321 |     pub fn try_from_unchecked(info: &'a AccountInfo<'a>) -> Result<Account<'a, T>> {
[INFO] [stdout]     |            ------------------ required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `BorrowBumps` in the current scope
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:93:35
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          -------- method `get` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 93  |     active_loan.bump = *ctx.bumps.get("active_loan").unwrap();
[INFO] [stdout]     |                         ----------^^^---------------
[INFO] [stdout]     |                         |         |
[INFO] [stdout]     |                         |         this is an associated function, not a method
[INFO] [stdout]     |                         help: use associated function syntax instead: `BorrowBumps::get("active_loan")`
[INFO] [stdout]     |
[INFO] [stdout]     = note: found the following associated functions; to be used as methods, functions must have a `self` parameter
[INFO] [stdout] note: the candidate is defined in the trait `anchor_lang::prelude::SolanaSysvar`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/solana-program-1.18.11/src/sysvar/mod.rs:214:5
[INFO] [stdout]     |
[INFO] [stdout] 214 |     fn get() -> Result<Self, ProgramError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `get`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `SliceIndex`
[INFO] [stdout]             candidate #2: `ZeroCopyAccessor`
[INFO] [stdout]             candidate #3: `anchor_lang::solana_program::account_info::Account`
[INFO] [stdout]             candidate #4: `bitmaps::types::BitOps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `borrower` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:95:11
[INFO] [stdout]    |
[INFO] [stdout] 95 |     offer.borrower = ctx.accounts.borrower.key();
[INFO] [stdout]    |           ^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_loan_taken` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:96:11
[INFO] [stdout]    |
[INFO] [stdout] 96 |     offer.is_loan_taken = true;
[INFO] [stdout]    |           ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `Box<anchor_lang::prelude::Account<'_, vault::Vault>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:100:65
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let vault_lamports_intial: u64 = ctx.accounts.vault_account.to_account_info().lamports();
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `Box<anchor_lang::prelude::Account<'_, vault::Vault>>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'_, vault::Vault>>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout] note: there's an earlier shadowed binding `active_loan` of type `&anchor_lang::prelude::AccountInfo<'info>` that has method `to_account_info` available
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `active_loan` of type `&anchor_lang::prelude::AccountInfo<'info>` that has method `to_account_info` defined earlier here
[INFO] [stdout]     |         earlier `active_loan` shadowed here with type `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `Box<anchor_lang::prelude::Account<'_, vault::Vault>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:109:10
[INFO] [stdout]     |
[INFO] [stdout] 106 |       **ctx
[INFO] [stdout]     |  _______-
[INFO] [stdout] 107 | |         .accounts
[INFO] [stdout] 108 | |         .vault_account
[INFO] [stdout] 109 | |         .to_account_info()
[INFO] [stdout]     | |         -^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 |   pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |   --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `Box<anchor_lang::prelude::Account<'_, vault::Vault>>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'_, vault::Vault>>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CreatePool<'_>: Bumps` is not satisfied in `anchor_lang::context::Context<'_, '_, '_, '_, CreatePool<'_>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/create_pool.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn handler(ctx: Context<CreatePool>, collection_id: Pubkey, duration: i64) -> Result<()> {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^ within `anchor_lang::context::Context<'_, '_, '_, '_, CreatePool<'_>>`, the trait `Bumps` is not implemented for `CreatePool<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] note: required because it appears within the type `anchor_lang::context::Context<'_, '_, '_, '_, CreatePool<'_>>`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/context.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context<'a, 'b, 'c, 'info, T: Bumps> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn handler(ctx: &Context<CreatePool>, collection_id: Pubkey, duration: i64) -> Result<()> {
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CreatePool<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/create_pool.rs:31:24
[INFO] [stdout]    |
[INFO] [stdout] 31 |     collection.bump = *ctx.bumps.get("collection_pool").unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^ the trait `Bumps` is not implemented for `CreatePool<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:29:24
[INFO] [stdout]     |
[INFO] [stdout] 29  |             offer_loan.key().as_ref(),
[INFO] [stdout]     |                        ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>` to implement `anchor_lang::Accounts<'_, LiquidateBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>` to implement `anchor_lang::Accounts<'_, LiquidateBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, offer::Offer>` to implement `anchor_lang::Accounts<'_, LiquidateBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, offer::Offer>>` to implement `anchor_lang::Accounts<'_, LiquidateBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:11:38
[INFO] [stdout]     |
[INFO] [stdout] 11  |         seeds=[b"active-loan", offer.key().as_ref()],
[INFO] [stdout]     |                                      ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `bump` on type `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 |         bump=active_loan.bump
[INFO] [stdout]    |                          ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::Key`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::Key`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:9
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:9
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:9
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:9
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:9
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:20:9
[INFO] [stdout]     |
[INFO] [stdout] 20  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:9
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:9
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:23:9
[INFO] [stdout]     |
[INFO] [stdout] 23  |     pub vault_account: Box<Account<'info, Vault>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, vault::Vault>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, vault::Vault>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, vault::Vault>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, vault::Vault>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, offer::Offer>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, offer::Offer>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/borrow.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, vault::Vault>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_loan_taken` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 |     if offer.is_loan_taken == true {
[INFO] [stdout]    |              ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `collection` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |     active_loan.collection = collection.key();
[INFO] [stdout]    |                 ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `offer_account` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:85:17
[INFO] [stdout]    |
[INFO] [stdout] 85 |     active_loan.offer_account = offer.key();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for mutable reference `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:85:39
[INFO] [stdout]     |
[INFO] [stdout] 85  |     active_loan.offer_account = offer.key();
[INFO] [stdout]     |                                       ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `lender` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:86:17
[INFO] [stdout]    |
[INFO] [stdout] 86 |     active_loan.lender = offer.lender.key();
[INFO] [stdout]    |                 ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `lender` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:86:32
[INFO] [stdout]    |
[INFO] [stdout] 86 |     active_loan.lender = offer.lender.key();
[INFO] [stdout]    |                                ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `borrower` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |     active_loan.borrower = ctx.accounts.borrower.key();
[INFO] [stdout]    |                 ^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `mint` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |     active_loan.mint = ctx.accounts.asset_mint.key();
[INFO] [stdout]    |                 ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `loan_ts` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 |     active_loan.loan_ts = ctx.accounts.clock.unix_timestamp;
[INFO] [stdout]    |                 ^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `repay_ts` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:90:17
[INFO] [stdout]    |
[INFO] [stdout] 90 |     active_loan.repay_ts = ctx.accounts.clock.unix_timestamp + collection.duration;
[INFO] [stdout]    |                 ^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_repaid` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |     active_loan.is_repaid = false;
[INFO] [stdout]    |                 ^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_liquidated` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     active_loan.is_liquidated = false;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `bump` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:93:17
[INFO] [stdout]    |
[INFO] [stdout] 93 |     active_loan.bump = *ctx.bumps.get("active_loan").unwrap();
[INFO] [stdout]    |                 ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `BorrowBumps` in the current scope
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:93:35
[INFO] [stdout]     |
[INFO] [stdout] 8   | #[derive(Accounts)]
[INFO] [stdout]     |          -------- method `get` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 93  |     active_loan.bump = *ctx.bumps.get("active_loan").unwrap();
[INFO] [stdout]     |                         ----------^^^---------------
[INFO] [stdout]     |                         |         |
[INFO] [stdout]     |                         |         this is an associated function, not a method
[INFO] [stdout]     |                         help: use associated function syntax instead: `BorrowBumps::get("active_loan")`
[INFO] [stdout]     |
[INFO] [stdout]     = note: found the following associated functions; to be used as methods, functions must have a `self` parameter
[INFO] [stdout] note: the candidate is defined in the trait `anchor_lang::prelude::SolanaSysvar`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/solana-program-1.18.11/src/sysvar/mod.rs:214:5
[INFO] [stdout]     |
[INFO] [stdout] 214 |     fn get() -> Result<Self, ProgramError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `get`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `SliceIndex`
[INFO] [stdout]             candidate #2: `ZeroCopyAccessor`
[INFO] [stdout]             candidate #3: `anchor_lang::solana_program::account_info::Account`
[INFO] [stdout]             candidate #4: `bitmaps::types::BitOps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, offer::Offer>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, offer::Offer>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `borrower` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:95:11
[INFO] [stdout]    |
[INFO] [stdout] 95 |     offer.borrower = ctx.accounts.borrower.key();
[INFO] [stdout]    |           ^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_loan_taken` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/borrow.rs:96:11
[INFO] [stdout]    |
[INFO] [stdout] 96 |     offer.is_loan_taken = true;
[INFO] [stdout]    |           ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_repaid` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:53:20
[INFO] [stdout]    |
[INFO] [stdout] 53 |     if active_loan.is_repaid {
[INFO] [stdout]    |                    ^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `Box<anchor_lang::prelude::Account<'_, vault::Vault>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:100:65
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let vault_lamports_intial: u64 = ctx.accounts.vault_account.to_account_info().lamports();
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `Box<anchor_lang::prelude::Account<'_, vault::Vault>>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'_, vault::Vault>>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_liquidated` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |     active_loan.is_liquidated = true;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `Box<anchor_lang::prelude::Account<'_, vault::Vault>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/borrow.rs:109:10
[INFO] [stdout]     |
[INFO] [stdout] 106 |       **ctx
[INFO] [stdout]     |  _______-
[INFO] [stdout] 107 | |         .accounts
[INFO] [stdout] 108 | |         .vault_account
[INFO] [stdout] 109 | |         .to_account_info()
[INFO] [stdout]     | |         -^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 |   pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |   --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `Box<anchor_lang::prelude::Account<'_, vault::Vault>>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'_, vault::Vault>>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CreatePool<'_>: Bumps` is not satisfied in `anchor_lang::context::Context<'_, '_, '_, '_, CreatePool<'_>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/create_pool.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn handler(ctx: Context<CreatePool>, collection_id: Pubkey, duration: i64) -> Result<()> {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^ within `anchor_lang::context::Context<'_, '_, '_, '_, CreatePool<'_>>`, the trait `Bumps` is not implemented for `CreatePool<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] note: required because it appears within the type `anchor_lang::context::Context<'_, '_, '_, '_, CreatePool<'_>>`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/context.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context<'a, 'b, 'c, 'info, T: Bumps> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn handler(ctx: &Context<CreatePool>, collection_id: Pubkey, duration: i64) -> Result<()> {
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CreatePool<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/create_pool.rs:31:24
[INFO] [stdout]    |
[INFO] [stdout] 31 |     collection.bump = *ctx.bumps.get("collection_pool").unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^ the trait `Bumps` is not implemented for `CreatePool<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>` to implement `anchor_lang::Accounts<'_, LiquidateBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>` to implement `anchor_lang::Accounts<'_, LiquidateBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, offer::Offer>` to implement `anchor_lang::Accounts<'_, LiquidateBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, offer::Offer>>` to implement `anchor_lang::Accounts<'_, LiquidateBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `repay_ts` on type `&anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:89:22
[INFO] [stdout]    |
[INFO] [stdout] 89 |     if (!active_loan.repay_ts < clock.unix_timestamp) {
[INFO] [stdout]    |                      ^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:11:38
[INFO] [stdout]     |
[INFO] [stdout] 11  |         seeds=[b"active-loan", offer.key().as_ref()],
[INFO] [stdout]     |                                      ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `bump` on type `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 |         bump=active_loan.bump
[INFO] [stdout]    |                          ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::Key`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::Key`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:51:36
[INFO] [stdout]     |
[INFO] [stdout] 51  |             to: self.vault_account.to_account_info().clone(),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `OfferLoan<'_>: Bumps` is not satisfied in `anchor_lang::context::Context<'_, '_, '_, '_, OfferLoan<'_>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:58:21
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn handler(ctx: Context<OfferLoan>, offer_amount: u64) -> Result<()> {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^ within `anchor_lang::context::Context<'_, '_, '_, '_, OfferLoan<'_>>`, the trait `Bumps` is not implemented for `OfferLoan<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] note: required because it appears within the type `anchor_lang::context::Context<'_, '_, '_, '_, OfferLoan<'_>>`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/context.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context<'a, 'b, 'c, 'info, T: Bumps> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn handler(ctx: &Context<OfferLoan>, offer_amount: u64) -> Result<()> {
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `collection` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 63 |     offer_account.collection = collection.key();
[INFO] [stdout]    |                   ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `offer_lamport_amount` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:64:19
[INFO] [stdout]    |
[INFO] [stdout] 64 |     offer_account.offer_lamport_amount = offer_amount;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `repay_lamport_account` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |     offer_account.repay_lamport_account = offer_amount + offer_amount * 10 / 100;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `lender` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:66:19
[INFO] [stdout]    |
[INFO] [stdout] 66 |     offer_account.lender = ctx.accounts.lender.key();
[INFO] [stdout]    |                   ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `bump` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |     offer_account.bump = *ctx.bumps.get("offer_loan").unwrap();
[INFO] [stdout]    |                   ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:9
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:9
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:14:9
[INFO] [stdout]     |
[INFO] [stdout] 14  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `OfferLoan<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:67:27
[INFO] [stdout]    |
[INFO] [stdout] 67 |     offer_account.bump = *ctx.bumps.get("offer_loan").unwrap();
[INFO] [stdout]    |                           ^^^^^^^^^ the trait `Bumps` is not implemented for `OfferLoan<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `offer` on type `&mut anchor_lang::prelude::Account<'_, vault::Vault>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:71:11
[INFO] [stdout]    |
[INFO] [stdout] 71 |     vault.offer = offer_account.key();
[INFO] [stdout]    |           ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:17:9
[INFO] [stdout]     |
[INFO] [stdout] 17  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for mutable reference `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:71:33
[INFO] [stdout]     |
[INFO] [stdout] 71  |     vault.offer = offer_account.key();
[INFO] [stdout]     |                                 ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `bump` on type `&mut anchor_lang::prelude::Account<'_, vault::Vault>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 |     vault.bump = *ctx.bumps.get("vault_account").unwrap();
[INFO] [stdout]    |           ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `OfferLoan<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     vault.bump = *ctx.bumps.get("vault_account").unwrap();
[INFO] [stdout]    |                   ^^^^^^^^^ the trait `Bumps` is not implemented for `OfferLoan<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, offer::Offer>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, offer::Offer>>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, vault::Vault>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `lender` on type `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:20:44
[INFO] [stdout]    |
[INFO] [stdout] 20 |         constraint = lender.key() == offer.lender.key()
[INFO] [stdout]    |                                            ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:9
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:9
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:9
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/liquidate.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, offer::Offer>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, offer::Offer>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_repaid` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:53:20
[INFO] [stdout]    |
[INFO] [stdout] 53 |     if active_loan.is_repaid {
[INFO] [stdout]    |                    ^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_liquidated` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |     active_loan.is_liquidated = true;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `repay_ts` on type `&anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/liquidate.rs:89:22
[INFO] [stdout]    |
[INFO] [stdout] 89 |     if (!active_loan.repay_ts < clock.unix_timestamp) {
[INFO] [stdout]    |                      ^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:51:36
[INFO] [stdout]     |
[INFO] [stdout] 51  |             to: self.vault_account.to_account_info().clone(),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `OfferLoan<'_>: Bumps` is not satisfied in `anchor_lang::context::Context<'_, '_, '_, '_, OfferLoan<'_>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:58:21
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn handler(ctx: Context<OfferLoan>, offer_amount: u64) -> Result<()> {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^ within `anchor_lang::context::Context<'_, '_, '_, '_, OfferLoan<'_>>`, the trait `Bumps` is not implemented for `OfferLoan<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] note: required because it appears within the type `anchor_lang::context::Context<'_, '_, '_, '_, OfferLoan<'_>>`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/context.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context<'a, 'b, 'c, 'info, T: Bumps> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn handler(ctx: &Context<OfferLoan>, offer_amount: u64) -> Result<()> {
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `collection` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 63 |     offer_account.collection = collection.key();
[INFO] [stdout]    |                   ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `offer_lamport_amount` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:64:19
[INFO] [stdout]    |
[INFO] [stdout] 64 |     offer_account.offer_lamport_amount = offer_amount;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `repay_lamport_account` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |     offer_account.repay_lamport_account = offer_amount + offer_amount * 10 / 100;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `lender` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:66:19
[INFO] [stdout]    |
[INFO] [stdout] 66 |     offer_account.lender = ctx.accounts.lender.key();
[INFO] [stdout]    |                   ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `bump` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |     offer_account.bump = *ctx.bumps.get("offer_loan").unwrap();
[INFO] [stdout]    |                   ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `OfferLoan<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:67:27
[INFO] [stdout]    |
[INFO] [stdout] 67 |     offer_account.bump = *ctx.bumps.get("offer_loan").unwrap();
[INFO] [stdout]    |                           ^^^^^^^^^ the trait `Bumps` is not implemented for `OfferLoan<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `offer` on type `&mut anchor_lang::prelude::Account<'_, vault::Vault>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:71:11
[INFO] [stdout]    |
[INFO] [stdout] 71 |     vault.offer = offer_account.key();
[INFO] [stdout]    |           ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for mutable reference `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/offer_loan.rs:71:33
[INFO] [stdout]     |
[INFO] [stdout] 71  |     vault.offer = offer_account.key();
[INFO] [stdout]     |                                 ^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `bump` on type `&mut anchor_lang::prelude::Account<'_, vault::Vault>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 |     vault.bump = *ctx.bumps.get("vault_account").unwrap();
[INFO] [stdout]    |           ^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `OfferLoan<'_>: Bumps` is not satisfied
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/offer_loan.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     vault.bump = *ctx.bumps.get("vault_account").unwrap();
[INFO] [stdout]    |                   ^^^^^^^^^ the trait `Bumps` is not implemented for `OfferLoan<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `Bumps`:
[INFO] [stdout]              CreateNonceAccount<'info>
[INFO] [stdout]              CreateNonceAccountWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AdvanceNonceAccount<'info>
[INFO] [stdout]              anchor_lang::system_program::Allocate<'info>
[INFO] [stdout]              anchor_lang::system_program::AllocateWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::Assign<'info>
[INFO] [stdout]              anchor_lang::system_program::AssignWithSeed<'info>
[INFO] [stdout]              anchor_lang::system_program::AuthorizeNonceAccount<'info>
[INFO] [stdout]            and 46 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, offer::Offer>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, offer::Offer>>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, vault::Vault>` to implement `anchor_lang::Accounts<'_, RepayBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, offer::Offer>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, offer::Offer>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `lender` on type `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:20:44
[INFO] [stdout]    |
[INFO] [stdout] 20 |         constraint = lender.key() == offer.lender.key()
[INFO] [stdout]    |                                            ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountMetas`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsExit::exit`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:128:32
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout] 129 |     /// `program_id` is the currently executing program.
[INFO] [stdout] 130 |     fn exit(&self, _program_id: &Pubkey) -> Result<()> {
[INFO] [stdout]     |        ---- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountMetas`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsExit::exit`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:128:32
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout] 129 |     /// `program_id` is the currently executing program.
[INFO] [stdout] 130 |     fn exit(&self, _program_id: &Pubkey) -> Result<()> {
[INFO] [stdout]     |        ---- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `anchor_lang::ToAccountMetas` is implemented for `anchor_lang::prelude::Account<'_, T>`
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountMetas`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsExit::exit`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:128:32
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout] 129 |     /// `program_id` is the currently executing program.
[INFO] [stdout] 130 |     fn exit(&self, _program_id: &Pubkey) -> Result<()> {
[INFO] [stdout]     |        ---- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  |     pub active_loan: Box<Account<'info, ActiveLoan>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Clone` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:9
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:9
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_repaid` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:65:17
[INFO] [stdout]    |
[INFO] [stdout] 65 |     active_loan.is_repaid = true;
[INFO] [stdout]    |                 ^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `repay_lamport_amount` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:76:30
[INFO] [stdout]    |
[INFO] [stdout] 76 |     let repay_amount = offer.repay_lamport_amount;
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:36:9
[INFO] [stdout]     |
[INFO] [stdout] 36  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `borrower_asset_account` on type `&mut repay::Repay<'_>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 |             .borrower_asset_account
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `active_loan`, `offer`, `collection_pool`, `lender`, `asset_mint` ... and 6 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, offer::Offer>` to implement `anchor_lang::Accounts<'_, WithdrawOfferBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, offer::Offer>>` to implement `anchor_lang::Accounts<'_, WithdrawOfferBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, vault::Vault>` to implement `anchor_lang::Accounts<'_, WithdrawOfferBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `anchor_lang::prelude::Account<'_, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'_, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::Key`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::Key`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:9
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:9
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:9
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct ActiveLoan {
[INFO] [stdout]     | --------------------- doesn't satisfy `_: AccountDeserialize`, `active_loan::ActiveLoan: AccountSerialize` or `active_loan::ActiveLoan: Clone`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `active_loan::ActiveLoan: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `active_loan::ActiveLoan` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/active_loan.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct ActiveLoan {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsClose::close`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:138:33
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub trait AccountsClose<'info>: ToAccountInfos<'info> {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `AccountsClose::close`
[INFO] [stdout] 139 |     fn close(&self, sol_destination: AccountInfo<'info>) -> Result<()>;
[INFO] [stdout]     |        ----- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsClose::close`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:138:33
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub trait AccountsClose<'info>: ToAccountInfos<'info> {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `AccountsClose::close`
[INFO] [stdout] 139 |     fn close(&self, sol_destination: AccountInfo<'info>) -> Result<()>;
[INFO] [stdout]     |        ----- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `anchor_lang::ToAccountInfos<'_>` is implemented for `anchor_lang::prelude::Account<'_, T>`
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsClose::close`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:138:33
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub trait AccountsClose<'info>: ToAccountInfos<'info> {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `AccountsClose::close`
[INFO] [stdout] 139 |     fn close(&self, sol_destination: AccountInfo<'info>) -> Result<()>;
[INFO] [stdout]     |        ----- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_loan_taken` on type `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:33:32
[INFO] [stdout]    |
[INFO] [stdout] 33 |     if ctx.accounts.offer_loan.is_loan_taken == true {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'_, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:39:66
[INFO] [stdout]     |
[INFO] [stdout] 39  |     let vault_lamports_initial: u64 = ctx.accounts.vault_account.to_account_info().lamports();
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'_, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `active_loan::ActiveLoan: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `active_loan::ActiveLoan`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, active_loan::ActiveLoan>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'_, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:48:10
[INFO] [stdout]     |
[INFO] [stdout] 45  |       **ctx
[INFO] [stdout]     |  _______-
[INFO] [stdout] 46  | |         .accounts
[INFO] [stdout] 47  | |         .vault_account
[INFO] [stdout] 48  | |         .to_account_info()
[INFO] [stdout]     | |         -^^^^^^^^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'_, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 |   pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |   --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, offer::Offer>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'info, offer::Offer>>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountMetas`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsExit::exit`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:128:32
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout] 129 |     /// `program_id` is the currently executing program.
[INFO] [stdout] 130 |     fn exit(&self, _program_id: &Pubkey) -> Result<()> {
[INFO] [stdout]     |        ---- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountMetas`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsExit::exit`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:128:32
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout] 129 |     /// `program_id` is the currently executing program.
[INFO] [stdout] 130 |     fn exit(&self, _program_id: &Pubkey) -> Result<()> {
[INFO] [stdout]     |        ---- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `anchor_lang::ToAccountMetas` is implemented for `anchor_lang::prelude::Account<'_, T>`
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountMetas`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsExit::exit`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:128:32
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout] 129 |     /// `program_id` is the currently executing program.
[INFO] [stdout] 130 |     fn exit(&self, _program_id: &Pubkey) -> Result<()> {
[INFO] [stdout]     |        ---- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/repay.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `AccountsExit<'_>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_repaid` on type `&mut Box<anchor_lang::prelude::Account<'_, active_loan::ActiveLoan>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:65:17
[INFO] [stdout]    |
[INFO] [stdout] 65 |     active_loan.is_repaid = true;
[INFO] [stdout]    |                 ^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `repay_lamport_amount` on type `&mut Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:76:30
[INFO] [stdout]    |
[INFO] [stdout] 76 |     let repay_amount = offer.repay_lamport_amount;
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `borrower_asset_account` on type `&mut repay::Repay<'_>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/repay.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 |             .borrower_asset_account
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `active_loan`, `offer`, `collection_pool`, `lender`, `asset_mint` ... and 6 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0422, E0425, E0432, E0433, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `offer::Offer`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, offer::Offer>` to implement `anchor_lang::Accounts<'_, WithdrawOfferBumps>`
[INFO] [stdout]   = note: 1 redundant requirement hidden
[INFO] [stdout]   = note: required for `Box<anchor_lang::prelude::Account<'_, offer::Offer>>` to implement `anchor_lang::Accounts<'_, WithdrawOfferBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::Owner` is not satisfied
[INFO] [stdout]  --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Accounts)]
[INFO] [stdout]   |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `vault::Vault`
[INFO] [stdout]   |
[INFO] [stdout]   = help: the following other types implement trait `anchor_lang::Owner`:
[INFO] [stdout]             UpgradeableLoaderState
[INFO] [stdout]             anchor_lang::ProgramData
[INFO] [stdout]             anchor_spl::token::Mint
[INFO] [stdout]             anchor_spl::token::TokenAccount
[INFO] [stdout]             collection_pool::CollectionPool
[INFO] [stdout]   = note: required for `anchor_lang::prelude::Account<'_, vault::Vault>` to implement `anchor_lang::Accounts<'_, WithdrawOfferBumps>`
[INFO] [stdout]   = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, offer::Offer>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `key` exists for struct `anchor_lang::prelude::Account<'_, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'_, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: Key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::Key`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::Key`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::Key`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nft-lendswap` (lib test) due to 208 previous errors; 7 warnings emitted
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `offer::Offer: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:13:9
[INFO] [stdout]     |
[INFO] [stdout] 13  |     pub offer_loan: Box<Account<'info, Offer>>,
[INFO] [stdout]     |         ^^^^^^^^^^ the trait `Clone` is not implemented for `offer::Offer`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:9
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:9
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:19:9
[INFO] [stdout]     |
[INFO] [stdout] 19  |     pub vault_account: Account<'info, Vault>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Account`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_infos` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `Box<anchor_lang::prelude::Account<'info, offer::Offer>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Offer {
[INFO] [stdout]     | ---------------- doesn't satisfy `offer::Offer: AccountSerialize`, `offer::Offer: Clone` or `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             which is required by `Box<anchor_lang::prelude::Account<'info, offer::Offer>>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `offer::Offer: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, offer::Offer>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `offer::Offer` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/offer.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Offer {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `anchor_lang::prelude::Account<'info, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'info, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   | pub struct Vault {
[INFO] [stdout]     | ---------------- doesn't satisfy `vault::Vault: AccountSerialize`, `vault::Vault: Clone` or `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `vault::Vault: AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `vault::Vault: Clone`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, vault::Vault>: anchor_lang::ToAccountMetas`
[INFO] [stdout] note: the traits `AccountSerialize` and `anchor_lang::AccountDeserialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `AccountSerialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `AccountSerialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsClose::close`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:138:33
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub trait AccountsClose<'info>: ToAccountInfos<'info> {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `AccountsClose::close`
[INFO] [stdout] 139 |     fn close(&self, sol_destination: AccountInfo<'info>) -> Result<()>;
[INFO] [stdout]     |        ----- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `anchor_lang::AccountDeserialize`:
[INFO] [stdout]               IdlAccount
[INFO] [stdout]               UpgradeableLoaderState
[INFO] [stdout]               anchor_lang::ProgramData
[INFO] [stdout]               anchor_spl::token::Mint
[INFO] [stdout]               anchor_spl::token::TokenAccount
[INFO] [stdout]               anchor_spl::token_interface::Mint
[INFO] [stdout]               anchor_spl::token_interface::TokenAccount
[INFO] [stdout]               collection_pool::CollectionPool
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsClose::close`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:138:33
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub trait AccountsClose<'info>: ToAccountInfos<'info> {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `AccountsClose::close`
[INFO] [stdout] 139 |     fn close(&self, sol_destination: AccountInfo<'info>) -> Result<()>;
[INFO] [stdout]     |        ----- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `vault::Vault: Clone` is not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:7:10
[INFO] [stdout]     |
[INFO] [stdout] 7   | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `Clone` is not implemented for `vault::Vault`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `anchor_lang::ToAccountInfos<'_>` is implemented for `anchor_lang::prelude::Account<'_, T>`
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, vault::Vault>` to implement `anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout] note: required by a bound in `anchor_lang::AccountsClose::close`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:138:33
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub trait AccountsClose<'info>: ToAccountInfos<'info> {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `AccountsClose::close`
[INFO] [stdout] 139 |     fn close(&self, sol_destination: AccountInfo<'info>) -> Result<()>;
[INFO] [stdout]     |        ----- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the derive macro `Accounts` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider annotating `vault::Vault` with `#[derive(Clone)]`
[INFO] [stdout]    --> programs/nft-lendswap/src/states/vault.rs:3:1
[INFO] [stdout]     |
[INFO] [stdout] 3   + #[derive(Clone)]
[INFO] [stdout] 4   | pub struct Vault {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `is_loan_taken` on type `Box<anchor_lang::prelude::Account<'_, offer::Offer>>`
[INFO] [stdout]   --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:33:32
[INFO] [stdout]    |
[INFO] [stdout] 33 |     if ctx.accounts.offer_loan.is_loan_taken == true {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'_, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:39:66
[INFO] [stdout]     |
[INFO] [stdout] 39  |     let vault_lamports_initial: u64 = ctx.accounts.vault_account.to_account_info().lamports();
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'_, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     | --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'_, vault::Vault>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/nft-lendswap/src/instructions/withdraw_offer.rs:48:10
[INFO] [stdout]     |
[INFO] [stdout] 45  |       **ctx
[INFO] [stdout]     |  _______-
[INFO] [stdout] 46  | |         .accounts
[INFO] [stdout] 47  | |         .vault_account
[INFO] [stdout] 48  | |         .to_account_info()
[INFO] [stdout]     | |         -^^^^^^^^^^^^^^^ method cannot be called on `anchor_lang::prelude::Account<'_, vault::Vault>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 |   pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Clone> {
[INFO] [stdout]     |   --------------------------------------------------------------------------- doesn't satisfy `_: AsRef<AccountInfo<'_>>` or `_: ToAccountInfo<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_lang::prelude::Account<'_, vault::Vault>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, vault::Vault>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0422, E0425, E0432, E0433, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nft-lendswap` (lib) due to 208 previous errors; 7 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "bc1de0d2311dfe34da5e95983bbb564e0eb1a1b1cc92f1bd6bb5b0c6da426661", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc1de0d2311dfe34da5e95983bbb564e0eb1a1b1cc92f1bd6bb5b0c6da426661", kill_on_drop: false }`
[INFO] [stdout] bc1de0d2311dfe34da5e95983bbb564e0eb1a1b1cc92f1bd6bb5b0c6da426661
