[INFO] cloning repository https://github.com/merwaaan/chip8-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/merwaaan/chip8-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmerwaaan%2Fchip8-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmerwaaan%2Fchip8-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c15c55282d1f03463fb539c876d191579948df47 [INFO] testing merwaaan/chip8-rust against beta-2021-01-01 for beta-1.50-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmerwaaan%2Fchip8-rust" "/workspace/builds/worker-10/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-10/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/merwaaan/chip8-rust on toolchain beta-2021-01-01 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-01-01" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/merwaaan/chip8-rust [INFO] finished tweaking git repo https://github.com/merwaaan/chip8-rust [INFO] tweaked toml for git repo https://github.com/merwaaan/chip8-rust written to /workspace/builds/worker-10/source/Cargo.toml [INFO] crate git repo https://github.com/merwaaan/chip8-rust already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-01-01" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded user32-sys v0.1.3 [INFO] [stderr] Downloaded sdl2 v0.31.0 [INFO] [stderr] Downloaded gdi32-sys v0.1.2 [INFO] [stderr] Downloaded x11-dl v2.14.0 [INFO] [stderr] Downloaded sdl2-sys v0.31.0 [INFO] [stderr] Downloaded orbclient v0.3.23 [INFO] [stderr] Downloaded minifb v0.11.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-01-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] b3caf11463dbc789aa9717044bd80ef40ac2499379e59aa8d23640bb7460f272 [INFO] running `Command { std: "docker" "start" "-a" "b3caf11463dbc789aa9717044bd80ef40ac2499379e59aa8d23640bb7460f272", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b3caf11463dbc789aa9717044bd80ef40ac2499379e59aa8d23640bb7460f272", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b3caf11463dbc789aa9717044bd80ef40ac2499379e59aa8d23640bb7460f272", kill_on_drop: false }` [INFO] [stdout] b3caf11463dbc789aa9717044bd80ef40ac2499379e59aa8d23640bb7460f272 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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=warn" "-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" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-01-01" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 4f256dfeacffd36ac1c7e20d105b44168465fd94436f693cbb35d0cbbbcef699 [INFO] running `Command { std: "docker" "start" "-a" "4f256dfeacffd36ac1c7e20d105b44168465fd94436f693cbb35d0cbbbcef699", kill_on_drop: false }` [INFO] [stderr] Compiling x11-dl v2.14.0 [INFO] [stderr] Compiling minifb v0.11.2 [INFO] [stderr] Compiling getrandom v0.1.6 [INFO] [stderr] Compiling time v0.1.42 [INFO] [stderr] Compiling rand_core v0.5.0 [INFO] [stderr] Compiling rand_chacha v0.2.0 [INFO] [stderr] Compiling rand v0.7.0 [INFO] [stderr] Compiling chip8-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/core.rs:193:24 [INFO] [stdout] | [INFO] [stdout] 193 | [8, x, y, 6] => // SHR Vx , Vy [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/core.rs:205:24 [INFO] [stdout] | [INFO] [stdout] 205 | [8, x, y, 0xE] => // SHL Vx, Vy [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/core.rs:261:23 [INFO] [stdout] | [INFO] [stdout] 261 | [0xF, x, 0x0, 0xA] => // LD Vx, K [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mut program_mem = &mut self.mem[0x200 .. 0x200 + program.len()]; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | let mut font_mem = &mut self.mem[0 .. FONT.len()]; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/display.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let mut buffer: Vec = vec![BLACK; WIDTH * HEIGHT]; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `press` [INFO] [stdout] --> src/keyboard.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn press(&mut self, key: u8) [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `release` [INFO] [stdout] --> src/keyboard.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn release(&mut self, key: u8) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Map` that must be used [INFO] [stdout] --> src/display.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | self.buffer.iter_mut().map(|x| *x = BLACK); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: iterators are lazy and do nothing unless consumed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 12.55s [INFO] running `Command { std: "docker" "inspect" "4f256dfeacffd36ac1c7e20d105b44168465fd94436f693cbb35d0cbbbcef699", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f256dfeacffd36ac1c7e20d105b44168465fd94436f693cbb35d0cbbbcef699", kill_on_drop: false }` [INFO] [stdout] 4f256dfeacffd36ac1c7e20d105b44168465fd94436f693cbb35d0cbbbcef699 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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=warn" "-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" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-01-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4402fd08d9b9a1025b65c459c5cdafc0f19e5763509dbeb5b97fdfdaa2d7ad1d [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "4402fd08d9b9a1025b65c459c5cdafc0f19e5763509dbeb5b97fdfdaa2d7ad1d", kill_on_drop: false }` [INFO] [stderr] Compiling chip8-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/core.rs:193:24 [INFO] [stdout] | [INFO] [stdout] 193 | [8, x, y, 6] => // SHR Vx , Vy [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/core.rs:205:24 [INFO] [stdout] | [INFO] [stdout] 205 | [8, x, y, 0xE] => // SHL Vx, Vy [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/core.rs:261:23 [INFO] [stdout] | [INFO] [stdout] 261 | [0xF, x, 0x0, 0xA] => // LD Vx, K [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mut program_mem = &mut self.mem[0x200 .. 0x200 + program.len()]; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | let mut font_mem = &mut self.mem[0 .. FONT.len()]; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/display.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let mut buffer: Vec = vec![BLACK; WIDTH * HEIGHT]; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `press` [INFO] [stdout] --> src/keyboard.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn press(&mut self, key: u8) [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `release` [INFO] [stdout] --> src/keyboard.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn release(&mut self, key: u8) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Map` that must be used [INFO] [stdout] --> src/display.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | self.buffer.iter_mut().map(|x| *x = BLACK); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: iterators are lazy and do nothing unless consumed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.29s [INFO] running `Command { std: "docker" "inspect" "4402fd08d9b9a1025b65c459c5cdafc0f19e5763509dbeb5b97fdfdaa2d7ad1d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4402fd08d9b9a1025b65c459c5cdafc0f19e5763509dbeb5b97fdfdaa2d7ad1d", kill_on_drop: false }` [INFO] [stdout] 4402fd08d9b9a1025b65c459c5cdafc0f19e5763509dbeb5b97fdfdaa2d7ad1d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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=warn" "-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" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-01-01" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 31cec2b1b44525fe235bf3048d965b263fd32effef940a2892d3f35cb017f26b [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "31cec2b1b44525fe235bf3048d965b263fd32effef940a2892d3f35cb017f26b", kill_on_drop: false }` [INFO] [stdout] [INFO] [stderr] warning: unused variable: `y` [INFO] [stdout] running 0 tests [INFO] [stderr] --> src/core.rs:193:24 [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stderr] 193 | [8, x, y, 6] => // SHR Vx , Vy [INFO] [stdout] [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/core.rs:205:24 [INFO] [stderr] | [INFO] [stderr] 205 | [8, x, y, 0xE] => // SHL Vx, Vy [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/core.rs:261:23 [INFO] [stderr] | [INFO] [stderr] 261 | [0xF, x, 0x0, 0xA] => // LD Vx, K [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | let mut program_mem = &mut self.mem[0x200 .. 0x200 + program.len()]; [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | let mut font_mem = &mut self.mem[0 .. FONT.len()]; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/display.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | let mut buffer: Vec = vec![BLACK; WIDTH * HEIGHT]; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `press` [INFO] [stderr] --> src/keyboard.rs:22:12 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn press(&mut self, key: u8) [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `release` [INFO] [stderr] --> src/keyboard.rs:27:12 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn release(&mut self, key: u8) [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Map` that must be used [INFO] [stderr] --> src/display.rs:72:9 [INFO] [stderr] | [INFO] [stderr] 72 | self.buffer.iter_mut().map(|x| *x = BLACK); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: iterators are lazy and do nothing unless consumed [INFO] [stderr] [INFO] [stderr] warning: 9 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/chip8_rust-854046b41742fc55 [INFO] running `Command { std: "docker" "inspect" "31cec2b1b44525fe235bf3048d965b263fd32effef940a2892d3f35cb017f26b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "31cec2b1b44525fe235bf3048d965b263fd32effef940a2892d3f35cb017f26b", kill_on_drop: false }` [INFO] [stdout] 31cec2b1b44525fe235bf3048d965b263fd32effef940a2892d3f35cb017f26b