[INFO] fetching crate ks_constants_rs 0.1.2...
[INFO] checking ks_constants_rs-0.1.2 against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4
[INFO] extracting crate ks_constants_rs 0.1.2 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate ks_constants_rs 0.1.2
[INFO] finished tweaking crates.io crate ks_constants_rs 0.1.2
[INFO] tweaked toml for crates.io crate ks_constants_rs 0.1.2 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ks_constants_rs 0.1.2 on toolchain 52995a223f2919dd3e2e427231db90a257350ded
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ks_constants_rs 0.1.2 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" "+52995a223f2919dd3e2e427231db90a257350ded" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23
[INFO] running `Command { std: "docker" "start" "2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling unicode-ident v1.0.17
[INFO] [stderr]    Compiling libc v0.2.170
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]     Checking unindent v0.2.3
[INFO] [stderr]    Compiling pyo3-build-config v0.27.1
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling pyo3-ffi v0.27.1
[INFO] [stderr]    Compiling pyo3-macros-backend v0.27.1
[INFO] [stderr]    Compiling pyo3 v0.27.1
[INFO] [stderr]    Compiling pyo3-macros v0.27.1
[INFO] [stderr]     Checking ks_constants_rs v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `pyo3::exceptions::PyTypeError`
[INFO] [stdout]  --> src/maps.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use pyo3::exceptions::PyTypeError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pyo3::exceptions::PyTypeError`
[INFO] [stdout]  --> src/maps.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use pyo3::exceptions::PyTypeError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:271:35
[INFO] [stdout]     |
[INFO] [stdout] 271 |     pub fn py_get_index(&self) -> PyResult<usize> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:276:34
[INFO] [stdout]     |
[INFO] [stdout] 276 |     pub fn py_get_team(&self) -> PyResult<Team> {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:285:39
[INFO] [stdout]     |
[INFO] [stdout] 285 |     pub fn py_get_role_type(&self) -> PyResult<Option<RoleType>> {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:290:62
[INFO] [stdout]     |
[INFO] [stdout] 290 |     pub fn py_get_name(&self, language: Option<Language>) -> PyResult<String> {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:298:45
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn py_get_original_author(&self) -> PyResult<Developer> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:303:44
[INFO] [stdout]     |
[INFO] [stdout] 303 |     pub fn py_get_current_author(&self) -> PyResult<Developer> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:308:38
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn py_is_available(&self) -> PyResult<bool> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:104:35
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub fn py_get_index(&self) -> PyResult<usize> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:109:52
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn py_get_name(&self, locale: Language) -> PyResult<Option<&str>> {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:114:42
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn py_get_english_name(&self) -> PyResult<Option<&str>> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:119:51
[INFO] [stdout]     |
[INFO] [stdout] 119 |     pub fn py_get_galaxy_representation(&self) -> PyResult<&str> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:124:41
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub fn py_original_author(&self) -> PyResult<Developer> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:129:40
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn py_current_author(&self) -> PyResult<Option<Developer>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:134:35
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn py_file_path(&self) -> PyResult<&str> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:139:37
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn py_is_disliked(&self) -> PyResult<bool> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:144:35
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn py_is_active(&self) -> PyResult<bool> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:149:36
[INFO] [stdout]     |
[INFO] [stdout] 149 |     pub fn py_is_retired(&self) -> PyResult<bool> {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:154:42
[INFO] [stdout]     |
[INFO] [stdout] 154 |     pub fn py_custom_file_list(&self) -> PyResult<&[String]> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Kerrigan` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     Kerrigan => Role::new(0, "Kerrigan", Some(RoleType::Hunter), HashMap::from([(Language::English, "Kerrigan".to_string())]), Deve...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `kerrigan`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Scientist` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     Scientist => Role::new(1, "Scientist", Some(RoleType::Builder), HashMap::from([(Language::English, "Scientist".to_string())]), ...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `scientist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Dark_Templar` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     Dark_Templar => Role::new(2, "Dark_Templar", Some(RoleType::Builder), HashMap::from([(Language::English, "Dark Templar".to_stri...
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `dark_templar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Ascendant` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     Ascendant => Role::new(3, "Ascendant", Some(RoleType::Builder), HashMap::from([(Language::English, "Ascendant".to_string())]), ...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case: `ascendant`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Spirit` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     Spirit => Role::new(4, "Spirit", Some(RoleType::Builder), HashMap::from([(Language::English, "Spirit".to_string())]), Developer...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `spirit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Ares` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     Ares => Role::new(5, "Ares", Some(RoleType::Builder), HashMap::from([(Language::English, "Ares".to_string())]), Developer::Lumi...
[INFO] [stdout]     |     ^^^^ help: convert the identifier to snake case: `ares`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Prophet` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     Prophet => Role::new(6, "Prophet", Some(RoleType::Support), HashMap::from([(Language::English, "Prophet".to_string())]), Develo...
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `prophet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Stukov` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     Stukov => Role::new(7, "Stukov", Some(RoleType::Builder), HashMap::from([(Language::English, "Stukov".to_string())]), Developer...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `stukov`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Artanis` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     Artanis => Role::new(8, "Artanis", Some(RoleType::Builder), HashMap::from([(Language::English, "Artanis".to_string())]), Develo...
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `artanis`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Zagara` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     Zagara => Role::new(9, "Zagara", Some(RoleType::Defender), HashMap::from([(Language::English, "Zagara".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `zagara`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Engineer` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     Engineer => Role::new(10, "Engineer", Some(RoleType::Builder), HashMap::from([(Language::English, "Engineer".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case: `engineer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Team_Nova` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     Team_Nova => Role::new(11, "Team_Nova", Some(RoleType::Support), HashMap::from([(Language::English, "Team Nova".to_string())]),...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case: `team_nova`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Nomad` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     Nomad => Role::new(12, "Nomad", Some(RoleType::Builder), HashMap::from([(Language::English, "Nomad".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `nomad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Dehaka` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     Dehaka => Role::new(13, "Dehaka", Some(RoleType::Hunter), HashMap::from([(Language::English, "Dehaka".to_string())]), Developer...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `dehaka`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Helios` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     Helios => Role::new(14, "Helios", Some(RoleType::Builder), HashMap::from([(Language::English, "Helios".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `helios`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Random` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     Random => Role::new(15, "Random", None, HashMap::from([(Language::English, "Random".to_string())]), Developer::Luminous, None, ...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `random`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Thakras` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     Thakras => Role::new(16, "Thakras", Some(RoleType::Hunter), HashMap::from([(Language::English, "Thakras".to_string())]), Develo...
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `thakras`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Swann` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     Swann => Role::new(17, "Swann", Some(RoleType::Builder), HashMap::from([(Language::English, "Swann".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case (notice the capitalization): `swann`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Warden` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     Warden => Role::new(18, "Warden", Some(RoleType::Support), HashMap::from([(Language::English, "Warden".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `warden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Selendis` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     Selendis => Role::new(19, "Selendis", Some(RoleType::Builder), HashMap::from([(Language::English, "Selendis".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `selendis`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Niadra` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 149 |     Niadra => Role::new(20, "Niadra", Some(RoleType::Defender), HashMap::from([(Language::English, "Niadra".to_string())]), Develop...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `niadra`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Mira` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     Mira => Role::new(21, "Mira", Some(RoleType::Builder), HashMap::from([(Language::English, "Mira".to_string())]), Developer::Lum...
[INFO] [stdout]     |     ^^^^ help: convert the identifier to snake case: `mira`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Scion` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     Scion => Role::new(22, "Scion", Some(RoleType::Support), HashMap::from([(Language::English, "Scion".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case (notice the capitalization): `scion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Technician` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     Technician => Role::new(23, "Technician", Some(RoleType::Builder), HashMap::from([(Language::English, "Technician".to_string())...
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to snake case: `technician`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Warfield` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     Warfield => Role::new(24, "Warfield", Some(RoleType::Builder), HashMap::from([(Language::English, "Warfield".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `warfield`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Champion` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     Champion => Role::new(25, "Champion", Some(RoleType::Builder), HashMap::from([(Language::English, "Champion".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `champion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Elementalist` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     Elementalist => Role::new(26, "Elementalist", Some(RoleType::Support), HashMap::from([(Language::English, "Elementalist".to_str...
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `elementalist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Brakk` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     Brakk => Role::new(27, "Brakk", Some(RoleType::Hunter), HashMap::from([(Language::English, "Brakk".to_string())]), Developer::F...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `brakk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Glevig` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     Glevig => Role::new(28, "Glevig", Some(RoleType::Defender), HashMap::from([(Language::English, "Glevig".to_string())]), Develop...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `glevig`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Delta_Squad` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     Delta_Squad => Role::new(29, "Delta_Squad", Some(RoleType::Support), HashMap::from([(Language::English, "Delta Squad".to_string...
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `delta_squad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Phaegore` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     Phaegore => Role::new(30, "Phaegore", Some(RoleType::Defender), HashMap::from([(Language::English, "Phaegore".to_string())]), D...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case: `phaegore`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Alarak` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     Alarak => Role::new(31, "Alarak", Some(RoleType::Builder), HashMap::from([(Language::English, "Alarak".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `alarak`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Izsha` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     Izsha => Role::new(32, "Izsha", Some(RoleType::Defender), HashMap::from([(Language::English, "Izsha".to_string())]), Developer:...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case (notice the capitalization): `izsha`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Malus` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     Malus => Role::new(33, "Malus", Some(RoleType::Hunter), HashMap::from([(Language::English, "Malus".to_string())]), Developer::S...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `malus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Kraith` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     Kraith => Role::new(34, "Kraith", Some(RoleType::Hunter), HashMap::from([(Language::English, "Kraith".to_string())]), Developer...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `kraith`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Energizer` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     Energizer => Role::new(35, "Energizer", Some(RoleType::Builder), HashMap::from([(Language::English, "Energizer".to_string())]),...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case: `energizer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Andor` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 |     Andor => Role::new(36, "Andor", Some(RoleType::Builder), HashMap::from([(Language::English, "Andor".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `andor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `DJ` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     DJ => Role::new(37, "DJ", Some(RoleType::Builder), HashMap::from([(Language::English, "DJ".to_string())]), Developer::Sox, None...
[INFO] [stdout]     |     ^^ help: convert the identifier to snake case: `dj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Rattlesnake` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     Rattlesnake => Role::new(38, "Rattlesnake", Some(RoleType::Support), HashMap::from([(Language::English, "Rattlesnake".to_string...
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `rattlesnake`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `SgtHammer` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     SgtHammer => Role::new(39, "SgtHammer", Some(RoleType::Builder), HashMap::from([(Language::English, "SgtHammer".to_string())]),...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case: `sgt_hammer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Chew` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     Chew => Role::new(40, "Chew", Some(RoleType::Support), HashMap::from([(Language::English, "Chew".to_string())]), Developer::Sox...
[INFO] [stdout]     |     ^^^^ help: convert the identifier to snake case (notice the capitalization): `chew`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Aewyn` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     Aewyn => Role::new(41, "Aewyn", Some(RoleType::Builder), HashMap::from([(Language::English, "Aewyn".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `aewyn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Critter_Lord` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     Critter_Lord => Role::new(42, "Critter_Lord", Some(RoleType::Builder), HashMap::from([(Language::English, "Critter Lord".to_str...
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `critter_lord`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Nightingale` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     Nightingale => Role::new(43, "Nightingale", Some(RoleType::Support), HashMap::from([(Language::English, "Nightingale".to_string...
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `nightingale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Sjlerk` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     Sjlerk => Role::new(44, "Sjlerk", Some(RoleType::Support), HashMap::from([(Language::English, "Sjlerk".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `sjlerk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Sophia` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     Sophia => Role::new(45, "Sophia", Some(RoleType::Builder), HashMap::from([(Language::English, "Sophia".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `sophia`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Jinara` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 175 |     Jinara => Role::new(46, "Jinara", Some(RoleType::Builder), HashMap::from([(Language::English, "Jinara".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `jinara`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Sir_Roachington` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     Sir_Roachington => Role::new(47, "Sir_Roachington", Some(RoleType::Defender), HashMap::from([(Language::English, "Sir Roachingt...
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `sir_roachington`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Raszagal` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     Raszagal => Role::new(48, "Raszagal", Some(RoleType::Builder), HashMap::from([(Language::English, "Raszagal".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case: `raszagal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Classic` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:204:5
[INFO] [stdout]     |
[INFO] [stdout] 204 |     Classic => Map::new(
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `classic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Duck_Map` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:216:5
[INFO] [stdout]     |
[INFO] [stdout] 216 |     Duck_Map => Map::new(
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case: `duck_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Zerus_Volcanoes` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:228:5
[INFO] [stdout]     |
[INFO] [stdout] 228 |     Zerus_Volcanoes => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `zerus_volcanoes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Ruins_Of_Imladoon` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 240 |     Ruins_Of_Imladoon => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `ruins_of_imladoon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Four_Seasons` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:252:5
[INFO] [stdout]     |
[INFO] [stdout] 252 |     Four_Seasons => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `four_seasons`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Heart_Of_Amethyst` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     Heart_Of_Amethyst => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `heart_of_amethyst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Vintage_Shores` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:276:5
[INFO] [stdout]     |
[INFO] [stdout] 276 |     Vintage_Shores => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `vintage_shores`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Aiur_Fountains` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 288 |     Aiur_Fountains => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `aiur_fountains`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Kaldir_Cliffs` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 |     Kaldir_Cliffs => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `kaldir_cliffs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Lost_Tides` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:322:5
[INFO] [stdout]     |
[INFO] [stdout] 322 |     Lost_Tides => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to snake case: `lost_tides`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Death_Valley` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:340:5
[INFO] [stdout]     |
[INFO] [stdout] 340 |     Death_Valley => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `death_valley`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Snow_Prism` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:358:5
[INFO] [stdout]     |
[INFO] [stdout] 358 |     Snow_Prism => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to snake case: `snow_prism`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Aduns_Forgotten_Temple` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:376:5
[INFO] [stdout]     |
[INFO] [stdout] 376 |     Aduns_Forgotten_Temple => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `aduns_forgotten_temple`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Maze` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:393:5
[INFO] [stdout]     |
[INFO] [stdout] 393 |     Maze => Map::new(
[INFO] [stdout]     |     ^^^^ help: convert the identifier to snake case: `maze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Canal` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 |     Canal => Map::new(
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case (notice the capitalization): `canal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Sand_Fort` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:427:5
[INFO] [stdout]     |
[INFO] [stdout] 427 |     Sand_Fort => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `sand_fort`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Mar_Sara_Wastelands` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:445:5
[INFO] [stdout]     |
[INFO] [stdout] 445 |     Mar_Sara_Wastelands => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `mar_sara_wastelands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Last_Sanctuary` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:462:5
[INFO] [stdout]     |
[INFO] [stdout] 462 |     Last_Sanctuary => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `last_sanctuary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `No_Hope` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:480:5
[INFO] [stdout]     |
[INFO] [stdout] 480 |     No_Hope => Map::new(
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `no_hope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Celestial_Skylines` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:498:5
[INFO] [stdout]     |
[INFO] [stdout] 498 |     Celestial_Skylines => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `celestial_skylines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:271:35
[INFO] [stdout]     |
[INFO] [stdout] 271 |     pub fn py_get_index(&self) -> PyResult<usize> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:276:34
[INFO] [stdout]     |
[INFO] [stdout] 276 |     pub fn py_get_team(&self) -> PyResult<Team> {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:285:39
[INFO] [stdout]     |
[INFO] [stdout] 285 |     pub fn py_get_role_type(&self) -> PyResult<Option<RoleType>> {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:290:62
[INFO] [stdout]     |
[INFO] [stdout] 290 |     pub fn py_get_name(&self, language: Option<Language>) -> PyResult<String> {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:298:45
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn py_get_original_author(&self) -> PyResult<Developer> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:303:44
[INFO] [stdout]     |
[INFO] [stdout] 303 |     pub fn py_get_current_author(&self) -> PyResult<Developer> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/roles.rs:308:38
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn py_is_available(&self) -> PyResult<bool> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:104:35
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub fn py_get_index(&self) -> PyResult<usize> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:109:52
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn py_get_name(&self, locale: Language) -> PyResult<Option<&str>> {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:114:42
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn py_get_english_name(&self) -> PyResult<Option<&str>> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:119:51
[INFO] [stdout]     |
[INFO] [stdout] 119 |     pub fn py_get_galaxy_representation(&self) -> PyResult<&str> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:124:41
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub fn py_original_author(&self) -> PyResult<Developer> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:129:40
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn py_current_author(&self) -> PyResult<Option<Developer>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:134:35
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn py_file_path(&self) -> PyResult<&str> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:139:37
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn py_is_disliked(&self) -> PyResult<bool> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:144:35
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn py_is_active(&self) -> PyResult<bool> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:149:36
[INFO] [stdout]     |
[INFO] [stdout] 149 |     pub fn py_is_retired(&self) -> PyResult<bool> {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/maps.rs:154:42
[INFO] [stdout]     |
[INFO] [stdout] 154 |     pub fn py_custom_file_list(&self) -> PyResult<&[String]> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Kerrigan` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     Kerrigan => Role::new(0, "Kerrigan", Some(RoleType::Hunter), HashMap::from([(Language::English, "Kerrigan".to_string())]), Deve...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `kerrigan`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Scientist` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     Scientist => Role::new(1, "Scientist", Some(RoleType::Builder), HashMap::from([(Language::English, "Scientist".to_string())]), ...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `scientist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Dark_Templar` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     Dark_Templar => Role::new(2, "Dark_Templar", Some(RoleType::Builder), HashMap::from([(Language::English, "Dark Templar".to_stri...
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `dark_templar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Ascendant` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     Ascendant => Role::new(3, "Ascendant", Some(RoleType::Builder), HashMap::from([(Language::English, "Ascendant".to_string())]), ...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case: `ascendant`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Spirit` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     Spirit => Role::new(4, "Spirit", Some(RoleType::Builder), HashMap::from([(Language::English, "Spirit".to_string())]), Developer...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `spirit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Ares` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     Ares => Role::new(5, "Ares", Some(RoleType::Builder), HashMap::from([(Language::English, "Ares".to_string())]), Developer::Lumi...
[INFO] [stdout]     |     ^^^^ help: convert the identifier to snake case: `ares`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Prophet` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     Prophet => Role::new(6, "Prophet", Some(RoleType::Support), HashMap::from([(Language::English, "Prophet".to_string())]), Develo...
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `prophet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Stukov` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     Stukov => Role::new(7, "Stukov", Some(RoleType::Builder), HashMap::from([(Language::English, "Stukov".to_string())]), Developer...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `stukov`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Artanis` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     Artanis => Role::new(8, "Artanis", Some(RoleType::Builder), HashMap::from([(Language::English, "Artanis".to_string())]), Develo...
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `artanis`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Zagara` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     Zagara => Role::new(9, "Zagara", Some(RoleType::Defender), HashMap::from([(Language::English, "Zagara".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `zagara`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Engineer` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     Engineer => Role::new(10, "Engineer", Some(RoleType::Builder), HashMap::from([(Language::English, "Engineer".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case: `engineer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Team_Nova` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     Team_Nova => Role::new(11, "Team_Nova", Some(RoleType::Support), HashMap::from([(Language::English, "Team Nova".to_string())]),...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case: `team_nova`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Nomad` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     Nomad => Role::new(12, "Nomad", Some(RoleType::Builder), HashMap::from([(Language::English, "Nomad".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `nomad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Dehaka` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     Dehaka => Role::new(13, "Dehaka", Some(RoleType::Hunter), HashMap::from([(Language::English, "Dehaka".to_string())]), Developer...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `dehaka`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Helios` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     Helios => Role::new(14, "Helios", Some(RoleType::Builder), HashMap::from([(Language::English, "Helios".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `helios`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Random` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     Random => Role::new(15, "Random", None, HashMap::from([(Language::English, "Random".to_string())]), Developer::Luminous, None, ...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `random`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Thakras` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     Thakras => Role::new(16, "Thakras", Some(RoleType::Hunter), HashMap::from([(Language::English, "Thakras".to_string())]), Develo...
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `thakras`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Swann` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     Swann => Role::new(17, "Swann", Some(RoleType::Builder), HashMap::from([(Language::English, "Swann".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case (notice the capitalization): `swann`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Warden` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     Warden => Role::new(18, "Warden", Some(RoleType::Support), HashMap::from([(Language::English, "Warden".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `warden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Selendis` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     Selendis => Role::new(19, "Selendis", Some(RoleType::Builder), HashMap::from([(Language::English, "Selendis".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `selendis`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Niadra` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 149 |     Niadra => Role::new(20, "Niadra", Some(RoleType::Defender), HashMap::from([(Language::English, "Niadra".to_string())]), Develop...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `niadra`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Mira` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     Mira => Role::new(21, "Mira", Some(RoleType::Builder), HashMap::from([(Language::English, "Mira".to_string())]), Developer::Lum...
[INFO] [stdout]     |     ^^^^ help: convert the identifier to snake case: `mira`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Scion` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     Scion => Role::new(22, "Scion", Some(RoleType::Support), HashMap::from([(Language::English, "Scion".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case (notice the capitalization): `scion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Technician` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     Technician => Role::new(23, "Technician", Some(RoleType::Builder), HashMap::from([(Language::English, "Technician".to_string())...
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to snake case: `technician`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Warfield` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     Warfield => Role::new(24, "Warfield", Some(RoleType::Builder), HashMap::from([(Language::English, "Warfield".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `warfield`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Champion` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     Champion => Role::new(25, "Champion", Some(RoleType::Builder), HashMap::from([(Language::English, "Champion".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `champion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Elementalist` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     Elementalist => Role::new(26, "Elementalist", Some(RoleType::Support), HashMap::from([(Language::English, "Elementalist".to_str...
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `elementalist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Brakk` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     Brakk => Role::new(27, "Brakk", Some(RoleType::Hunter), HashMap::from([(Language::English, "Brakk".to_string())]), Developer::F...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `brakk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Glevig` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     Glevig => Role::new(28, "Glevig", Some(RoleType::Defender), HashMap::from([(Language::English, "Glevig".to_string())]), Develop...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `glevig`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Delta_Squad` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     Delta_Squad => Role::new(29, "Delta_Squad", Some(RoleType::Support), HashMap::from([(Language::English, "Delta Squad".to_string...
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `delta_squad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Phaegore` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     Phaegore => Role::new(30, "Phaegore", Some(RoleType::Defender), HashMap::from([(Language::English, "Phaegore".to_string())]), D...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case: `phaegore`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Alarak` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     Alarak => Role::new(31, "Alarak", Some(RoleType::Builder), HashMap::from([(Language::English, "Alarak".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `alarak`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ks_constants_rs` (lib) due to 18 previous errors; 70 warnings emitted
[INFO] [stdout] warning: structure field `Izsha` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     Izsha => Role::new(32, "Izsha", Some(RoleType::Defender), HashMap::from([(Language::English, "Izsha".to_string())]), Developer:...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case (notice the capitalization): `izsha`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: structure field `Malus` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     Malus => Role::new(33, "Malus", Some(RoleType::Hunter), HashMap::from([(Language::English, "Malus".to_string())]), Developer::S...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `malus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Kraith` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     Kraith => Role::new(34, "Kraith", Some(RoleType::Hunter), HashMap::from([(Language::English, "Kraith".to_string())]), Developer...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `kraith`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Energizer` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     Energizer => Role::new(35, "Energizer", Some(RoleType::Builder), HashMap::from([(Language::English, "Energizer".to_string())]),...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case: `energizer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Andor` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 |     Andor => Role::new(36, "Andor", Some(RoleType::Builder), HashMap::from([(Language::English, "Andor".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `andor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `DJ` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     DJ => Role::new(37, "DJ", Some(RoleType::Builder), HashMap::from([(Language::English, "DJ".to_string())]), Developer::Sox, None...
[INFO] [stdout]     |     ^^ help: convert the identifier to snake case: `dj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Rattlesnake` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     Rattlesnake => Role::new(38, "Rattlesnake", Some(RoleType::Support), HashMap::from([(Language::English, "Rattlesnake".to_string...
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `rattlesnake`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `SgtHammer` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     SgtHammer => Role::new(39, "SgtHammer", Some(RoleType::Builder), HashMap::from([(Language::English, "SgtHammer".to_string())]),...
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case: `sgt_hammer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Chew` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     Chew => Role::new(40, "Chew", Some(RoleType::Support), HashMap::from([(Language::English, "Chew".to_string())]), Developer::Sox...
[INFO] [stdout]     |     ^^^^ help: convert the identifier to snake case (notice the capitalization): `chew`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Aewyn` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     Aewyn => Role::new(41, "Aewyn", Some(RoleType::Builder), HashMap::from([(Language::English, "Aewyn".to_string())]), Developer::...
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `aewyn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Critter_Lord` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     Critter_Lord => Role::new(42, "Critter_Lord", Some(RoleType::Builder), HashMap::from([(Language::English, "Critter Lord".to_str...
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `critter_lord`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Nightingale` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     Nightingale => Role::new(43, "Nightingale", Some(RoleType::Support), HashMap::from([(Language::English, "Nightingale".to_string...
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `nightingale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Sjlerk` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     Sjlerk => Role::new(44, "Sjlerk", Some(RoleType::Support), HashMap::from([(Language::English, "Sjlerk".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `sjlerk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Sophia` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     Sophia => Role::new(45, "Sophia", Some(RoleType::Builder), HashMap::from([(Language::English, "Sophia".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `sophia`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Jinara` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 175 |     Jinara => Role::new(46, "Jinara", Some(RoleType::Builder), HashMap::from([(Language::English, "Jinara".to_string())]), Develope...
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to snake case: `jinara`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Sir_Roachington` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     Sir_Roachington => Role::new(47, "Sir_Roachington", Some(RoleType::Defender), HashMap::from([(Language::English, "Sir Roachingt...
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `sir_roachington`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Raszagal` should have a snake case name
[INFO] [stdout]    --> src/roles.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     Raszagal => Role::new(48, "Raszagal", Some(RoleType::Builder), HashMap::from([(Language::English, "Raszagal".to_string())]), De...
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case: `raszagal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Classic` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:204:5
[INFO] [stdout]     |
[INFO] [stdout] 204 |     Classic => Map::new(
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `classic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Duck_Map` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:216:5
[INFO] [stdout]     |
[INFO] [stdout] 216 |     Duck_Map => Map::new(
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to snake case: `duck_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Zerus_Volcanoes` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:228:5
[INFO] [stdout]     |
[INFO] [stdout] 228 |     Zerus_Volcanoes => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `zerus_volcanoes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Ruins_Of_Imladoon` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 240 |     Ruins_Of_Imladoon => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `ruins_of_imladoon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Four_Seasons` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:252:5
[INFO] [stdout]     |
[INFO] [stdout] 252 |     Four_Seasons => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `four_seasons`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Heart_Of_Amethyst` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     Heart_Of_Amethyst => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `heart_of_amethyst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Vintage_Shores` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:276:5
[INFO] [stdout]     |
[INFO] [stdout] 276 |     Vintage_Shores => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `vintage_shores`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Aiur_Fountains` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 288 |     Aiur_Fountains => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `aiur_fountains`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Kaldir_Cliffs` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 |     Kaldir_Cliffs => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `kaldir_cliffs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Lost_Tides` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:322:5
[INFO] [stdout]     |
[INFO] [stdout] 322 |     Lost_Tides => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to snake case: `lost_tides`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Death_Valley` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:340:5
[INFO] [stdout]     |
[INFO] [stdout] 340 |     Death_Valley => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `death_valley`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Snow_Prism` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:358:5
[INFO] [stdout]     |
[INFO] [stdout] 358 |     Snow_Prism => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to snake case: `snow_prism`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Aduns_Forgotten_Temple` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:376:5
[INFO] [stdout]     |
[INFO] [stdout] 376 |     Aduns_Forgotten_Temple => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `aduns_forgotten_temple`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Maze` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:393:5
[INFO] [stdout]     |
[INFO] [stdout] 393 |     Maze => Map::new(
[INFO] [stdout]     |     ^^^^ help: convert the identifier to snake case: `maze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Canal` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 |     Canal => Map::new(
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case (notice the capitalization): `canal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Sand_Fort` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:427:5
[INFO] [stdout]     |
[INFO] [stdout] 427 |     Sand_Fort => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `sand_fort`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Mar_Sara_Wastelands` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:445:5
[INFO] [stdout]     |
[INFO] [stdout] 445 |     Mar_Sara_Wastelands => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `mar_sara_wastelands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Last_Sanctuary` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:462:5
[INFO] [stdout]     |
[INFO] [stdout] 462 |     Last_Sanctuary => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `last_sanctuary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `No_Hope` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:480:5
[INFO] [stdout]     |
[INFO] [stdout] 480 |     No_Hope => Map::new(
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `no_hope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Celestial_Skylines` should have a snake case name
[INFO] [stdout]    --> src/maps.rs:498:5
[INFO] [stdout]     |
[INFO] [stdout] 498 |     Celestial_Skylines => Map::new(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `celestial_skylines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ks_constants_rs` (lib test) due to 18 previous errors; 70 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23", kill_on_drop: false }`
[INFO] [stdout] 2b2d454650c12b8359927dd6136e67903db75d89f80e805505d9b9c0b3fa8e23
