[INFO] cloning repository https://github.com/Benjamin-cup/SPL_Token_whitelist
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Benjamin-cup/SPL_Token_whitelist" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBenjamin-cup%2FSPL_Token_whitelist", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBenjamin-cup%2FSPL_Token_whitelist'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f4628f309348290c40326c256dd7093c115dae7d
[INFO] checking Benjamin-cup/SPL_Token_whitelist against master#c8a31b780d5415358566a20b94912620a3f27067 for pr-139493-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBenjamin-cup%2FSPL_Token_whitelist" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Benjamin-cup/SPL_Token_whitelist
[INFO] finished tweaking git repo https://github.com/Benjamin-cup/SPL_Token_whitelist
[INFO] tweaked toml for git repo https://github.com/Benjamin-cup/SPL_Token_whitelist written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Benjamin-cup/SPL_Token_whitelist on toolchain c8a31b780d5415358566a20b94912620a3f27067
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Benjamin-cup/SPL_Token_whitelist already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[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]  Downloading crates ...
[INFO] [stderr]   Downloaded anchor-attribute-program v0.26.0
[INFO] [stderr]   Downloaded anchor-attribute-state v0.26.0
[INFO] [stderr]   Downloaded anchor-attribute-access-control v0.26.0
[INFO] [stderr]   Downloaded anchor-attribute-account v0.26.0
[INFO] [stderr]   Downloaded anchor-attribute-constant v0.26.0
[INFO] [stderr]   Downloaded anchor-lang v0.26.0
[INFO] [stderr]   Downloaded solana-logger v1.17.0
[INFO] [stderr]   Downloaded light-poseidon v0.1.2
[INFO] [stderr]   Downloaded solana-sdk v1.17.0
[INFO] [stderr]   Downloaded anchor-attribute-error v0.26.0
[INFO] [stderr]   Downloaded anchor-attribute-interface v0.26.0
[INFO] [stderr]   Downloaded anchor-syn v0.26.0
[INFO] [stderr]   Downloaded anchor-derive-accounts v0.26.0
[INFO] [stderr]   Downloaded solana-frozen-abi v1.17.0
[INFO] [stderr]   Downloaded solana-frozen-abi-macro v1.17.0
[INFO] [stderr]   Downloaded solana-sdk-macro v1.17.0
[INFO] [stderr]   Downloaded solana-program v1.17.0
[INFO] [stderr]   Downloaded solana-zk-token-sdk v1.17.0
[INFO] [stderr]   Downloaded anchor-attribute-event v0.26.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0c8b11349dde15486c8f98303e862c651ade439899625f8ba4c392f55be88956
[INFO] running `Command { std: "docker" "start" "-a" "0c8b11349dde15486c8f98303e862c651ade439899625f8ba4c392f55be88956", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0c8b11349dde15486c8f98303e862c651ade439899625f8ba4c392f55be88956", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0c8b11349dde15486c8f98303e862c651ade439899625f8ba4c392f55be88956", kill_on_drop: false }`
[INFO] [stdout] 0c8b11349dde15486c8f98303e862c651ade439899625f8ba4c392f55be88956
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ddeb02dfe835ff74d9406a497035226bdde228c1551d75e407016c309e3ce84e
[INFO] running `Command { std: "docker" "start" "-a" "ddeb02dfe835ff74d9406a497035226bdde228c1551d75e407016c309e3ce84e", 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]   |
[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.78
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling serde_json v1.0.114
[INFO] [stderr]    Compiling anyhow v1.0.80
[INFO] [stderr]    Compiling subtle v2.4.1
[INFO] [stderr]    Compiling cpufeatures v0.2.12
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling semver v1.0.22
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]    Compiling ahash v0.8.9
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.91
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling ryu v1.0.17
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling bumpalo v3.15.3
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]    Compiling im v15.1.0
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking jobserver v0.1.28
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking constant_time_eq v0.3.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling wasm-bindgen v0.2.91
[INFO] [stderr]     Checking rayon-core v1.12.1
[INFO] [stderr]    Compiling solana-frozen-abi-macro v1.17.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling solana-frozen-abi v1.17.0
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking cc v1.0.83
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]     Checking memmap2 v0.5.10
[INFO] [stderr]     Checking rayon v1.8.1
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]    Compiling syn v2.0.50
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]    Compiling yansi v0.5.1
[INFO] [stderr]    Compiling solana-sdk v1.17.0
[INFO] [stderr]    Compiling bs58 v0.5.0
[INFO] [stderr]     Checking uriparse v0.6.4
[INFO] [stderr]    Compiling indexmap v2.2.3
[INFO] [stderr]     Checking aho-corasick v1.1.2
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking ark-std v0.4.0
[INFO] [stderr]     Checking chrono v0.4.34
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling toml_edit v0.21.1
[INFO] [stderr]     Checking regex-automata v0.4.5
[INFO] [stderr]    Compiling blake3 v1.5.0
[INFO] [stderr]    Compiling solana-program v1.17.0
[INFO] [stderr]    Compiling proc-macro-crate v3.1.0
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.91
[INFO] [stderr]    Compiling darling_core v0.20.8
[INFO] [stderr]     Checking env_logger v0.9.3
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling thiserror-impl v1.0.57
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling bytemuck_derive v1.5.0
[INFO] [stderr]    Compiling solana-sdk-macro v1.17.0
[INFO] [stderr]    Compiling num_enum_derive v0.6.1
[INFO] [stderr]    Compiling qualifier_attr v0.2.2
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling num_enum_derive v0.7.2
[INFO] [stderr]    Compiling borsh-derive-internal v0.10.3
[INFO] [stderr]    Compiling borsh-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.10.3
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.9.1
[INFO] [stderr]     Checking solana-logger v1.17.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.91
[INFO] [stderr]     Checking num_enum v0.6.1
[INFO] [stderr]     Checking bytemuck v1.14.3
[INFO] [stderr]     Checking zeroize v1.3.0
[INFO] [stderr]    Compiling thiserror v1.0.57
[INFO] [stderr]     Checking num_enum v0.7.2
[INFO] [stderr]     Checking merlin v3.0.0
[INFO] [stderr]    Compiling darling_macro v0.20.8
[INFO] [stderr]    Compiling ark-serialize-derive v0.4.2
[INFO] [stderr]    Compiling ark-ff-macros v0.4.2
[INFO] [stderr]    Compiling ark-ff-asm v0.4.2
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]    Compiling anchor-derive-space v0.29.0
[INFO] [stderr]    Compiling darling v0.20.8
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.91
[INFO] [stderr]    Compiling serde_with_macros v2.3.3
[INFO] [stderr]     Checking bv v0.11.1
[INFO] [stderr]     Checking serde_bytes v0.11.14
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking bitflags v2.4.2
[INFO] [stderr]     Checking serde_with v2.3.3
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking digest v0.9.0
[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 hmac v0.8.1
[INFO] [stderr]     Checking curve25519-dalek v3.2.1
[INFO] [stderr]     Checking libsecp256k1-core v0.2.2
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking aes v0.7.5
[INFO] [stderr]     Checking ctr v0.8.0
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking sha3 v0.9.1
[INFO] [stderr]     Checking hmac-drbg v0.3.0
[INFO] [stderr]     Checking ark-serialize v0.4.2
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking sha3 v0.10.8
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]     Checking tiny-bip39 v0.8.2
[INFO] [stderr]     Checking ark-ff v0.4.2
[INFO] [stderr]     Checking aes-gcm-siv v0.10.3
[INFO] [stderr]    Compiling borsh-derive v0.9.3
[INFO] [stderr]    Compiling borsh-derive v0.10.3
[INFO] [stderr]     Checking ed25519-dalek v1.0.1
[INFO] [stderr]     Checking ed25519-dalek-bip32 v0.2.0
[INFO] [stderr]     Checking borsh v0.9.3
[INFO] [stderr]     Checking borsh v0.10.3
[INFO] [stderr]    Compiling anchor-syn v0.29.0
[INFO] [stderr]    Compiling spl-discriminator-syn v0.1.2
[INFO] [stderr]    Compiling spl-program-error-derive v0.3.2
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling anchor-syn v0.26.0
[INFO] [stderr]    Compiling spl-discriminator-derive v0.1.2
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]    Compiling anchor-attribute-event v0.26.0
[INFO] [stderr]    Compiling anchor-attribute-constant v0.26.0
[INFO] [stderr]    Compiling anchor-attribute-account v0.26.0
[INFO] [stderr]    Compiling anchor-attribute-access-control v0.26.0
[INFO] [stderr]    Compiling anchor-attribute-program v0.26.0
[INFO] [stderr]    Compiling anchor-attribute-error v0.26.0
[INFO] [stderr]    Compiling anchor-attribute-state v0.26.0
[INFO] [stderr]    Compiling anchor-derive-accounts v0.26.0
[INFO] [stderr]    Compiling anchor-attribute-interface v0.26.0
[INFO] [stderr]    Compiling anchor-attribute-access-control v0.29.0
[INFO] [stderr]    Compiling anchor-derive-serde v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-program v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-error v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-account v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-constant v0.29.0
[INFO] [stderr]    Compiling anchor-attribute-event v0.29.0
[INFO] [stderr]    Compiling anchor-derive-accounts 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.1.2
[INFO] [stderr]     Checking spl-program-error v0.3.0
[INFO] [stderr]     Checking spl-discriminator v0.1.0
[INFO] [stderr]     Checking spl-token v4.0.0
[INFO] [stderr]     Checking spl-memo v4.0.0
[INFO] [stderr]     Checking anchor-lang v0.29.0
[INFO] [stderr]     Checking anchor-lang v0.26.0
[INFO] [stderr]     Checking solana-zk-token-sdk v1.17.0
[INFO] [stderr]     Checking spl-pod v0.1.0
[INFO] [stderr]     Checking spl-type-length-value v0.3.0
[INFO] [stderr]     Checking spl-tlv-account-resolution v0.4.0
[INFO] [stderr]     Checking spl-token-metadata-interface v0.2.0
[INFO] [stderr]     Checking spl-transfer-hook-interface v0.3.0
[INFO] [stderr]     Checking spl-token-2022 v0.9.0
[INFO] [stderr]     Checking spl-associated-token-account v2.2.0
[INFO] [stderr]     Checking anchor-spl v0.29.0
[INFO] [stderr]     Checking examroom_ai_token v0.1.0 (/opt/rustwide/workdir/programs/examroom_ai_token)
[INFO] [stdout] error: bump targets should not be provided with init. Please use bump without a target.
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |         bump = mint_token_vault_bump,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: Deprecated. Should be used with constraint: #[account(constraint = token_program.key == &token::ID)]
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:239:27
[INFO] [stdout]     |
[INFO] [stdout] 239 |     #[account(executable, "token_program.key == &token::ID")]
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: Deprecated. Should be used with constraint: #[account(constraint = authority_mint_account.owner == *authority.key)]
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:241:20
[INFO] [stdout]     |
[INFO] [stdout] 241 |     #[account(mut, "authority_mint_account.owner == *authority.key")]
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: Deprecated. Should be used with constraint: #[account(constraint = payer_mint_account.owner == *payer.key)]
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:302:20
[INFO] [stdout]     |
[INFO] [stdout] 302 |     #[account(mut, "payer_mint_account.owner == *payer.key")]
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: Deprecated. Should be used with constraint: #[account(constraint = token_program.key == &token::ID)]
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:305:27
[INFO] [stdout]     |
[INFO] [stdout] 305 |     #[account(executable, "token_program.key == &token::ID")]
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: bump targets should not be provided with init. Please use bump without a target.
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |         bump = mint_token_vault_bump,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: Deprecated. Should be used with constraint: #[account(constraint = token_program.key == &token::ID)]
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:239:27
[INFO] [stdout]     |
[INFO] [stdout] 239 |     #[account(executable, "token_program.key == &token::ID")]
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: Deprecated. Should be used with constraint: #[account(constraint = authority_mint_account.owner == *authority.key)]
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:241:20
[INFO] [stdout]     |
[INFO] [stdout] 241 |     #[account(mut, "authority_mint_account.owner == *authority.key")]
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[INFO] [stdout]    | ^^^^^^^^^^ could not find `__client_accounts_initialize` in the crate root
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: Deprecated. Should be used with constraint: #[account(constraint = payer_mint_account.owner == *payer.key)]
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:302:20
[INFO] [stdout]     |
[INFO] [stdout] 302 |     #[account(mut, "payer_mint_account.owner == *payer.key")]
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: Deprecated. Should be used with constraint: #[account(constraint = token_program.key == &token::ID)]
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:305:27
[INFO] [stdout]     |
[INFO] [stdout] 305 |     #[account(executable, "token_program.key == &token::ID")]
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-heap`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[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 macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[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 macro `$crate::custom_heap_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[INFO] [stdout]    | ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, and `trusty` and 12 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[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 macro `$crate::custom_heap_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-panic`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[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 macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[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 macro `$crate::custom_panic_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[INFO] [stdout]    | ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, and `trusty` and 12 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[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 macro `$crate::custom_panic_default` which comes from the expansion of the attribute macro `program` (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/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[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 attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `program` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `program` may come from an old version of the `anchor_attribute_program` crate, try updating your dependency with `cargo update -p anchor_attribute_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the attribute macro `program` (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/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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/examroom_ai_token/src/lib.rs:259:10
[INFO] [stdout]     |
[INFO] [stdout] 259 | #[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/examroom_ai_token/src/lib.rs:268:10
[INFO] [stdout]     |
[INFO] [stdout] 268 | #[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/examroom_ai_token/src/lib.rs:279:10
[INFO] [stdout]     |
[INFO] [stdout] 279 | #[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/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[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[E0432]: unresolved import `crate`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[INFO] [stdout]    | ^^^^^^^^^^ could not find `__client_accounts_initialize` in the crate root
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0124]: field `token_program` is already declared
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 206 |     pub token_program: Program<'info, Token>,
[INFO] [stdout]     |     ---------------------------------------- `token_program` first declared here
[INFO] [stdout] ...
[INFO] [stdout] 217 |     token_program: AccountInfo<'info>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field already declared
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-heap`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[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 macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[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 macro `$crate::custom_heap_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:203:19
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub from_ata: Account<'info, TokenAccount>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:203:19
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub from_ata: Account<'info, TokenAccount>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:203:19
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub from_ata: Account<'info, TokenAccount>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[INFO] [stdout]    | ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, and `trusty` and 12 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[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 macro `$crate::custom_heap_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-panic`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[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 macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[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 macro `$crate::custom_panic_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[INFO] [stdout]    | ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, and `trusty` and 12 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[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 macro `$crate::custom_panic_default` which comes from the expansion of the attribute macro `program` (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/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[program]
[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 attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `program` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `program` may come from an old version of the `anchor_attribute_program` crate, try updating your dependency with `cargo update -p anchor_attribute_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Token: Id` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:206:24
[INFO] [stdout]     |
[INFO] [stdout] 206 |     pub token_program: Program<'info, Token>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `Id` is not implemented for `Token`
[INFO] [stdout]     |
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub trait Id {
[INFO] [stdout]     | ^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:512:1
[INFO] [stdout]     |
[INFO] [stdout] 512 | pub struct Token;
[INFO] [stdout]     | ---------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Program`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/program.rs:78:30
[INFO] [stdout]     |
[INFO] [stdout]  78 | pub struct Program<'info, T: Id + Clone> {
[INFO] [stdout]     |                              ^^ required by this bound in `Program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `anchor-debug`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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/examroom_ai_token/src/lib.rs:259:10
[INFO] [stdout]     |
[INFO] [stdout] 259 | #[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/examroom_ai_token/src/lib.rs:268:10
[INFO] [stdout]     |
[INFO] [stdout] 268 | #[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/examroom_ai_token/src/lib.rs:279:10
[INFO] [stdout]     |
[INFO] [stdout] 279 | #[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/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[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 `Whitelist: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:212:16
[INFO] [stdout]     |
[INFO] [stdout] 212 |     whitelist: Account<'info, Whitelist>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `anchor_lang::AccountSerialize` is not implemented for `Whitelist`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:275:1
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub struct Whitelist {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout] ...
[INFO] [stdout] 275 | pub struct Whitelist {
[INFO] [stdout]     | -------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:213:11
[INFO] [stdout]     |
[INFO] [stdout] 213 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:492:1
[INFO] [stdout]     |
[INFO] [stdout] 492 | impl anchor_lang::AccountSerialize for Mint {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:213:11
[INFO] [stdout]     |
[INFO] [stdout] 213 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:484:1
[INFO] [stdout]     |
[INFO] [stdout] 484 | impl anchor_lang::AccountDeserialize for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:213:11
[INFO] [stdout]     |
[INFO] [stdout] 213 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:494:1
[INFO] [stdout]     |
[INFO] [stdout] 494 | impl anchor_lang::Owner for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:11
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:492:1
[INFO] [stdout]     |
[INFO] [stdout] 492 | impl anchor_lang::AccountSerialize for Mint {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:11
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:484:1
[INFO] [stdout]     |
[INFO] [stdout] 484 | impl anchor_lang::AccountDeserialize for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0124]: field `token_program` is already declared
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 206 |     pub token_program: Program<'info, Token>,
[INFO] [stdout]     |     ---------------------------------------- `token_program` first declared here
[INFO] [stdout] ...
[INFO] [stdout] 217 |     token_program: AccountInfo<'info>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field already declared
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:11
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:494:1
[INFO] [stdout]     |
[INFO] [stdout] 494 | impl anchor_lang::Owner for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:29
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:29
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:29
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:203:19
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub from_ata: Account<'info, TokenAccount>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:203:19
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub from_ata: Account<'info, TokenAccount>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:203:19
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub from_ata: Account<'info, TokenAccount>,
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Token: Id` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:206:24
[INFO] [stdout]     |
[INFO] [stdout] 206 |     pub token_program: Program<'info, Token>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ the trait `Id` is not implemented for `Token`
[INFO] [stdout]     |
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub trait Id {
[INFO] [stdout]     | ^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:512:1
[INFO] [stdout]     |
[INFO] [stdout] 512 | pub struct Token;
[INFO] [stdout]     | ---------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout] note: required by a bound in `anchor_lang::prelude::Program`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/program.rs:78:30
[INFO] [stdout]     |
[INFO] [stdout]  78 | pub struct Program<'info, T: Id + Clone> {
[INFO] [stdout]     |                              ^^ required by this bound in `Program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Whitelist: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:212:16
[INFO] [stdout]     |
[INFO] [stdout] 212 |     whitelist: Account<'info, Whitelist>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `anchor_lang::AccountSerialize` is not implemented for `Whitelist`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:275:1
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub struct Whitelist {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout] ...
[INFO] [stdout] 275 | pub struct Whitelist {
[INFO] [stdout]     | -------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:213:11
[INFO] [stdout]     |
[INFO] [stdout] 213 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:492:1
[INFO] [stdout]     |
[INFO] [stdout] 492 | impl anchor_lang::AccountSerialize for Mint {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:213:11
[INFO] [stdout]     |
[INFO] [stdout] 213 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:484:1
[INFO] [stdout]     |
[INFO] [stdout] 484 | impl anchor_lang::AccountDeserialize for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:213:11
[INFO] [stdout]     |
[INFO] [stdout] 213 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:494:1
[INFO] [stdout]     |
[INFO] [stdout] 494 | impl anchor_lang::Owner for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:11
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:492:1
[INFO] [stdout]     |
[INFO] [stdout] 492 | impl anchor_lang::AccountSerialize for Mint {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:11
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:484:1
[INFO] [stdout]     |
[INFO] [stdout] 484 | impl anchor_lang::AccountDeserialize for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:11
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:494:1
[INFO] [stdout]     |
[INFO] [stdout] 494 | impl anchor_lang::Owner for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:29
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:29
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:29
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | const PREFIX: String = "examroom_ai";
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ expected `String`, found `&str`
[INFO] [stdout]    |
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]    |
[INFO] [stdout] 12 | const PREFIX: String = "examroom_ai".to_string();
[INFO] [stdout]    |                                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | const PREFIX: String = "examroom_ai";
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ expected `String`, found `&str`
[INFO] [stdout]    |
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]    |
[INFO] [stdout] 12 | const PREFIX: String = "examroom_ai".to_string();
[INFO] [stdout]    |                                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `try_accounts` found for struct `Initialize<'info>` in the current scope
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | #[program]
[INFO] [stdout]     | ^^^^^^^^^^ function or associated item not found in `Initialize<'_>`
[INFO] [stdout] ...
[INFO] [stdout] 200 | pub struct Initialize<'info> {
[INFO] [stdout]     | ---------------------------- function or associated item `try_accounts` not found for this struct
[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 `try_accounts`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `anchor_lang::Accounts`
[INFO] [stdout]             candidate #2: `anchor_lang::Accounts`
[INFO] [stdout]     = note: this error originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Initialize<'_>: anchor_lang::Accounts<'_>` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | #[program]
[INFO] [stdout]     | ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `anchor_lang::Accounts<'_>` is not implemented for `Initialize<'_>`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:200:1
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub struct Initialize<'info> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout]  68 | pub trait Accounts<'info>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout] ...
[INFO] [stdout] 200 | pub struct Initialize<'info> {
[INFO] [stdout]     | ---------------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout] note: required by a bound in `anchor_lang::context::Context::<'a, 'b, 'c, 'info, T>::new`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/context.rs:50:28
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl<'a, 'b, 'c, 'info, T: Accounts<'info>> Context<'a, 'b, 'c, 'info, T> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `Context::<'a, 'b, 'c, 'info, T>::new`
[INFO] [stdout]  51 |     pub fn new(
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:28:32
[INFO] [stdout]    |
[INFO] [stdout] 28 |     airdrop.mint_token_vault = &ctx.accounts.token_program;
[INFO] [stdout]    |     ------------------------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Pubkey`, found `&Program<'_, Token>`
[INFO] [stdout]    |     |
[INFO] [stdout]    |     expected due to the type of this binding
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `anchor_lang::prelude::Pubkey`
[INFO] [stdout]            found reference `&anchor_lang::prelude::Program<'_, Token>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:29:25
[INFO] [stdout]    |
[INFO] [stdout] 29 |     airdrop.authority = &ctx.accounts.from;
[INFO] [stdout]    |     -----------------   ^^^^^^^^^^^^^^^^^^ expected `Pubkey`, found `&Signer<'_>`
[INFO] [stdout]    |     |
[INFO] [stdout]    |     expected due to the type of this binding
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |     airdrop.whitelist = &ctx.accounts.to_ata;
[INFO] [stdout]    |     -----------------   ^^^^^^^^^^^^^^^^^^^^ expected `Pubkey`, found `&Account<'_, TokenAccount>`
[INFO] [stdout]    |     |
[INFO] [stdout]    |     expected due to the type of this binding
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `anchor_lang::prelude::Pubkey`
[INFO] [stdout]            found reference `&anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:31:20
[INFO] [stdout]    |
[INFO] [stdout] 31 |     airdrop.mint = &ctx.accounts.from_ata;
[INFO] [stdout]    |     ------------   ^^^^^^^^^^^^^^^^^^^^^^ expected `Pubkey`, found `&Account<'_, TokenAccount>`
[INFO] [stdout]    |     |
[INFO] [stdout]    |     expected due to the type of this binding
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `anchor_lang::prelude::Pubkey`
[INFO] [stdout]            found reference `&anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `try_accounts` found for struct `Initialize<'info>` in the current scope
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | #[program]
[INFO] [stdout]     | ^^^^^^^^^^ function or associated item not found in `Initialize<'_>`
[INFO] [stdout] ...
[INFO] [stdout] 200 | pub struct Initialize<'info> {
[INFO] [stdout]     | ---------------------------- function or associated item `try_accounts` not found for this struct
[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 `try_accounts`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `anchor_lang::Accounts`
[INFO] [stdout]             candidate #2: `anchor_lang::Accounts`
[INFO] [stdout]     = note: this error originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Initialize<'_>: anchor_lang::Accounts<'_>` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | #[program]
[INFO] [stdout]     | ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `anchor_lang::Accounts<'_>` is not implemented for `Initialize<'_>`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:200:1
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub struct Initialize<'info> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout]  68 | pub trait Accounts<'info>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout] ...
[INFO] [stdout] 200 | pub struct Initialize<'info> {
[INFO] [stdout]     | ---------------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout] note: required by a bound in `anchor_lang::context::Context::<'a, 'b, 'c, 'info, T>::new`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/context.rs:50:28
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl<'a, 'b, 'c, 'info, T: Accounts<'info>> Context<'a, 'b, 'c, 'info, T> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `Context::<'a, 'b, 'c, 'info, T>::new`
[INFO] [stdout]  51 |     pub fn new(
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout]     = note: this error originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:28:32
[INFO] [stdout]    |
[INFO] [stdout] 28 |     airdrop.mint_token_vault = &ctx.accounts.token_program;
[INFO] [stdout]    |     ------------------------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Pubkey`, found `&Program<'_, Token>`
[INFO] [stdout]    |     |
[INFO] [stdout]    |     expected due to the type of this binding
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `anchor_lang::prelude::Pubkey`
[INFO] [stdout]            found reference `&anchor_lang::prelude::Program<'_, Token>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:29:25
[INFO] [stdout]    |
[INFO] [stdout] 29 |     airdrop.authority = &ctx.accounts.from;
[INFO] [stdout]    |     -----------------   ^^^^^^^^^^^^^^^^^^ expected `Pubkey`, found `&Signer<'_>`
[INFO] [stdout]    |     |
[INFO] [stdout]    |     expected due to the type of this binding
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |     airdrop.whitelist = &ctx.accounts.to_ata;
[INFO] [stdout]    |     -----------------   ^^^^^^^^^^^^^^^^^^^^ expected `Pubkey`, found `&Account<'_, TokenAccount>`
[INFO] [stdout]    |     |
[INFO] [stdout]    |     expected due to the type of this binding
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `anchor_lang::prelude::Pubkey`
[INFO] [stdout]            found reference `&anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:31:20
[INFO] [stdout]    |
[INFO] [stdout] 31 |     airdrop.mint = &ctx.accounts.from_ata;
[INFO] [stdout]    |     ------------   ^^^^^^^^^^^^^^^^^^^^^^ expected `Pubkey`, found `&Account<'_, TokenAccount>`
[INFO] [stdout]    |     |
[INFO] [stdout]    |     expected due to the type of this binding
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `anchor_lang::prelude::Pubkey`
[INFO] [stdout]            found reference `&anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `load_init` found for struct `anchor_lang::prelude::Account<'info, T>` in the current scope
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:37:48
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let mut whitelist = ctx.accounts.whitelist.load_init()?;
[INFO] [stdout]    |                                                ^^^^^^^^^ method not found in `anchor_lang::prelude::Account<'_, Whitelist>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `amount` on type `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:134:42
[INFO] [stdout]     |
[INFO] [stdout] 134 |         if ctx.accounts.mint_token_vault.amount == 0 {
[INFO] [stdout]     |                                          ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `load_init` found for struct `anchor_lang::prelude::Account<'info, T>` in the current scope
[INFO] [stdout]   --> programs/examroom_ai_token/src/lib.rs:37:48
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let mut whitelist = ctx.accounts.whitelist.load_init()?;
[INFO] [stdout]    |                                                ^^^^^^^^^ method not found in `anchor_lang::prelude::Account<'_, Whitelist>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `amount` on type `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:134:42
[INFO] [stdout]     |
[INFO] [stdout] 134 |         if ctx.accounts.mint_token_vault.amount == 0 {
[INFO] [stdout]     |                                          ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:169:43
[INFO] [stdout]     |
[INFO] [stdout] 169 |         if *ctx.accounts.mint_token_vault.to_account_info().key != airdrop.mint_token_vault  {
[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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<'_, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:169:43
[INFO] [stdout]     |
[INFO] [stdout] 169 |         if *ctx.accounts.mint_token_vault.to_account_info().key != airdrop.mint_token_vault  {
[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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<'_, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_transfer_to_payer_context` found for mutable reference `&mut SendMintToken<'_>` in the current scope
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:180:18
[INFO] [stdout]     |
[INFO] [stdout] 179 | /             ctx.accounts
[INFO] [stdout] 180 | |                 .into_transfer_to_payer_context()
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `&mut SendMintToken<'_>`
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:492:1
[INFO] [stdout]     |
[INFO] [stdout] 492 | impl anchor_lang::AccountSerialize for Mint {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::Mint: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:484:1
[INFO] [stdout]     |
[INFO] [stdout] 484 | impl anchor_lang::AccountDeserialize for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::Mint: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:494:1
[INFO] [stdout]     |
[INFO] [stdout] 494 | impl anchor_lang::Owner for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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]: no method named `into_transfer_to_payer_context` found for mutable reference `&mut SendMintToken<'_>` in the current scope
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:180:18
[INFO] [stdout]     |
[INFO] [stdout] 179 | /             ctx.accounts
[INFO] [stdout] 180 | |                 .into_transfer_to_payer_context()
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `&mut SendMintToken<'_>`
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:492:1
[INFO] [stdout]     |
[INFO] [stdout] 492 | impl anchor_lang::AccountSerialize for Mint {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::Mint: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:484:1
[INFO] [stdout]     |
[INFO] [stdout] 484 | impl anchor_lang::AccountDeserialize for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::Mint: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:494:1
[INFO] [stdout]     |
[INFO] [stdout] 494 | impl anchor_lang::Owner for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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_info` exists for struct `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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<'_, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>: 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[E0609]: no field `owner` on type `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ unknown field
[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] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::Mint: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:5
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |     ^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:492:1
[INFO] [stdout]     |
[INFO] [stdout] 492 | impl anchor_lang::AccountSerialize for Mint {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:5
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |     ^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:484:1
[INFO] [stdout]     |
[INFO] [stdout] 484 | impl anchor_lang::AccountDeserialize for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:5
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |     ^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:494:1
[INFO] [stdout]     |
[INFO] [stdout] 494 | impl anchor_lang::Owner for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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<'_, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>: 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[E0609]: no field `owner` on type `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ unknown field
[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] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:5
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |     ^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:492:1
[INFO] [stdout]     |
[INFO] [stdout] 492 | impl anchor_lang::AccountSerialize for Mint {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:5
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |     ^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:484:1
[INFO] [stdout]     |
[INFO] [stdout] 484 | impl anchor_lang::AccountDeserialize for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::Mint: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:238:5
[INFO] [stdout]     |
[INFO] [stdout] 238 |     mint: Account<'info, Mint>,                                      // mint for the token used to hit the candy machine
[INFO] [stdout]     |     ^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::Mint`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:494:1
[INFO] [stdout]     |
[INFO] [stdout] 494 | impl anchor_lang::Owner for Mint {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     authority_mint_account: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `anchor_spl::token::Mint: anchor_lang::Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountInfos<'_>`
[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 `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `_: Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[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 `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `anchor_spl::token::Mint: anchor_lang::Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountInfos<'_>`
[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 `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `_: Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[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, anchor_spl::token::Mint>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `anchor_spl::token::Mint: anchor_lang::Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountMetas`
[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, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `_: Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[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, anchor_spl::token::Mint>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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-spl-0.29.0/src/token.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub struct Mint(spl_token::state::Mint);
[INFO] [stdout]     | --------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `anchor_spl::token::Mint: anchor_lang::Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::Mint: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::Mint>: anchor_lang::ToAccountMetas`
[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 `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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 `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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 `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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[E0599]: the method `to_account_metas` exists for struct `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[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-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `_: Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[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<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:251:47
[INFO] [stdout]     |
[INFO] [stdout] 251 |             from: self.authority_mint_account.to_account_info().clone(),
[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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 `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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 `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:252:39
[INFO] [stdout]     |
[INFO] [stdout] 252 |             to: self.mint_token_vault.to_account_info().clone(),
[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:251:47
[INFO] [stdout]     |
[INFO] [stdout] 251 |             from: self.authority_mint_account.to_account_info().clone(),
[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_info` exists for struct `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:252:39
[INFO] [stdout]     |
[INFO] [stdout] 252 |             to: self.mint_token_vault.to_account_info().clone(),
[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfo<'_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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_info` exists for struct `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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<'_, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>: 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 `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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[E0609]: no field `owner` on type `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ unknown field
[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] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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 `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[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.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + 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<'_, anchor_spl::token::TokenAccount>: AsRef<anchor_lang::prelude::AccountInfo<'_>>`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>: 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_infos` exists for struct `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[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-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `_: Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[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 `owner` on type `anchor_lang::prelude::Account<'_, anchor_spl::token::TokenAccount>`
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ unknown field
[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] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     mint_token_vault: Account<'info, TokenAccount>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[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.26.0/src/accounts/account.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     |                                                                      ^^^^^ required by this bound in `Account`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `to_account_metas` exists for struct `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[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-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `_: Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[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 `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[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-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `_: Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountInfos<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountInfos<'_>`
[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 `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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 `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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 `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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[E0599]: the method `to_account_metas` exists for struct `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[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-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- doesn't satisfy `_: AccountDeserialize`, `_: AccountSerialize` or `_: Owner`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/accounts/account.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Account<'info, T: AccountSerialize + AccountDeserialize + Owner + Clone> {
[INFO] [stdout]     | ----------------------------------------------------------------------------------- doesn't satisfy `_: ToAccountMetas`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[INFO] [stdout]             `anchor_spl::token::TokenAccount: anchor_lang::Owner`
[INFO] [stdout]             which is required by `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>: anchor_lang::ToAccountMetas`
[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 `anchor_spl::token::TokenAccount: anchor_lang::AccountSerialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountSerialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl anchor_lang::AccountSerialize for TokenAccount {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:149:1
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub trait AccountSerialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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 `anchor_spl::token::TokenAccount: anchor_lang::AccountDeserialize` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::AccountDeserialize` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:450:1
[INFO] [stdout]     |
[INFO] [stdout] 450 | impl anchor_lang::AccountDeserialize for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub trait AccountDeserialize: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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 `anchor_spl::token::TokenAccount: anchor_lang::Owner` is not satisfied
[INFO] [stdout]    --> programs/examroom_ai_token/src/lib.rs:287:10
[INFO] [stdout]     |
[INFO] [stdout] 287 | #[derive(Accounts)]
[INFO] [stdout]     |          ^^^^^^^^ the trait `anchor_lang::Owner` is not implemented for `anchor_spl::token::TokenAccount`
[INFO] [stdout]     |
[INFO] [stdout] help: trait impl with same name found
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:460:1
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl anchor_lang::Owner for TokenAccount {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: perhaps two different versions of crate `anchor_lang` are being used?
[INFO] [stdout] note: there are multiple different versions of crate `anchor_lang` in the dependency graph
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.26.0/src/lib.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub trait Owner {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^ this is the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: programs/examroom_ai_token/src/lib.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout]   1 | use anchor_lang::prelude::*;
[INFO] [stdout]     |     ----------- one version of crate `anchor_lang` used here, as a direct dependency of the current crate
[INFO] [stdout]   2 | use anchor_spl::token::{Mint, Token, TokenAccount};
[INFO] [stdout]     |     ---------- one version of crate `anchor_lang` used here, as a dependency of crate `anchor_spl`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-spl-0.29.0/src/token.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct TokenAccount(spl_token::state::Account);
[INFO] [stdout]     | ----------------------- this type doesn't implement the required trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anchor-lang-0.29.0/src/lib.rs:99:1
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub trait Accounts<'info, B>: ToAccountMetas + ToAccountInfos<'info> + Sized {
[INFO] [stdout]     | ---------------------------------------------------------------------------- this is the found trait
[INFO] [stdout]     = help: you can use `cargo tree` to explore your dependency tree
[INFO] [stdout]     = note: required for `anchor_lang::prelude::Account<'info, anchor_spl::token::TokenAccount>` 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.26.0/src/lib.rs:91:32
[INFO] [stdout]     |
[INFO] [stdout]  91 | pub trait AccountsExit<'info>: ToAccountMetas + ToAccountInfos<'info> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ required by this bound in `AccountsExit::exit`
[INFO] [stdout]  92 |     /// `program_id` is the currently executing program.
[INFO] [stdout]  93 |     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] Some errors have detailed explanations: E0124, E0277, E0308, E0432, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0124`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `examroom_ai_token` (lib) due to 67 previous errors; 14 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0124, E0277, E0308, E0432, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0124`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `examroom_ai_token` (lib test) due to 67 previous errors; 14 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "ddeb02dfe835ff74d9406a497035226bdde228c1551d75e407016c309e3ce84e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ddeb02dfe835ff74d9406a497035226bdde228c1551d75e407016c309e3ce84e", kill_on_drop: false }`
[INFO] [stdout] ddeb02dfe835ff74d9406a497035226bdde228c1551d75e407016c309e3ce84e
