diff --git a/Cargo.lock b/Cargo.lock index c351575..f34c853 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -160,28 +160,6 @@ version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" -[[package]] -name = "bindgen" -version = "0.64.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4" -dependencies = [ - "bitflags 1.3.2", - "cexpr", - "clang-sys", - "lazy_static", - "lazycell", - "log", - "peeking_take_while", - "proc-macro2", - "quote", - "regex", - "rustc-hash", - "shlex", - "syn 1.0.109", - "which", -] - [[package]] name = "bitflags" version = "1.3.2" @@ -232,15 +210,6 @@ version = "1.0.97" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4" -[[package]] -name = "cexpr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" -dependencies = [ - "nom", -] - [[package]] name = "cfg-if" version = "1.0.0" @@ -260,17 +229,6 @@ dependencies = [ "windows-targets 0.52.5", ] -[[package]] -name = "clang-sys" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1" -dependencies = [ - "glob", - "libc", - "libloading", -] - [[package]] name = "clap" version = "4.5.4" @@ -445,16 +403,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - [[package]] name = "eyre" version = "0.6.12" @@ -588,12 +536,6 @@ version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" -[[package]] -name = "glob" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" - [[package]] name = "gloo-utils" version = "0.1.7" @@ -643,15 +585,6 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "httparse" version = "1.8.0" @@ -837,34 +770,12 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" -[[package]] -name = "lazycell" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" - [[package]] name = "libc" version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libloading" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" -dependencies = [ - "cfg-if", - "windows-targets 0.52.5", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - [[package]] name = "lock_api" version = "0.4.12" @@ -916,12 +827,6 @@ version = "2.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" -[[package]] -name = "minimal-lexical" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" - [[package]] name = "miniz_oxide" version = "0.7.2" @@ -942,16 +847,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "nom" -version = "7.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" -dependencies = [ - "memchr", - "minimal-lexical", -] - [[package]] name = "num" version = "0.4.3" @@ -1065,27 +960,6 @@ version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" -[[package]] -name = "onig" -version = "6.4.0" -source = "git+https://github.com/rust-onig/rust-onig#fa90c0e97e90a056af89f183b23cd417b59ee6a2" -dependencies = [ - "bitflags 1.3.2", - "libc", - "once_cell", - "onig_sys", -] - -[[package]] -name = "onig_sys" -version = "69.8.1" -source = "git+https://github.com/rust-onig/rust-onig#fa90c0e97e90a056af89f183b23cd417b59ee6a2" -dependencies = [ - "bindgen", - "cc", - "pkg-config", -] - [[package]] name = "owo-colors" version = "3.5.0" @@ -1121,12 +995,6 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" -[[package]] -name = "peeking_take_while" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" - [[package]] name = "percent-encoding" version = "2.3.1" @@ -1261,12 +1129,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" -[[package]] -name = "pkg-config" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" - [[package]] name = "powerfmt" version = "0.2.0" @@ -1387,25 +1249,6 @@ version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "0.38.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" -dependencies = [ - "bitflags 2.5.0", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - [[package]] name = "rustversion" version = "1.0.14" @@ -1557,12 +1400,6 @@ dependencies = [ "lazy_static", ] -[[package]] -name = "shlex" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" - [[package]] name = "signal-hook-registry" version = "1.4.2" @@ -2140,18 +1977,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "windows-core" version = "0.52.0" @@ -2310,7 +2135,6 @@ dependencies = [ "indexmap 2.2.6", "num", "num-integer", - "onig", "phf_codegen", "prettyplease", "proc-macro2", diff --git a/Cargo.toml b/Cargo.toml index ba3a694..24b1af4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,7 +18,3 @@ opt-level = "s" lto = true [profile.dev] opt-level = 1 - - -[patch.crates-io] -onig_sys = { git = "https://github.com/rust-onig/rust-onig", revision = "fa90c0e97e90a056af89f183b23cd417b59ee6a2" } diff --git a/ic10emu/src/errors.rs b/ic10emu/src/errors.rs index d297848..7828fcf 100644 --- a/ic10emu/src/errors.rs +++ b/ic10emu/src/errors.rs @@ -7,6 +7,7 @@ use crate::vm::{ }, }; use serde_derive::{Deserialize, Serialize}; +use stationeers_data::templates::ObjectTemplate; use std::error::Error as StdError; use std::fmt::Display; use thiserror::Error; @@ -77,8 +78,8 @@ pub enum TemplateError { NoTemplateForPrefab(Prefab), #[error("no prefab provided")] MissingPrefab, - #[error("incorrect template for concreet impl {0} from prefab {1}")] - IncorrectTemplate(String, Prefab), + #[error("incorrect template for concrete impl {0} from prefab {1}: {2:?}")] + IncorrectTemplate(String, Prefab, ObjectTemplate), #[error("frozen memory size error: {0} is not {1}")] MemorySize(usize, usize) diff --git a/ic10emu/src/interpreter.rs b/ic10emu/src/interpreter.rs index 3559871..fe87755 100644 --- a/ic10emu/src/interpreter.rs +++ b/ic10emu/src/interpreter.rs @@ -46,7 +46,7 @@ pub struct ICInfo { pub defines: BTreeMap, pub labels: BTreeMap, pub state: ICState, - pub yield_instruciton_count: u16, + pub yield_instruction_count: u16, } impl Display for ICState { diff --git a/ic10emu/src/vm/object/stationpedia.rs b/ic10emu/src/vm/object/stationpedia.rs index 6eb2f23..38245ab 100644 --- a/ic10emu/src/vm/object/stationpedia.rs +++ b/ic10emu/src/vm/object/stationpedia.rs @@ -45,6 +45,7 @@ pub fn object_from_frozen( return Err(TemplateError::IncorrectTemplate( "ItemIntegratedCircuit10".to_string(), Prefab::Name("ItemIntegratedCircuit10".to_string()), + template, )); }; @@ -101,7 +102,7 @@ pub fn object_from_frozen( ic: obj .circuit .as_ref() - .map(|circuit| circuit.yield_instruciton_count) + .map(|circuit| circuit.yield_instruction_count) .unwrap_or(0), aliases: obj .circuit diff --git a/ic10emu/src/vm/object/templates.rs b/ic10emu/src/vm/object/templates.rs index 1328c53..7b6f1ba 100644 --- a/ic10emu/src/vm/object/templates.rs +++ b/ic10emu/src/vm/object/templates.rs @@ -70,6 +70,7 @@ pub struct ObjectInfo { pub name: Option, pub id: Option, pub prefab: Option, + pub prefab_hash: Option, pub slots: Option>, pub damage: Option, pub device_pins: Option>, @@ -93,6 +94,7 @@ impl From<&VMObject> for ObjectInfo { name: Some(obj_ref.get_name().value.clone()), id: Some(*obj_ref.get_id()), prefab: Some(obj_ref.get_prefab().value.clone()), + prefab_hash: Some(obj_ref.get_prefab().hash), slots: None, damage: None, device_pins: None, @@ -114,6 +116,14 @@ impl From<&VMObject> for ObjectInfo { impl ObjectInfo { /// Build empty info with a prefab name pub fn with_prefab(prefab: Prefab) -> Self { + let prefab_hash = match &prefab { + Prefab::Name(name) => name + .parse::() + .ok() + .map(|p| p as i32) + .unwrap_or_else(|| const_crc32::crc32(name.as_bytes()) as i32), + Prefab::Hash(hash) => *hash, + }; let prefab_name = match prefab { Prefab::Name(name) => name, Prefab::Hash(hash) => StationpediaPrefab::from_repr(hash) @@ -124,6 +134,7 @@ impl ObjectInfo { name: None, id: None, prefab: Some(prefab_name), + prefab_hash: Some(prefab_hash), slots: None, damage: None, device_pins: None, @@ -141,7 +152,7 @@ impl ObjectInfo { } } - /// update the object info from the relavent implimented interfaces of a dyn object + /// update the object info from the relevant implemented interfaces of a dyn object /// use `ObjectInterfaces::from_object` with a `&dyn Object` (`&*VMObject.borrow()`) /// to obtain the interfaces pub fn update_from_interfaces(&mut self, interfaces: &ObjectInterfaces<'_>) -> &mut Self { @@ -344,7 +355,7 @@ impl ObjectInfo { .map(|(key, val)| (key.clone(), *val)) .collect(), state: circuit.get_state(), - yield_instruciton_count: circuit.get_instructions_since_yield(), + yield_instruction_count: circuit.get_instructions_since_yield(), }); self } @@ -405,6 +416,16 @@ impl FrozenObject { ) }) .transpose()? + .map_or_else( + || { + self.obj_info.prefab_hash.as_ref().map(|hash| { + vm.get_template(Prefab::Hash(*hash)) + .ok_or(TemplateError::NoTemplateForPrefab(Prefab::Hash(*hash))) + }) + }, + |template| Some(Ok(template)), + ) + .transpose()? .ok_or(TemplateError::MissingPrefab) }, |template| Ok(template.clone()), diff --git a/stationeers_data/src/database/prefab_map.rs b/stationeers_data/src/database/prefab_map.rs index 415ad50..7d20098 100644 --- a/stationeers_data/src/database/prefab_map.rs +++ b/stationeers_data/src/database/prefab_map.rs @@ -25,6 +25,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1330388999i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardBlack".into(), prefab_hash: -1330388999i32, @@ -48,6 +49,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1411327657i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardBlue".into(), prefab_hash: -1411327657i32, @@ -71,6 +73,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1412428165i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardBrown".into(), prefab_hash: 1412428165i32, @@ -94,6 +97,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1339479035i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardGray".into(), prefab_hash: -1339479035i32, @@ -117,6 +121,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -374567952i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardGreen".into(), prefab_hash: -374567952i32, @@ -140,6 +145,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 337035771i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardKhaki".into(), prefab_hash: 337035771i32, @@ -163,6 +169,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -332896929i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardOrange".into(), prefab_hash: -332896929i32, @@ -186,6 +193,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 431317557i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardPink".into(), prefab_hash: 431317557i32, @@ -209,6 +217,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 459843265i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardPurple".into(), prefab_hash: 459843265i32, @@ -232,6 +241,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1713748313i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardRed".into(), prefab_hash: -1713748313i32, @@ -255,6 +265,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2079959157i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardWhite".into(), prefab_hash: 2079959157i32, @@ -278,6 +289,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 568932536i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AccessCardYellow".into(), prefab_hash: 568932536i32, @@ -301,6 +313,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1365789392i32, ItemConsumerTemplate { + templateType: "ItemConsumer".into(), prefab: PrefabInfo { prefab_name: "ApplianceChemistryStation".into(), prefab_hash: 1365789392i32, @@ -336,6 +349,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1683849799i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ApplianceDeskLampLeft".into(), prefab_hash: -1683849799i32, @@ -359,6 +373,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1174360780i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ApplianceDeskLampRight".into(), prefab_hash: 1174360780i32, @@ -382,6 +397,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1136173965i32, ItemConsumerTemplate { + templateType: "ItemConsumer".into(), prefab: PrefabInfo { prefab_name: "ApplianceMicrowave".into(), prefab_hash: -1136173965i32, @@ -422,6 +438,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -749191906i32, ItemConsumerTemplate { + templateType: "ItemConsumer".into(), prefab: PrefabInfo { prefab_name: "AppliancePackagingMachine".into(), prefab_hash: -749191906i32, @@ -462,6 +479,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1339716113i32, ItemConsumerTemplate { + templateType: "ItemConsumer".into(), prefab: PrefabInfo { prefab_name: "AppliancePaintMixer".into(), prefab_hash: -1339716113i32, @@ -498,6 +516,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1303038067i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "AppliancePlantGeneticAnalyzer".into(), prefab_hash: -1303038067i32, @@ -525,6 +544,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1094868323i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "AppliancePlantGeneticSplicer".into(), prefab_hash: -1094868323i32, @@ -555,6 +575,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 871432335i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "AppliancePlantGeneticStabilizer".into(), prefab_hash: 871432335i32, @@ -582,6 +603,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1260918085i32, ItemConsumerTemplate { + templateType: "ItemConsumer".into(), prefab: PrefabInfo { prefab_name: "ApplianceReagentProcessor".into(), prefab_hash: 1260918085i32, @@ -623,6 +645,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 142831994i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ApplianceSeedTray".into(), prefab_hash: 142831994i32, @@ -661,6 +684,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1853941363i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ApplianceTabletDock".into(), prefab_hash: 1853941363i32, @@ -687,6 +711,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 221058307i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "AutolathePrinterMod".into(), prefab_hash: 221058307i32, @@ -711,6 +736,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -462415758i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "Battery_Wireless_cell".into(), prefab_hash: -462415758i32, @@ -757,6 +783,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -41519077i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "Battery_Wireless_cell_Big".into(), prefab_hash: -41519077i32, @@ -803,6 +830,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1976947556i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "CardboardBox".into(), prefab_hash: -1976947556i32, @@ -835,6 +863,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1634532552i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeAccessController".into(), prefab_hash: -1634532552i32, @@ -858,6 +887,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1550278665i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeAtmosAnalyser".into(), prefab_hash: -1550278665i32, @@ -882,6 +912,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -932136011i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeConfiguration".into(), prefab_hash: -932136011i32, @@ -905,6 +936,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1462180176i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeElectronicReader".into(), prefab_hash: -1462180176i32, @@ -928,6 +960,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1957063345i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeGPS".into(), prefab_hash: -1957063345i32, @@ -951,6 +984,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 872720793i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeGuide".into(), prefab_hash: 872720793i32, @@ -974,6 +1008,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1116110181i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeMedicalAnalyser".into(), prefab_hash: -1116110181i32, @@ -998,6 +1033,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1606989119i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeNetworkAnalyser".into(), prefab_hash: 1606989119i32, @@ -1022,6 +1058,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1768732546i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeOreScanner".into(), prefab_hash: -1768732546i32, @@ -1046,6 +1083,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1738236580i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeOreScannerColor".into(), prefab_hash: 1738236580i32, @@ -1070,6 +1108,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1101328282i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgePlantAnalyser".into(), prefab_hash: 1101328282i32, @@ -1093,6 +1132,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 81488783i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CartridgeTracker".into(), prefab_hash: 81488783i32, @@ -1116,6 +1156,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1633663176i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardAdvAirlockControl".into(), prefab_hash: 1633663176i32, @@ -1139,6 +1180,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1618019559i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardAirControl".into(), prefab_hash: 1618019559i32, @@ -1163,6 +1205,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 912176135i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardAirlockControl".into(), prefab_hash: 912176135i32, @@ -1187,6 +1230,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -412104504i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardCameraDisplay".into(), prefab_hash: -412104504i32, @@ -1211,6 +1255,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 855694771i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardDoorControl".into(), prefab_hash: 855694771i32, @@ -1235,6 +1280,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -82343730i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardGasDisplay".into(), prefab_hash: -82343730i32, @@ -1259,6 +1305,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1344368806i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardGraphDisplay".into(), prefab_hash: 1344368806i32, @@ -1282,6 +1329,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1633074601i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardHashDisplay".into(), prefab_hash: 1633074601i32, @@ -1305,6 +1353,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1134148135i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardModeControl".into(), prefab_hash: -1134148135i32, @@ -1329,6 +1378,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1923778429i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardPowerControl".into(), prefab_hash: -1923778429i32, @@ -1353,6 +1403,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2044446819i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardShipDisplay".into(), prefab_hash: -2044446819i32, @@ -1377,6 +1428,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2020180320i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "CircuitboardSolarControl".into(), prefab_hash: 2020180320i32, @@ -1401,6 +1453,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1228794916i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "CompositeRollCover".into(), prefab_hash: 1228794916i32, @@ -1450,6 +1503,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 8709219i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "CrateMkII".into(), prefab_hash: 8709219i32, @@ -1486,6 +1540,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1531087544i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "DecayedFood".into(), prefab_hash: 1531087544i32, @@ -1510,6 +1565,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1844430312i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "DeviceLfoVolume".into(), prefab_hash: -1844430312i32, @@ -1572,6 +1628,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1762696475i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "DeviceStepUnit".into(), prefab_hash: 1762696475i32, @@ -1678,6 +1735,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 519913639i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicAirConditioner".into(), prefab_hash: 519913639i32, @@ -1708,6 +1766,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1941079206i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicCrate".into(), prefab_hash: 1941079206i32, @@ -1744,6 +1803,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2085885850i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "DynamicGPR".into(), prefab_hash: -2085885850i32, @@ -1796,6 +1856,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1713611165i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterAir".into(), prefab_hash: -1713611165i32, @@ -1826,6 +1887,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -322413931i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterCarbonDioxide".into(), prefab_hash: -322413931i32, @@ -1856,6 +1918,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1741267161i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterEmpty".into(), prefab_hash: -1741267161i32, @@ -1886,6 +1949,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -817051527i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterFuel".into(), prefab_hash: -817051527i32, @@ -1916,6 +1980,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 121951301i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterNitrogen".into(), prefab_hash: 121951301i32, @@ -1946,6 +2011,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 30727200i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterNitrousOxide".into(), prefab_hash: 30727200i32, @@ -1975,6 +2041,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1360925836i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterOxygen".into(), prefab_hash: 1360925836i32, @@ -2005,6 +2072,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 396065382i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterPollutants".into(), prefab_hash: 396065382i32, @@ -2034,6 +2102,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -8883951i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterRocketFuel".into(), prefab_hash: -8883951i32, @@ -2063,6 +2132,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 108086870i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterVolatiles".into(), prefab_hash: 108086870i32, @@ -2093,6 +2163,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 197293625i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasCanisterWater".into(), prefab_hash: 197293625i32, @@ -2125,6 +2196,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -386375420i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasTankAdvanced".into(), prefab_hash: -386375420i32, @@ -2154,6 +2226,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1264455519i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGasTankAdvancedOxygen".into(), prefab_hash: -1264455519i32, @@ -2183,6 +2256,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -82087220i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicGenerator".into(), prefab_hash: -82087220i32, @@ -2216,6 +2290,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 587726607i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicHydroponics".into(), prefab_hash: 587726607i32, @@ -2255,6 +2330,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -21970188i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "DynamicLight".into(), prefab_hash: -21970188i32, @@ -2309,6 +2385,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1939209112i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicLiquidCanisterEmpty".into(), prefab_hash: -1939209112i32, @@ -2341,6 +2418,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2130739600i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicMKIILiquidCanisterEmpty".into(), prefab_hash: 2130739600i32, @@ -2373,6 +2451,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -319510386i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicMKIILiquidCanisterWater".into(), prefab_hash: -319510386i32, @@ -2405,6 +2484,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 755048589i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "DynamicScrubber".into(), prefab_hash: 755048589i32, @@ -2439,6 +2519,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 106953348i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "DynamicSkeleton".into(), prefab_hash: 106953348i32, @@ -2462,6 +2543,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -311170652i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ElectronicPrinterMod".into(), prefab_hash: -311170652i32, @@ -2486,6 +2568,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -110788403i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ElevatorCarrage".into(), prefab_hash: -110788403i32, @@ -2509,6 +2592,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1730165908i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "EntityChick".into(), prefab_hash: 1730165908i32, @@ -2539,6 +2623,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 334097180i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "EntityChickenBrown".into(), prefab_hash: 334097180i32, @@ -2569,6 +2654,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1010807532i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "EntityChickenWhite".into(), prefab_hash: 1010807532i32, @@ -2599,6 +2685,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 966959649i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "EntityRoosterBlack".into(), prefab_hash: 966959649i32, @@ -2628,6 +2715,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -583103395i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "EntityRoosterBrown".into(), prefab_hash: -583103395i32, @@ -2658,6 +2746,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1517856652i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "Fertilizer".into(), prefab_hash: 1517856652i32, @@ -2682,6 +2771,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -86315541i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "FireArmSMG".into(), prefab_hash: -86315541i32, @@ -2708,6 +2798,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1845441951i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Flag_ODA_10m".into(), prefab_hash: 1845441951i32, @@ -2723,6 +2814,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1159126354i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Flag_ODA_4m".into(), prefab_hash: 1159126354i32, @@ -2738,6 +2830,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1998634960i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Flag_ODA_6m".into(), prefab_hash: 1998634960i32, @@ -2753,6 +2846,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -375156130i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Flag_ODA_8m".into(), prefab_hash: -375156130i32, @@ -2768,6 +2862,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 118685786i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "FlareGun".into(), prefab_hash: 118685786i32, @@ -2797,6 +2892,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1840108251i32, StructureCircuitHolderTemplate { + templateType: "StructureCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "H2Combustor".into(), prefab_hash: 1840108251i32, @@ -2924,6 +3020,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 247238062i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "Handgun".into(), prefab_hash: 247238062i32, @@ -2950,6 +3047,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1254383185i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "HandgunMagazine".into(), prefab_hash: 1254383185i32, @@ -2973,6 +3071,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -857713709i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "HumanSkull".into(), prefab_hash: -857713709i32, @@ -2996,6 +3095,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -73796547i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ImGuiCircuitboardAirlockControl".into(), prefab_hash: -73796547i32, @@ -3019,6 +3119,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -842048328i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemActiveVent".into(), prefab_hash: -842048328i32, @@ -3043,6 +3144,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1871048978i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemAdhesiveInsulation".into(), prefab_hash: 1871048978i32, @@ -3066,6 +3168,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1722785341i32, ItemCircuitHolderTemplate { + templateType: "ItemCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "ItemAdvancedTablet".into(), prefab_hash: 1722785341i32, @@ -3151,6 +3254,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 176446172i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemAlienMushroom".into(), prefab_hash: 176446172i32, @@ -3174,6 +3278,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -9559091i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemAmmoBox".into(), prefab_hash: -9559091i32, @@ -3197,6 +3302,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 201215010i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemAngleGrinder".into(), prefab_hash: 201215010i32, @@ -3249,6 +3355,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1385062886i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemArcWelder".into(), prefab_hash: 1385062886i32, @@ -3301,6 +3408,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1757673317i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemAreaPowerControl".into(), prefab_hash: 1757673317i32, @@ -3325,6 +3433,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 412924554i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemAstroloyIngot".into(), prefab_hash: 412924554i32, @@ -3349,6 +3458,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1662476145i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemAstroloySheets".into(), prefab_hash: -1662476145i32, @@ -3372,6 +3482,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 789015045i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemAuthoringTool".into(), prefab_hash: 789015045i32, @@ -3395,6 +3506,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1731627004i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemAuthoringToolRocketNetwork".into(), prefab_hash: -1731627004i32, @@ -3418,6 +3530,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1262580790i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemBasketBall".into(), prefab_hash: -1262580790i32, @@ -3441,6 +3554,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 700133157i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemBatteryCell".into(), prefab_hash: 700133157i32, @@ -3487,6 +3601,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -459827268i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemBatteryCellLarge".into(), prefab_hash: -459827268i32, @@ -3533,6 +3648,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 544617306i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemBatteryCellNuclear".into(), prefab_hash: 544617306i32, @@ -3579,6 +3695,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1866880307i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemBatteryCharger".into(), prefab_hash: -1866880307i32, @@ -3603,6 +3720,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1008295833i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemBatteryChargerSmall".into(), prefab_hash: 1008295833i32, @@ -3626,6 +3744,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -869869491i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemBeacon".into(), prefab_hash: -869869491i32, @@ -3678,6 +3797,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -831480639i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemBiomass".into(), prefab_hash: -831480639i32, @@ -3702,6 +3822,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 893514943i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemBreadLoaf".into(), prefab_hash: 893514943i32, @@ -3725,6 +3846,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1792787349i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCableAnalyser".into(), prefab_hash: -1792787349i32, @@ -3748,6 +3870,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -466050668i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCableCoil".into(), prefab_hash: -466050668i32, @@ -3772,6 +3895,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2060134443i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCableCoilHeavy".into(), prefab_hash: 2060134443i32, @@ -3796,6 +3920,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 195442047i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCableFuse".into(), prefab_hash: 195442047i32, @@ -3819,6 +3944,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2104175091i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCannedCondensedMilk".into(), prefab_hash: -2104175091i32, @@ -3843,6 +3969,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -999714082i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCannedEdamame".into(), prefab_hash: -999714082i32, @@ -3867,6 +3994,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1344601965i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCannedMushroom".into(), prefab_hash: -1344601965i32, @@ -3891,6 +4019,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1161510063i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCannedPowderedEggs".into(), prefab_hash: 1161510063i32, @@ -3915,6 +4044,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1185552595i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCannedRicePudding".into(), prefab_hash: -1185552595i32, @@ -3939,6 +4069,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 791746840i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCerealBar".into(), prefab_hash: 791746840i32, @@ -3963,6 +4094,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 252561409i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCharcoal".into(), prefab_hash: 252561409i32, @@ -3987,6 +4119,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -772542081i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemChemLightBlue".into(), prefab_hash: -772542081i32, @@ -4011,6 +4144,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -597479390i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemChemLightGreen".into(), prefab_hash: -597479390i32, @@ -4035,6 +4169,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -525810132i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemChemLightRed".into(), prefab_hash: -525810132i32, @@ -4059,6 +4194,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1312166823i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemChemLightWhite".into(), prefab_hash: 1312166823i32, @@ -4083,6 +4219,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1224819963i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemChemLightYellow".into(), prefab_hash: 1224819963i32, @@ -4106,6 +4243,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 234601764i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemChocolateBar".into(), prefab_hash: 234601764i32, @@ -4129,6 +4267,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -261575861i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemChocolateCake".into(), prefab_hash: -261575861i32, @@ -4152,6 +4291,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 860793245i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemChocolateCerealBar".into(), prefab_hash: 860793245i32, @@ -4175,6 +4315,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1724793494i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCoalOre".into(), prefab_hash: 1724793494i32, @@ -4199,6 +4340,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -983091249i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCobaltOre".into(), prefab_hash: -983091249i32, @@ -4223,6 +4365,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 457286516i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCocoaPowder".into(), prefab_hash: 457286516i32, @@ -4246,6 +4389,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 680051921i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCocoaTree".into(), prefab_hash: 680051921i32, @@ -4269,6 +4413,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1800622698i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCoffeeMug".into(), prefab_hash: 1800622698i32, @@ -4292,6 +4437,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1058547521i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemConstantanIngot".into(), prefab_hash: 1058547521i32, @@ -4315,6 +4461,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1715917521i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCookedCondensedMilk".into(), prefab_hash: 1715917521i32, @@ -4338,6 +4485,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1344773148i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCookedCorn".into(), prefab_hash: 1344773148i32, @@ -4361,6 +4509,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1076892658i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCookedMushroom".into(), prefab_hash: -1076892658i32, @@ -4384,6 +4533,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1712264413i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCookedPowderedEggs".into(), prefab_hash: -1712264413i32, @@ -4407,6 +4557,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1849281546i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCookedPumpkin".into(), prefab_hash: 1849281546i32, @@ -4430,6 +4581,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2013539020i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCookedRice".into(), prefab_hash: 2013539020i32, @@ -4453,6 +4605,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1353449022i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCookedSoybean".into(), prefab_hash: 1353449022i32, @@ -4476,6 +4629,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -709086714i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCookedTomato".into(), prefab_hash: -709086714i32, @@ -4499,6 +4653,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -404336834i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCopperIngot".into(), prefab_hash: -404336834i32, @@ -4523,6 +4678,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -707307845i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCopperOre".into(), prefab_hash: -707307845i32, @@ -4547,6 +4703,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 258339687i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCorn".into(), prefab_hash: 258339687i32, @@ -4571,6 +4728,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 545034114i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCornSoup".into(), prefab_hash: 545034114i32, @@ -4595,6 +4753,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1756772618i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCreditCard".into(), prefab_hash: -1756772618i32, @@ -4618,6 +4777,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 215486157i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCropHay".into(), prefab_hash: 215486157i32, @@ -4641,6 +4801,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 856108234i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemCrowbar".into(), prefab_hash: 856108234i32, @@ -4665,6 +4826,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1005843700i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemDataDisk".into(), prefab_hash: 1005843700i32, @@ -4688,6 +4850,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 902565329i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemDirtCanister".into(), prefab_hash: 902565329i32, @@ -4712,6 +4875,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1234745580i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemDirtyOre".into(), prefab_hash: -1234745580i32, @@ -4736,6 +4900,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2124435700i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemDisposableBatteryCharger".into(), prefab_hash: -2124435700i32, @@ -4760,6 +4925,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2009673399i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemDrill".into(), prefab_hash: 2009673399i32, @@ -4813,6 +4979,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1943134693i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemDuctTape".into(), prefab_hash: -1943134693i32, @@ -4837,6 +5004,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1072914031i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemDynamicAirCon".into(), prefab_hash: 1072914031i32, @@ -4860,6 +5028,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -971920158i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemDynamicScrubber".into(), prefab_hash: -971920158i32, @@ -4883,6 +5052,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -524289310i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemEggCarton".into(), prefab_hash: -524289310i32, @@ -4915,6 +5085,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 731250882i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemElectronicParts".into(), prefab_hash: 731250882i32, @@ -4938,6 +5109,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 502280180i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemElectrumIngot".into(), prefab_hash: 502280180i32, @@ -4961,6 +5133,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -351438780i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyAngleGrinder".into(), prefab_hash: -351438780i32, @@ -5013,6 +5186,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1056029600i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyArcWelder".into(), prefab_hash: -1056029600i32, @@ -5065,6 +5239,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 976699731i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyCrowbar".into(), prefab_hash: 976699731i32, @@ -5088,6 +5263,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2052458905i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyDrill".into(), prefab_hash: -2052458905i32, @@ -5140,6 +5316,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1791306431i32, ItemSuitTemplate { + templateType: "ItemSuit".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyEvaSuit".into(), prefab_hash: 1791306431i32, @@ -5180,6 +5357,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1061510408i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyPickaxe".into(), prefab_hash: -1061510408i32, @@ -5203,6 +5381,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 266099983i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyScrewdriver".into(), prefab_hash: 266099983i32, @@ -5226,6 +5405,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 205916793i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencySpaceHelmet".into(), prefab_hash: 205916793i32, @@ -5289,6 +5469,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1661941301i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyToolBelt".into(), prefab_hash: 1661941301i32, @@ -5322,6 +5503,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2102803952i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyWireCutters".into(), prefab_hash: 2102803952i32, @@ -5345,6 +5527,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 162553030i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemEmergencyWrench".into(), prefab_hash: 162553030i32, @@ -5368,6 +5551,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1013818348i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemEmptyCan".into(), prefab_hash: 1013818348i32, @@ -5392,6 +5576,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1677018918i32, ItemSuitTemplate { + templateType: "ItemSuit".into(), prefab: PrefabInfo { prefab_name: "ItemEvaSuit".into(), prefab_hash: 1677018918i32, @@ -5433,6 +5618,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 235361649i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemExplosive".into(), prefab_hash: 235361649i32, @@ -5456,6 +5642,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 892110467i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFern".into(), prefab_hash: 892110467i32, @@ -5480,6 +5667,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -383972371i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFertilizedEgg".into(), prefab_hash: -383972371i32, @@ -5504,6 +5692,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 266654416i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFilterFern".into(), prefab_hash: 266654416i32, @@ -5528,6 +5717,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2011191088i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFlagSmall".into(), prefab_hash: 2011191088i32, @@ -5551,6 +5741,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2107840748i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFlashingLight".into(), prefab_hash: -2107840748i32, @@ -5574,6 +5765,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -838472102i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemFlashlight".into(), prefab_hash: -838472102i32, @@ -5630,6 +5822,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -665995854i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFlour".into(), prefab_hash: -665995854i32, @@ -5654,6 +5847,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1573623434i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFlowerBlue".into(), prefab_hash: -1573623434i32, @@ -5677,6 +5871,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1513337058i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFlowerGreen".into(), prefab_hash: -1513337058i32, @@ -5700,6 +5895,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1411986716i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFlowerOrange".into(), prefab_hash: -1411986716i32, @@ -5723,6 +5919,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -81376085i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFlowerRed".into(), prefab_hash: -81376085i32, @@ -5746,6 +5943,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1712822019i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFlowerYellow".into(), prefab_hash: 1712822019i32, @@ -5769,6 +5967,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -57608687i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFrenchFries".into(), prefab_hash: -57608687i32, @@ -5792,6 +5991,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1371786091i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemFries".into(), prefab_hash: 1371786091i32, @@ -5815,6 +6015,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -767685874i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterCarbonDioxide".into(), prefab_hash: -767685874i32, @@ -5841,6 +6042,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 42280099i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterEmpty".into(), prefab_hash: 42280099i32, @@ -5867,6 +6069,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1014695176i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterFuel".into(), prefab_hash: -1014695176i32, @@ -5893,6 +6096,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2145068424i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterNitrogen".into(), prefab_hash: 2145068424i32, @@ -5919,6 +6123,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1712153401i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterNitrousOxide".into(), prefab_hash: -1712153401i32, @@ -5945,6 +6150,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1152261938i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterOxygen".into(), prefab_hash: -1152261938i32, @@ -5971,6 +6177,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1552586384i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterPollutants".into(), prefab_hash: -1552586384i32, @@ -5997,6 +6204,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -668314371i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterSmart".into(), prefab_hash: -668314371i32, @@ -6023,6 +6231,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -472094806i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterVolatiles".into(), prefab_hash: -472094806i32, @@ -6049,6 +6258,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1854861891i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasCanisterWater".into(), prefab_hash: -1854861891i32, @@ -6077,6 +6287,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1635000764i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterCarbonDioxide".into(), prefab_hash: 1635000764i32, @@ -6101,6 +6312,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -185568964i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterCarbonDioxideInfinite".into(), prefab_hash: -185568964i32, @@ -6125,6 +6337,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1876847024i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterCarbonDioxideL".into(), prefab_hash: 1876847024i32, @@ -6148,6 +6361,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 416897318i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterCarbonDioxideM".into(), prefab_hash: 416897318i32, @@ -6171,6 +6385,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 632853248i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterNitrogen".into(), prefab_hash: 632853248i32, @@ -6195,6 +6410,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 152751131i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterNitrogenInfinite".into(), prefab_hash: 152751131i32, @@ -6219,6 +6435,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1387439451i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterNitrogenL".into(), prefab_hash: -1387439451i32, @@ -6242,6 +6459,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -632657357i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterNitrogenM".into(), prefab_hash: -632657357i32, @@ -6265,6 +6483,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1247674305i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterNitrousOxide".into(), prefab_hash: -1247674305i32, @@ -6288,6 +6507,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -123934842i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterNitrousOxideInfinite".into(), prefab_hash: -123934842i32, @@ -6312,6 +6532,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 465267979i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterNitrousOxideL".into(), prefab_hash: 465267979i32, @@ -6335,6 +6556,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1824284061i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterNitrousOxideM".into(), prefab_hash: 1824284061i32, @@ -6358,6 +6580,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -721824748i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterOxygen".into(), prefab_hash: -721824748i32, @@ -6382,6 +6605,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1055451111i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterOxygenInfinite".into(), prefab_hash: -1055451111i32, @@ -6406,6 +6630,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1217998945i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterOxygenL".into(), prefab_hash: -1217998945i32, @@ -6429,6 +6654,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1067319543i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterOxygenM".into(), prefab_hash: -1067319543i32, @@ -6452,6 +6678,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1915566057i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterPollutants".into(), prefab_hash: 1915566057i32, @@ -6476,6 +6703,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -503738105i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterPollutantsInfinite".into(), prefab_hash: -503738105i32, @@ -6500,6 +6728,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1959564765i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterPollutantsL".into(), prefab_hash: 1959564765i32, @@ -6523,6 +6752,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 63677771i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterPollutantsM".into(), prefab_hash: 63677771i32, @@ -6546,6 +6776,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 15011598i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterVolatiles".into(), prefab_hash: 15011598i32, @@ -6570,6 +6801,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1916176068i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterVolatilesInfinite".into(), prefab_hash: -1916176068i32, @@ -6594,6 +6826,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1255156286i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterVolatilesL".into(), prefab_hash: 1255156286i32, @@ -6617,6 +6850,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1037507240i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterVolatilesM".into(), prefab_hash: 1037507240i32, @@ -6640,6 +6874,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1993197973i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterWater".into(), prefab_hash: -1993197973i32, @@ -6664,6 +6899,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1678456554i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterWaterInfinite".into(), prefab_hash: -1678456554i32, @@ -6688,6 +6924,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2004969680i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterWaterL".into(), prefab_hash: 2004969680i32, @@ -6711,6 +6948,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 8804422i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasFilterWaterM".into(), prefab_hash: 8804422i32, @@ -6734,6 +6972,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1717593480i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasSensor".into(), prefab_hash: 1717593480i32, @@ -6757,6 +6996,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2113012215i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGasTankStorage".into(), prefab_hash: -2113012215i32, @@ -6781,6 +7021,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1588896491i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGlassSheets".into(), prefab_hash: 1588896491i32, @@ -6805,6 +7046,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1068925231i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGlasses".into(), prefab_hash: -1068925231i32, @@ -6828,6 +7070,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 226410516i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGoldIngot".into(), prefab_hash: 226410516i32, @@ -6852,6 +7095,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1348105509i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGoldOre".into(), prefab_hash: -1348105509i32, @@ -6876,6 +7120,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1544275894i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemGrenade".into(), prefab_hash: 1544275894i32, @@ -6900,6 +7145,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 470636008i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemHEMDroidRepairKit".into(), prefab_hash: 470636008i32, @@ -6923,6 +7169,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 374891127i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemHardBackpack".into(), prefab_hash: 374891127i32, @@ -7057,6 +7304,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -412551656i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemHardJetpack".into(), prefab_hash: -412551656i32, @@ -7220,6 +7468,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 900366130i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemHardMiningBackPack".into(), prefab_hash: 900366130i32, @@ -7268,6 +7517,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1758310454i32, ItemSuitCircuitHolderTemplate { + templateType: "ItemSuitCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "ItemHardSuit".into(), prefab_hash: -1758310454i32, @@ -7435,6 +7685,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -84573099i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemHardsuitHelmet".into(), prefab_hash: -84573099i32, @@ -7499,6 +7750,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1579842814i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemHastelloyIngot".into(), prefab_hash: 1579842814i32, @@ -7522,6 +7774,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 299189339i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemHat".into(), prefab_hash: 299189339i32, @@ -7545,6 +7798,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 998653377i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemHighVolumeGasCanisterEmpty".into(), prefab_hash: 998653377i32, @@ -7571,6 +7825,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1117581553i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemHorticultureBelt".into(), prefab_hash: -1117581553i32, @@ -7606,6 +7861,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1193543727i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemHydroponicTray".into(), prefab_hash: -1193543727i32, @@ -7630,6 +7886,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1217489948i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemIce".into(), prefab_hash: 1217489948i32, @@ -7654,6 +7911,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 890106742i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemIgniter".into(), prefab_hash: 890106742i32, @@ -7678,6 +7936,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -787796599i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemInconelIngot".into(), prefab_hash: -787796599i32, @@ -7701,6 +7960,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 897176943i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemInsulation".into(), prefab_hash: 897176943i32, @@ -7725,6 +7985,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -744098481i32, ItemLogicMemoryTemplate { + templateType: "ItemLogicMemory".into(), prefab: PrefabInfo { prefab_name: "ItemIntegratedCircuit10".into(), prefab_hash: -744098481i32, @@ -7767,6 +8028,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -297990285i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemInvarIngot".into(), prefab_hash: -297990285i32, @@ -7790,6 +8052,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1225836666i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemIronFrames".into(), prefab_hash: 1225836666i32, @@ -7813,6 +8076,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1301215609i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemIronIngot".into(), prefab_hash: -1301215609i32, @@ -7837,6 +8101,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1758427767i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemIronOre".into(), prefab_hash: 1758427767i32, @@ -7861,6 +8126,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -487378546i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemIronSheets".into(), prefab_hash: -487378546i32, @@ -7884,6 +8150,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1969189000i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemJetpackBasic".into(), prefab_hash: 1969189000i32, @@ -8009,6 +8276,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 496830914i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAIMeE".into(), prefab_hash: 496830914i32, @@ -8032,6 +8300,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 513258369i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAccessBridge".into(), prefab_hash: 513258369i32, @@ -8055,6 +8324,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1431998347i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAdvancedComposter".into(), prefab_hash: -1431998347i32, @@ -8078,6 +8348,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -616758353i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAdvancedFurnace".into(), prefab_hash: -616758353i32, @@ -8101,6 +8372,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -598545233i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAdvancedPackagingMachine".into(), prefab_hash: -598545233i32, @@ -8124,6 +8396,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 964043875i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAirlock".into(), prefab_hash: 964043875i32, @@ -8147,6 +8420,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 682546947i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAirlockGate".into(), prefab_hash: 682546947i32, @@ -8170,6 +8444,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -98995857i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitArcFurnace".into(), prefab_hash: -98995857i32, @@ -8193,6 +8468,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1222286371i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAtmospherics".into(), prefab_hash: 1222286371i32, @@ -8216,6 +8492,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1668815415i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAutoMinerSmall".into(), prefab_hash: 1668815415i32, @@ -8239,6 +8516,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1753893214i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAutolathe".into(), prefab_hash: -1753893214i32, @@ -8262,6 +8540,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1931958659i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitAutomatedOven".into(), prefab_hash: -1931958659i32, @@ -8285,6 +8564,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 148305004i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitBasket".into(), prefab_hash: 148305004i32, @@ -8308,6 +8588,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1406656973i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitBattery".into(), prefab_hash: 1406656973i32, @@ -8331,6 +8612,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -21225041i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitBatteryLarge".into(), prefab_hash: -21225041i32, @@ -8354,6 +8636,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 249073136i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitBeacon".into(), prefab_hash: 249073136i32, @@ -8377,6 +8660,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1241256797i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitBeds".into(), prefab_hash: -1241256797i32, @@ -8400,6 +8684,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1755116240i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitBlastDoor".into(), prefab_hash: -1755116240i32, @@ -8423,6 +8708,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 578182956i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitCentrifuge".into(), prefab_hash: 578182956i32, @@ -8446,6 +8732,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1394008073i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitChairs".into(), prefab_hash: -1394008073i32, @@ -8469,6 +8756,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1025254665i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitChute".into(), prefab_hash: 1025254665i32, @@ -8492,6 +8780,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -876560854i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitChuteUmbilical".into(), prefab_hash: -876560854i32, @@ -8515,6 +8804,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1470820996i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitCompositeCladding".into(), prefab_hash: -1470820996i32, @@ -8538,6 +8828,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1182412869i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitCompositeFloorGrating".into(), prefab_hash: 1182412869i32, @@ -8561,6 +8852,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1990225489i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitComputer".into(), prefab_hash: 1990225489i32, @@ -8584,6 +8876,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1241851179i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitConsole".into(), prefab_hash: -1241851179i32, @@ -8607,6 +8900,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 429365598i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitCrate".into(), prefab_hash: 429365598i32, @@ -8630,6 +8924,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1585956426i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitCrateMkII".into(), prefab_hash: -1585956426i32, @@ -8653,6 +8948,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -551612946i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitCrateMount".into(), prefab_hash: -551612946i32, @@ -8676,6 +8972,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -545234195i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitCryoTube".into(), prefab_hash: -545234195i32, @@ -8699,6 +8996,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1935075707i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDeepMiner".into(), prefab_hash: -1935075707i32, @@ -8722,6 +9020,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 77421200i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDockingPort".into(), prefab_hash: 77421200i32, @@ -8745,6 +9044,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 168615924i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDoor".into(), prefab_hash: 168615924i32, @@ -8768,6 +9068,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1743663875i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDrinkingFountain".into(), prefab_hash: -1743663875i32, @@ -8791,6 +9092,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1061945368i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDynamicCanister".into(), prefab_hash: -1061945368i32, @@ -8814,6 +9116,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1533501495i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDynamicGasTankAdvanced".into(), prefab_hash: 1533501495i32, @@ -8837,6 +9140,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -732720413i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDynamicGenerator".into(), prefab_hash: -732720413i32, @@ -8860,6 +9164,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1861154222i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDynamicHydroponics".into(), prefab_hash: -1861154222i32, @@ -8883,6 +9188,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 375541286i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDynamicLiquidCanister".into(), prefab_hash: 375541286i32, @@ -8906,6 +9212,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -638019974i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitDynamicMKIILiquidCanister".into(), prefab_hash: -638019974i32, @@ -8929,6 +9236,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1603046970i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitElectricUmbilical".into(), prefab_hash: 1603046970i32, @@ -8952,6 +9260,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1181922382i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitElectronicsPrinter".into(), prefab_hash: -1181922382i32, @@ -8975,6 +9284,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -945806652i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitElevator".into(), prefab_hash: -945806652i32, @@ -8998,6 +9308,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 755302726i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitEngineLarge".into(), prefab_hash: 755302726i32, @@ -9021,6 +9332,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1969312177i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitEngineMedium".into(), prefab_hash: 1969312177i32, @@ -9044,6 +9356,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 19645163i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitEngineSmall".into(), prefab_hash: 19645163i32, @@ -9067,6 +9380,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1587787610i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitEvaporationChamber".into(), prefab_hash: 1587787610i32, @@ -9090,6 +9404,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1701764190i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitFlagODA".into(), prefab_hash: 1701764190i32, @@ -9113,6 +9428,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1168199498i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitFridgeBig".into(), prefab_hash: -1168199498i32, @@ -9136,6 +9452,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1661226524i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitFridgeSmall".into(), prefab_hash: 1661226524i32, @@ -9159,6 +9476,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -806743925i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitFurnace".into(), prefab_hash: -806743925i32, @@ -9182,6 +9500,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1162905029i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitFurniture".into(), prefab_hash: 1162905029i32, @@ -9205,6 +9524,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -366262681i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitFuselage".into(), prefab_hash: -366262681i32, @@ -9228,6 +9548,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 377745425i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitGasGenerator".into(), prefab_hash: 377745425i32, @@ -9251,6 +9572,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1867280568i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitGasUmbilical".into(), prefab_hash: -1867280568i32, @@ -9274,6 +9596,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 206848766i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitGovernedGasRocketEngine".into(), prefab_hash: 206848766i32, @@ -9297,6 +9620,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2140672772i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitGroundTelescope".into(), prefab_hash: -2140672772i32, @@ -9320,6 +9644,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 341030083i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitGrowLight".into(), prefab_hash: 341030083i32, @@ -9343,6 +9668,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1022693454i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitHarvie".into(), prefab_hash: -1022693454i32, @@ -9366,6 +9692,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1710540039i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitHeatExchanger".into(), prefab_hash: -1710540039i32, @@ -9389,6 +9716,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 844391171i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitHorizontalAutoMiner".into(), prefab_hash: 844391171i32, @@ -9412,6 +9740,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2098556089i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitHydraulicPipeBender".into(), prefab_hash: -2098556089i32, @@ -9435,6 +9764,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -927931558i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitHydroponicAutomated".into(), prefab_hash: -927931558i32, @@ -9458,6 +9788,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2057179799i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitHydroponicStation".into(), prefab_hash: 2057179799i32, @@ -9481,6 +9812,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 288111533i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitIceCrusher".into(), prefab_hash: 288111533i32, @@ -9504,6 +9836,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2067655311i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitInsulatedLiquidPipe".into(), prefab_hash: 2067655311i32, @@ -9527,6 +9860,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 452636699i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitInsulatedPipe".into(), prefab_hash: 452636699i32, @@ -9550,6 +9884,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -27284803i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitInsulatedPipeUtility".into(), prefab_hash: -27284803i32, @@ -9573,6 +9908,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1831558953i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitInsulatedPipeUtilityLiquid".into(), prefab_hash: -1831558953i32, @@ -9596,6 +9932,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1935945891i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitInteriorDoors".into(), prefab_hash: 1935945891i32, @@ -9619,6 +9956,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 489494578i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLadder".into(), prefab_hash: 489494578i32, @@ -9642,6 +9980,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1817007843i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLandingPadAtmos".into(), prefab_hash: 1817007843i32, @@ -9665,6 +10004,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 293581318i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLandingPadBasic".into(), prefab_hash: 293581318i32, @@ -9688,6 +10028,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1267511065i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLandingPadWaypoint".into(), prefab_hash: -1267511065i32, @@ -9711,6 +10052,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 450164077i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLargeDirectHeatExchanger".into(), prefab_hash: 450164077i32, @@ -9734,6 +10076,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 847430620i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLargeExtendableRadiator".into(), prefab_hash: 847430620i32, @@ -9757,6 +10100,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2039971217i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLargeSatelliteDish".into(), prefab_hash: -2039971217i32, @@ -9780,6 +10124,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1854167549i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLaunchMount".into(), prefab_hash: -1854167549i32, @@ -9803,6 +10148,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -174523552i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLaunchTower".into(), prefab_hash: -174523552i32, @@ -9826,6 +10172,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1951126161i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLiquidRegulator".into(), prefab_hash: 1951126161i32, @@ -9849,6 +10196,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -799849305i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLiquidTank".into(), prefab_hash: -799849305i32, @@ -9872,6 +10220,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 617773453i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLiquidTankInsulated".into(), prefab_hash: 617773453i32, @@ -9895,6 +10244,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1805020897i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLiquidTurboVolumePump".into(), prefab_hash: -1805020897i32, @@ -9918,6 +10268,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1571996765i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLiquidUmbilical".into(), prefab_hash: 1571996765i32, @@ -9941,6 +10292,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 882301399i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLocker".into(), prefab_hash: 882301399i32, @@ -9964,6 +10316,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1512322581i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLogicCircuit".into(), prefab_hash: 1512322581i32, @@ -9987,6 +10340,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1997293610i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLogicInputOutput".into(), prefab_hash: 1997293610i32, @@ -10010,6 +10364,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2098214189i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLogicMemory".into(), prefab_hash: -2098214189i32, @@ -10033,6 +10388,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 220644373i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLogicProcessor".into(), prefab_hash: 220644373i32, @@ -10056,6 +10412,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 124499454i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLogicSwitch".into(), prefab_hash: 124499454i32, @@ -10079,6 +10436,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1005397063i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitLogicTransmitter".into(), prefab_hash: 1005397063i32, @@ -10102,6 +10460,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -344968335i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitMotherShipCore".into(), prefab_hash: -344968335i32, @@ -10125,6 +10484,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2038889137i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitMusicMachines".into(), prefab_hash: -2038889137i32, @@ -10148,6 +10508,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1752768283i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPassiveLargeRadiatorGas".into(), prefab_hash: -1752768283i32, @@ -10171,6 +10532,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1453961898i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPassiveLargeRadiatorLiquid".into(), prefab_hash: 1453961898i32, @@ -10194,6 +10556,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 636112787i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPassthroughHeatExchanger".into(), prefab_hash: 636112787i32, @@ -10217,6 +10580,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2062364768i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPictureFrame".into(), prefab_hash: -2062364768i32, @@ -10240,6 +10604,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1619793705i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPipe".into(), prefab_hash: -1619793705i32, @@ -10263,6 +10628,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1166461357i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPipeLiquid".into(), prefab_hash: -1166461357i32, @@ -10286,6 +10652,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -827125300i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPipeOrgan".into(), prefab_hash: -827125300i32, @@ -10309,6 +10676,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 920411066i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPipeRadiator".into(), prefab_hash: 920411066i32, @@ -10332,6 +10700,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1697302609i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPipeRadiatorLiquid".into(), prefab_hash: -1697302609i32, @@ -10355,6 +10724,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1934508338i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPipeUtility".into(), prefab_hash: 1934508338i32, @@ -10378,6 +10748,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 595478589i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPipeUtilityLiquid".into(), prefab_hash: 595478589i32, @@ -10401,6 +10772,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 119096484i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPlanter".into(), prefab_hash: 119096484i32, @@ -10424,6 +10796,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1041148999i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPortablesConnector".into(), prefab_hash: 1041148999i32, @@ -10447,6 +10820,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 291368213i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPowerTransmitter".into(), prefab_hash: 291368213i32, @@ -10470,6 +10844,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -831211676i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPowerTransmitterOmni".into(), prefab_hash: -831211676i32, @@ -10493,6 +10868,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2015439334i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPoweredVent".into(), prefab_hash: 2015439334i32, @@ -10516,6 +10892,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -121514007i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPressureFedGasEngine".into(), prefab_hash: -121514007i32, @@ -10539,6 +10916,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -99091572i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPressureFedLiquidEngine".into(), prefab_hash: -99091572i32, @@ -10562,6 +10940,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 123504691i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPressurePlate".into(), prefab_hash: 123504691i32, @@ -10585,6 +10964,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1921918951i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitPumpedLiquidEngine".into(), prefab_hash: 1921918951i32, @@ -10608,6 +10988,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 750176282i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRailing".into(), prefab_hash: 750176282i32, @@ -10631,6 +11012,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 849148192i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRecycler".into(), prefab_hash: 849148192i32, @@ -10654,6 +11036,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1181371795i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRegulator".into(), prefab_hash: 1181371795i32, @@ -10677,6 +11060,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1459985302i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitReinforcedWindows".into(), prefab_hash: 1459985302i32, @@ -10700,6 +11084,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 724776762i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitResearchMachine".into(), prefab_hash: 724776762i32, @@ -10723,6 +11108,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1574688481i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRespawnPointWallMounted".into(), prefab_hash: 1574688481i32, @@ -10746,6 +11132,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1396305045i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketAvionics".into(), prefab_hash: 1396305045i32, @@ -10769,6 +11156,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -314072139i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketBattery".into(), prefab_hash: -314072139i32, @@ -10792,6 +11180,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 479850239i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketCargoStorage".into(), prefab_hash: 479850239i32, @@ -10815,6 +11204,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -303008602i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketCelestialTracker".into(), prefab_hash: -303008602i32, @@ -10838,6 +11228,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 721251202i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketCircuitHousing".into(), prefab_hash: 721251202i32, @@ -10861,6 +11252,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1256996603i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketDatalink".into(), prefab_hash: -1256996603i32, @@ -10884,6 +11276,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1629347579i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketGasFuelTank".into(), prefab_hash: -1629347579i32, @@ -10907,6 +11300,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2032027950i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketLiquidFuelTank".into(), prefab_hash: 2032027950i32, @@ -10930,6 +11324,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -636127860i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketManufactory".into(), prefab_hash: -636127860i32, @@ -10953,6 +11348,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -867969909i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketMiner".into(), prefab_hash: -867969909i32, @@ -10976,6 +11372,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1753647154i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketScanner".into(), prefab_hash: 1753647154i32, @@ -10999,6 +11396,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -932335800i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRocketTransformerSmall".into(), prefab_hash: -932335800i32, @@ -11022,6 +11420,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1827215803i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRoverFrame".into(), prefab_hash: 1827215803i32, @@ -11045,6 +11444,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 197243872i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitRoverMKI".into(), prefab_hash: 197243872i32, @@ -11068,6 +11468,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 323957548i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSDBHopper".into(), prefab_hash: 323957548i32, @@ -11091,6 +11492,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 178422810i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSatelliteDish".into(), prefab_hash: 178422810i32, @@ -11114,6 +11516,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 578078533i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSecurityPrinter".into(), prefab_hash: 578078533i32, @@ -11137,6 +11540,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1776897113i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSensor".into(), prefab_hash: -1776897113i32, @@ -11160,6 +11564,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 735858725i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitShower".into(), prefab_hash: 735858725i32, @@ -11183,6 +11588,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 529996327i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSign".into(), prefab_hash: 529996327i32, @@ -11206,6 +11612,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 326752036i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSleeper".into(), prefab_hash: 326752036i32, @@ -11229,6 +11636,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1332682164i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSmallDirectHeatExchanger".into(), prefab_hash: -1332682164i32, @@ -11252,6 +11660,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1960952220i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSmallSatelliteDish".into(), prefab_hash: 1960952220i32, @@ -11275,6 +11684,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1924492105i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSolarPanel".into(), prefab_hash: -1924492105i32, @@ -11298,6 +11708,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 844961456i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSolarPanelBasic".into(), prefab_hash: 844961456i32, @@ -11321,6 +11732,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -528695432i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSolarPanelBasicReinforced".into(), prefab_hash: -528695432i32, @@ -11344,6 +11756,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -364868685i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSolarPanelReinforced".into(), prefab_hash: -364868685i32, @@ -11367,6 +11780,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1293995736i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSolidGenerator".into(), prefab_hash: 1293995736i32, @@ -11390,6 +11804,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 969522478i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSorter".into(), prefab_hash: 969522478i32, @@ -11413,6 +11828,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -126038526i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSpeaker".into(), prefab_hash: -126038526i32, @@ -11436,6 +11852,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1013244511i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitStacker".into(), prefab_hash: 1013244511i32, @@ -11459,6 +11876,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 170878959i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitStairs".into(), prefab_hash: 170878959i32, @@ -11482,6 +11900,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1868555784i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitStairwell".into(), prefab_hash: -1868555784i32, @@ -11505,6 +11924,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2133035682i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitStandardChute".into(), prefab_hash: 2133035682i32, @@ -11528,6 +11948,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1821571150i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitStirlingEngine".into(), prefab_hash: -1821571150i32, @@ -11551,6 +11972,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1088892825i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitSuitStorage".into(), prefab_hash: 1088892825i32, @@ -11574,6 +11996,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1361598922i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitTables".into(), prefab_hash: -1361598922i32, @@ -11597,6 +12020,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 771439840i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitTank".into(), prefab_hash: 771439840i32, @@ -11620,6 +12044,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1021053608i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitTankInsulated".into(), prefab_hash: 1021053608i32, @@ -11643,6 +12068,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 529137748i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitToolManufactory".into(), prefab_hash: 529137748i32, @@ -11666,6 +12092,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -453039435i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitTransformer".into(), prefab_hash: -453039435i32, @@ -11689,6 +12116,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 665194284i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitTransformerSmall".into(), prefab_hash: 665194284i32, @@ -11712,6 +12140,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1590715731i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitTurbineGenerator".into(), prefab_hash: -1590715731i32, @@ -11735,6 +12164,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1248429712i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitTurboVolumePump".into(), prefab_hash: -1248429712i32, @@ -11758,6 +12188,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1798044015i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitUprightWindTurbine".into(), prefab_hash: -1798044015i32, @@ -11781,6 +12212,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2038384332i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitVendingMachine".into(), prefab_hash: -2038384332i32, @@ -11804,6 +12236,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1867508561i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitVendingMachineRefrigerated".into(), prefab_hash: -1867508561i32, @@ -11827,6 +12260,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1826855889i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWall".into(), prefab_hash: -1826855889i32, @@ -11850,6 +12284,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1625214531i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWallArch".into(), prefab_hash: 1625214531i32, @@ -11873,6 +12308,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -846838195i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWallFlat".into(), prefab_hash: -846838195i32, @@ -11896,6 +12332,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -784733231i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWallGeometry".into(), prefab_hash: -784733231i32, @@ -11919,6 +12356,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -524546923i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWallIron".into(), prefab_hash: -524546923i32, @@ -11942,6 +12380,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -821868990i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWallPadded".into(), prefab_hash: -821868990i32, @@ -11965,6 +12404,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 159886536i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWaterBottleFiller".into(), prefab_hash: 159886536i32, @@ -11988,6 +12428,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 611181283i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWaterPurifier".into(), prefab_hash: 611181283i32, @@ -12011,6 +12452,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 337505889i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWeatherStation".into(), prefab_hash: 337505889i32, @@ -12034,6 +12476,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -868916503i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWindTurbine".into(), prefab_hash: -868916503i32, @@ -12057,6 +12500,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1779979754i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemKitWindowShutter".into(), prefab_hash: 1779979754i32, @@ -12080,6 +12524,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -743968726i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemLabeller".into(), prefab_hash: -743968726i32, @@ -12133,6 +12578,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 141535121i32, ItemCircuitHolderTemplate { + templateType: "ItemCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "ItemLaptop".into(), prefab_hash: 141535121i32, @@ -12208,6 +12654,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2134647745i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLeadIngot".into(), prefab_hash: 2134647745i32, @@ -12231,6 +12678,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -190236170i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLeadOre".into(), prefab_hash: -190236170i32, @@ -12255,6 +12703,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1949076595i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLightSword".into(), prefab_hash: 1949076595i32, @@ -12278,6 +12727,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -185207387i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLiquidCanisterEmpty".into(), prefab_hash: -185207387i32, @@ -12306,6 +12756,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 777684475i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLiquidCanisterSmart".into(), prefab_hash: 777684475i32, @@ -12334,6 +12785,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2036225202i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLiquidDrain".into(), prefab_hash: 2036225202i32, @@ -12357,6 +12809,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 226055671i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLiquidPipeAnalyzer".into(), prefab_hash: 226055671i32, @@ -12380,6 +12833,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -248475032i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLiquidPipeHeater".into(), prefab_hash: -248475032i32, @@ -12404,6 +12858,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2126113312i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLiquidPipeValve".into(), prefab_hash: -2126113312i32, @@ -12428,6 +12883,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2106280569i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLiquidPipeVolumePump".into(), prefab_hash: -2106280569i32, @@ -12451,6 +12907,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2037427578i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemLiquidTankStorage".into(), prefab_hash: 2037427578i32, @@ -12475,6 +12932,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 240174650i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemMKIIAngleGrinder".into(), prefab_hash: 240174650i32, @@ -12528,6 +12986,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2061979347i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemMKIIArcWelder".into(), prefab_hash: -2061979347i32, @@ -12580,6 +13039,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1440775434i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMKIICrowbar".into(), prefab_hash: 1440775434i32, @@ -12604,6 +13064,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 324791548i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemMKIIDrill".into(), prefab_hash: 324791548i32, @@ -12657,6 +13118,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 388774906i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMKIIDuctTape".into(), prefab_hash: 388774906i32, @@ -12681,6 +13143,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1875271296i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemMKIIMiningDrill".into(), prefab_hash: -1875271296i32, @@ -12740,6 +13203,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2015613246i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMKIIScrewdriver".into(), prefab_hash: -2015613246i32, @@ -12764,6 +13228,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -178893251i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMKIIWireCutters".into(), prefab_hash: -178893251i32, @@ -12788,6 +13253,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1862001680i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMKIIWrench".into(), prefab_hash: 1862001680i32, @@ -12812,6 +13278,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1399098998i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemMarineBodyArmor".into(), prefab_hash: 1399098998i32, @@ -12842,6 +13309,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1073631646i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemMarineHelmet".into(), prefab_hash: 1073631646i32, @@ -12868,6 +13336,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1327248310i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMilk".into(), prefab_hash: 1327248310i32, @@ -12892,6 +13361,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1650383245i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemMiningBackPack".into(), prefab_hash: -1650383245i32, @@ -12937,6 +13407,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -676435305i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemMiningBelt".into(), prefab_hash: -676435305i32, @@ -12973,6 +13444,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1470787934i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemMiningBeltMKII".into(), prefab_hash: 1470787934i32, @@ -13131,6 +13603,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 15829510i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMiningCharge".into(), prefab_hash: 15829510i32, @@ -13154,6 +13627,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1055173191i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemMiningDrill".into(), prefab_hash: 1055173191i32, @@ -13213,6 +13687,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1663349918i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemMiningDrillHeavy".into(), prefab_hash: -1663349918i32, @@ -13272,6 +13747,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1258187304i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemMiningDrillPneumatic".into(), prefab_hash: 1258187304i32, @@ -13300,6 +13776,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1467558064i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemMkIIToolbelt".into(), prefab_hash: 1467558064i32, @@ -13434,6 +13911,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1864982322i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMuffin".into(), prefab_hash: -1864982322i32, @@ -13458,6 +13936,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2044798572i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemMushroom".into(), prefab_hash: 2044798572i32, @@ -13482,6 +13961,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 982514123i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemNVG".into(), prefab_hash: 982514123i32, @@ -13534,6 +14014,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1406385572i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemNickelIngot".into(), prefab_hash: -1406385572i32, @@ -13557,6 +14038,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1830218956i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemNickelOre".into(), prefab_hash: 1830218956i32, @@ -13581,6 +14063,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1499471529i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemNitrice".into(), prefab_hash: -1499471529i32, @@ -13605,6 +14088,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1805394113i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemOxite".into(), prefab_hash: -1805394113i32, @@ -13629,6 +14113,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 238631271i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPassiveVent".into(), prefab_hash: 238631271i32, @@ -13653,6 +14138,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1397583760i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPassiveVentInsulated".into(), prefab_hash: -1397583760i32, @@ -13676,6 +14162,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2042955224i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPeaceLily".into(), prefab_hash: 2042955224i32, @@ -13700,6 +14187,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -913649823i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPickaxe".into(), prefab_hash: -913649823i32, @@ -13724,6 +14212,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1118069417i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPillHeal".into(), prefab_hash: 1118069417i32, @@ -13748,6 +14237,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 418958601i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPillStun".into(), prefab_hash: 418958601i32, @@ -13772,6 +14262,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -767597887i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeAnalyizer".into(), prefab_hash: -767597887i32, @@ -13796,6 +14287,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -38898376i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeCowl".into(), prefab_hash: -38898376i32, @@ -13820,6 +14312,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1532448832i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeDigitalValve".into(), prefab_hash: -1532448832i32, @@ -13844,6 +14337,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1134459463i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeGasMixer".into(), prefab_hash: -1134459463i32, @@ -13868,6 +14362,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1751627006i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeHeater".into(), prefab_hash: -1751627006i32, @@ -13892,6 +14387,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1366030599i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeIgniter".into(), prefab_hash: 1366030599i32, @@ -13915,6 +14411,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 391769637i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeLabel".into(), prefab_hash: 391769637i32, @@ -13939,6 +14436,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -906521320i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeLiquidRadiator".into(), prefab_hash: -906521320i32, @@ -13963,6 +14461,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1207939683i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeMeter".into(), prefab_hash: 1207939683i32, @@ -13987,6 +14486,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1796655088i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeRadiator".into(), prefab_hash: -1796655088i32, @@ -14011,6 +14511,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 799323450i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeValve".into(), prefab_hash: 799323450i32, @@ -14035,6 +14536,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1766301997i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPipeVolumePump".into(), prefab_hash: -1766301997i32, @@ -14059,6 +14561,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1108244510i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlainCake".into(), prefab_hash: -1108244510i32, @@ -14082,6 +14585,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1159179557i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlantEndothermic_Creative".into(), prefab_hash: -1159179557i32, @@ -14105,6 +14609,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 851290561i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlantEndothermic_Genepool1".into(), prefab_hash: 851290561i32, @@ -14129,6 +14634,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1414203269i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlantEndothermic_Genepool2".into(), prefab_hash: -1414203269i32, @@ -14153,6 +14659,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 173023800i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemPlantSampler".into(), prefab_hash: 173023800i32, @@ -14211,6 +14718,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -532672323i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlantSwitchGrass".into(), prefab_hash: -532672323i32, @@ -14234,6 +14742,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1208890208i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlantThermogenic_Creative".into(), prefab_hash: -1208890208i32, @@ -14257,6 +14766,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -177792789i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlantThermogenic_Genepool1".into(), prefab_hash: -177792789i32, @@ -14281,6 +14791,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1819167057i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlantThermogenic_Genepool2".into(), prefab_hash: 1819167057i32, @@ -14305,6 +14816,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 662053345i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPlasticSheets".into(), prefab_hash: 662053345i32, @@ -14328,6 +14840,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1929046963i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPotato".into(), prefab_hash: 1929046963i32, @@ -14352,6 +14865,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2111886401i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPotatoBaked".into(), prefab_hash: -2111886401i32, @@ -14375,6 +14889,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 839924019i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPowerConnector".into(), prefab_hash: 839924019i32, @@ -14399,6 +14914,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1277828144i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPumpkin".into(), prefab_hash: 1277828144i32, @@ -14423,6 +14939,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 62768076i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPumpkinPie".into(), prefab_hash: 62768076i32, @@ -14446,6 +14963,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1277979876i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPumpkinSoup".into(), prefab_hash: 1277979876i32, @@ -14470,6 +14988,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1616308158i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIce".into(), prefab_hash: -1616308158i32, @@ -14494,6 +15013,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1251009404i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceCarbonDioxide".into(), prefab_hash: -1251009404i32, @@ -14518,6 +15038,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 944530361i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceHydrogen".into(), prefab_hash: 944530361i32, @@ -14542,6 +15063,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1715945725i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceLiquidCarbonDioxide".into(), prefab_hash: -1715945725i32, @@ -14566,6 +15088,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1044933269i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceLiquidHydrogen".into(), prefab_hash: -1044933269i32, @@ -14590,6 +15113,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1674576569i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceLiquidNitrogen".into(), prefab_hash: 1674576569i32, @@ -14614,6 +15138,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1428477399i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceLiquidNitrous".into(), prefab_hash: 1428477399i32, @@ -14638,6 +15163,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 541621589i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceLiquidOxygen".into(), prefab_hash: 541621589i32, @@ -14662,6 +15188,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1748926678i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceLiquidPollutant".into(), prefab_hash: -1748926678i32, @@ -14686,6 +15213,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1306628937i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceLiquidVolatiles".into(), prefab_hash: -1306628937i32, @@ -14710,6 +15238,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1708395413i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceNitrogen".into(), prefab_hash: -1708395413i32, @@ -14734,6 +15263,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 386754635i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceNitrous".into(), prefab_hash: 386754635i32, @@ -14758,6 +15288,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1150448260i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceOxygen".into(), prefab_hash: -1150448260i32, @@ -14782,6 +15313,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1755356i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIcePollutant".into(), prefab_hash: -1755356i32, @@ -14806,6 +15338,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2073202179i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIcePollutedWater".into(), prefab_hash: -2073202179i32, @@ -14830,6 +15363,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -874791066i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceSteam".into(), prefab_hash: -874791066i32, @@ -14854,6 +15388,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -633723719i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemPureIceVolatiles".into(), prefab_hash: -633723719i32, @@ -14878,6 +15413,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 495305053i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRTG".into(), prefab_hash: 495305053i32, @@ -14902,6 +15438,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1817645803i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRTGSurvival".into(), prefab_hash: 1817645803i32, @@ -14926,6 +15463,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1641500434i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemReagentMix".into(), prefab_hash: -1641500434i32, @@ -14950,6 +15488,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 678483886i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemRemoteDetonator".into(), prefab_hash: 678483886i32, @@ -15002,6 +15541,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1773192190i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemReusableFireExtinguisher".into(), prefab_hash: -1773192190i32, @@ -15032,6 +15572,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 658916791i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRice".into(), prefab_hash: 658916791i32, @@ -15056,6 +15597,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 871811564i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRoadFlare".into(), prefab_hash: 871811564i32, @@ -15080,6 +15622,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2109945337i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRocketMiningDrillHead".into(), prefab_hash: 2109945337i32, @@ -15104,6 +15647,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1530764483i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRocketMiningDrillHeadDurable".into(), prefab_hash: 1530764483i32, @@ -15127,6 +15671,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 653461728i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRocketMiningDrillHeadHighSpeedIce".into(), prefab_hash: 653461728i32, @@ -15150,6 +15695,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1440678625i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRocketMiningDrillHeadHighSpeedMineral".into(), prefab_hash: 1440678625i32, @@ -15173,6 +15719,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -380904592i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRocketMiningDrillHeadIce".into(), prefab_hash: -380904592i32, @@ -15196,6 +15743,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -684020753i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRocketMiningDrillHeadLongTerm".into(), prefab_hash: -684020753i32, @@ -15219,6 +15767,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1083675581i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRocketMiningDrillHeadMineral".into(), prefab_hash: 1083675581i32, @@ -15242,6 +15791,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1198702771i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemRocketScanningHead".into(), prefab_hash: -1198702771i32, @@ -15265,6 +15815,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1661270830i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemScanner".into(), prefab_hash: 1661270830i32, @@ -15289,6 +15840,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 687940869i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemScrewdriver".into(), prefab_hash: 687940869i32, @@ -15313,6 +15865,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1981101032i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSecurityCamera".into(), prefab_hash: -1981101032i32, @@ -15337,6 +15890,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1176140051i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemSensorLenses".into(), prefab_hash: -1176140051i32, @@ -15400,6 +15954,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1154200014i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSensorProcessingUnitCelestialScanner".into(), prefab_hash: -1154200014i32, @@ -15423,6 +15978,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1730464583i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSensorProcessingUnitMesonScanner".into(), prefab_hash: -1730464583i32, @@ -15447,6 +16003,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1219128491i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSensorProcessingUnitOreScanner".into(), prefab_hash: -1219128491i32, @@ -15471,6 +16028,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -290196476i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSiliconIngot".into(), prefab_hash: -290196476i32, @@ -15494,6 +16052,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1103972403i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSiliconOre".into(), prefab_hash: 1103972403i32, @@ -15518,6 +16077,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -929742000i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSilverIngot".into(), prefab_hash: -929742000i32, @@ -15541,6 +16101,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -916518678i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSilverOre".into(), prefab_hash: -916518678i32, @@ -15565,6 +16126,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -82508479i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSolderIngot".into(), prefab_hash: -82508479i32, @@ -15588,6 +16150,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -365253871i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSolidFuel".into(), prefab_hash: -365253871i32, @@ -15611,6 +16174,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1883441704i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSoundCartridgeBass".into(), prefab_hash: -1883441704i32, @@ -15634,6 +16198,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1901500508i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSoundCartridgeDrums".into(), prefab_hash: -1901500508i32, @@ -15657,6 +16222,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1174735962i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSoundCartridgeLeads".into(), prefab_hash: -1174735962i32, @@ -15680,6 +16246,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1971419310i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSoundCartridgeSynth".into(), prefab_hash: -1971419310i32, @@ -15703,6 +16270,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1387403148i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSoyOil".into(), prefab_hash: 1387403148i32, @@ -15726,6 +16294,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1924673028i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSoybean".into(), prefab_hash: 1924673028i32, @@ -15750,6 +16319,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1737666461i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSpaceCleaner".into(), prefab_hash: -1737666461i32, @@ -15774,6 +16344,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 714830451i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemSpaceHelmet".into(), prefab_hash: 714830451i32, @@ -15838,6 +16409,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 675686937i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSpaceIce".into(), prefab_hash: 675686937i32, @@ -15861,6 +16433,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2131916219i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSpaceOre".into(), prefab_hash: 2131916219i32, @@ -15885,6 +16458,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1260618380i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemSpacepack".into(), prefab_hash: -1260618380i32, @@ -16010,6 +16584,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -688107795i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanBlack".into(), prefab_hash: -688107795i32, @@ -16034,6 +16609,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -498464883i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanBlue".into(), prefab_hash: -498464883i32, @@ -16058,6 +16634,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 845176977i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanBrown".into(), prefab_hash: 845176977i32, @@ -16082,6 +16659,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1880941852i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanGreen".into(), prefab_hash: -1880941852i32, @@ -16106,6 +16684,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1645266981i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanGrey".into(), prefab_hash: -1645266981i32, @@ -16130,6 +16709,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1918456047i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanKhaki".into(), prefab_hash: 1918456047i32, @@ -16154,6 +16734,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -158007629i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanOrange".into(), prefab_hash: -158007629i32, @@ -16178,6 +16759,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1344257263i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanPink".into(), prefab_hash: 1344257263i32, @@ -16202,6 +16784,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 30686509i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanPurple".into(), prefab_hash: 30686509i32, @@ -16226,6 +16809,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1514393921i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanRed".into(), prefab_hash: 1514393921i32, @@ -16250,6 +16834,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 498481505i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanWhite".into(), prefab_hash: 498481505i32, @@ -16274,6 +16859,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 995468116i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSprayCanYellow".into(), prefab_hash: 995468116i32, @@ -16298,6 +16884,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1289723966i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemSprayGun".into(), prefab_hash: 1289723966i32, @@ -16325,6 +16912,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1448105779i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSteelFrames".into(), prefab_hash: -1448105779i32, @@ -16349,6 +16937,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -654790771i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSteelIngot".into(), prefab_hash: -654790771i32, @@ -16373,6 +16962,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 38555961i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSteelSheets".into(), prefab_hash: 38555961i32, @@ -16397,6 +16987,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2038663432i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemStelliteGlassSheets".into(), prefab_hash: -2038663432i32, @@ -16420,6 +17011,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1897868623i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemStelliteIngot".into(), prefab_hash: -1897868623i32, @@ -16443,6 +17035,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2111910840i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSugar".into(), prefab_hash: 2111910840i32, @@ -16466,6 +17059,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1335056202i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSugarCane".into(), prefab_hash: -1335056202i32, @@ -16489,6 +17083,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1274308304i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemSuitModCryogenicUpgrade".into(), prefab_hash: -1274308304i32, @@ -16513,6 +17108,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -229808600i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemTablet".into(), prefab_hash: -229808600i32, @@ -16575,6 +17171,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 111280987i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemTerrainManipulator".into(), prefab_hash: 111280987i32, @@ -16642,6 +17239,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -998592080i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemTomato".into(), prefab_hash: -998592080i32, @@ -16666,6 +17264,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 688734890i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemTomatoSoup".into(), prefab_hash: 688734890i32, @@ -16690,6 +17289,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -355127880i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemToolBelt".into(), prefab_hash: -355127880i32, @@ -16724,6 +17324,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -800947386i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemTropicalPlant".into(), prefab_hash: -800947386i32, @@ -16748,6 +17349,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1516581844i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemUraniumOre".into(), prefab_hash: -1516581844i32, @@ -16772,6 +17374,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1253102035i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemVolatiles".into(), prefab_hash: 1253102035i32, @@ -16796,6 +17399,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1567752627i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWallCooler".into(), prefab_hash: -1567752627i32, @@ -16820,6 +17424,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1880134612i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWallHeater".into(), prefab_hash: 1880134612i32, @@ -16844,6 +17449,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1108423476i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWallLight".into(), prefab_hash: 1108423476i32, @@ -16868,6 +17474,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 156348098i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWaspaloyIngot".into(), prefab_hash: 156348098i32, @@ -16891,6 +17498,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 107741229i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWaterBottle".into(), prefab_hash: 107741229i32, @@ -16915,6 +17523,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 309693520i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWaterPipeDigitalValve".into(), prefab_hash: 309693520i32, @@ -16938,6 +17547,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -90898877i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWaterPipeMeter".into(), prefab_hash: -90898877i32, @@ -16961,6 +17571,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1721846327i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWaterWallCooler".into(), prefab_hash: -1721846327i32, @@ -16984,6 +17595,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -598730959i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemWearLamp".into(), prefab_hash: -598730959i32, @@ -17036,6 +17648,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2066892079i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "ItemWeldingTorch".into(), prefab_hash: -2066892079i32, @@ -17068,6 +17681,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1057658015i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWheat".into(), prefab_hash: -1057658015i32, @@ -17092,6 +17706,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1535854074i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWireCutters".into(), prefab_hash: 1535854074i32, @@ -17116,6 +17731,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -504717121i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "ItemWirelessBatteryCellExtraLarge".into(), prefab_hash: -504717121i32, @@ -17162,6 +17778,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1826023284i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageAirConditioner1".into(), prefab_hash: -1826023284i32, @@ -17185,6 +17802,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 169888054i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageAirConditioner2".into(), prefab_hash: 169888054i32, @@ -17208,6 +17826,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -310178617i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageHydroponicsTray1".into(), prefab_hash: -310178617i32, @@ -17231,6 +17850,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -997763i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageLargeExtendableRadiator01".into(), prefab_hash: -997763i32, @@ -17254,6 +17874,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 391453348i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureRTG1".into(), prefab_hash: 391453348i32, @@ -17277,6 +17898,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -834664349i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureWeatherStation001".into(), prefab_hash: -834664349i32, @@ -17300,6 +17922,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1464424921i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureWeatherStation002".into(), prefab_hash: 1464424921i32, @@ -17323,6 +17946,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 542009679i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureWeatherStation003".into(), prefab_hash: 542009679i32, @@ -17346,6 +17970,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1104478996i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureWeatherStation004".into(), prefab_hash: -1104478996i32, @@ -17369,6 +17994,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -919745414i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureWeatherStation005".into(), prefab_hash: -919745414i32, @@ -17392,6 +18018,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1344576960i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureWeatherStation006".into(), prefab_hash: 1344576960i32, @@ -17415,6 +18042,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 656649558i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureWeatherStation007".into(), prefab_hash: 656649558i32, @@ -17438,6 +18066,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1214467897i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageStructureWeatherStation008".into(), prefab_hash: -1214467897i32, @@ -17461,6 +18090,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1662394403i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageTurbineGenerator1".into(), prefab_hash: -1662394403i32, @@ -17484,6 +18114,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 98602599i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageTurbineGenerator2".into(), prefab_hash: 98602599i32, @@ -17507,6 +18138,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1927790321i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageTurbineGenerator3".into(), prefab_hash: 1927790321i32, @@ -17530,6 +18162,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1682930158i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageWallCooler1".into(), prefab_hash: -1682930158i32, @@ -17553,6 +18186,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 45733800i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWreckageWallCooler2".into(), prefab_hash: 45733800i32, @@ -17576,6 +18210,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1886261558i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ItemWrench".into(), prefab_hash: -1886261558i32, @@ -17600,6 +18235,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1932952652i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "KitSDBSilo".into(), prefab_hash: 1932952652i32, @@ -17624,6 +18260,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 231903234i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "KitStructureCombustionCentrifuge".into(), prefab_hash: 231903234i32, @@ -17647,6 +18284,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1427415566i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "KitchenTableShort".into(), prefab_hash: -1427415566i32, @@ -17662,6 +18300,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -78099334i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "KitchenTableSimpleShort".into(), prefab_hash: -78099334i32, @@ -17677,6 +18316,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1068629349i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "KitchenTableSimpleTall".into(), prefab_hash: -1068629349i32, @@ -17692,6 +18332,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1386237782i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "KitchenTableTall".into(), prefab_hash: -1386237782i32, @@ -17707,6 +18348,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1605130615i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "Lander".into(), prefab_hash: 1605130615i32, @@ -17741,6 +18383,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1295222317i32, StructureLogicTemplate { + templateType: "StructureLogic".into(), prefab: PrefabInfo { prefab_name: "Landingpad_2x2CenterPiece01".into(), prefab_hash: -1295222317i32, @@ -17766,6 +18409,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 912453390i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Landingpad_BlankPiece".into(), prefab_hash: 912453390i32, @@ -17781,6 +18425,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1070143159i32, StructureLogicTemplate { + templateType: "StructureLogic".into(), prefab: PrefabInfo { prefab_name: "Landingpad_CenterPiece01".into(), prefab_hash: 1070143159i32, @@ -17814,6 +18459,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1101296153i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Landingpad_CrossPiece".into(), prefab_hash: 1101296153i32, @@ -17830,6 +18476,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2066405918i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "Landingpad_DataConnectionPiece".into(), prefab_hash: -2066405918i32, @@ -17916,6 +18563,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 977899131i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Landingpad_DiagonalPiece01".into(), prefab_hash: 977899131i32, @@ -17932,6 +18580,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 817945707i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "Landingpad_GasConnectorInwardPiece".into(), prefab_hash: 817945707i32, @@ -18007,6 +18656,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1100218307i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "Landingpad_GasConnectorOutwardPiece".into(), prefab_hash: -1100218307i32, @@ -18083,6 +18733,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 170818567i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Landingpad_GasCylinderTankPiece".into(), prefab_hash: 170818567i32, @@ -18099,6 +18750,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1216167727i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "Landingpad_LiquidConnectorInwardPiece".into(), prefab_hash: -1216167727i32, @@ -18174,6 +18826,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1788929869i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "Landingpad_LiquidConnectorOutwardPiece".into(), prefab_hash: -1788929869i32, @@ -18250,6 +18903,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -976273247i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Landingpad_StraightPiece01".into(), prefab_hash: -976273247i32, @@ -18266,6 +18920,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1872345847i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Landingpad_TaxiPieceCorner".into(), prefab_hash: -1872345847i32, @@ -18281,6 +18936,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 146051619i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Landingpad_TaxiPieceHold".into(), prefab_hash: 146051619i32, @@ -18296,6 +18952,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1477941080i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Landingpad_TaxiPieceStraight".into(), prefab_hash: -1477941080i32, @@ -18311,6 +18968,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1514298582i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "Landingpad_ThreshholdPiece".into(), prefab_hash: -1514298582i32, @@ -18364,6 +19022,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1531272458i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "LogicStepSequencer8".into(), prefab_hash: 1531272458i32, @@ -18443,6 +19102,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -99064335i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "Meteorite".into(), prefab_hash: -99064335i32, @@ -18466,6 +19126,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1667675295i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "MonsterEgg".into(), prefab_hash: -1667675295i32, @@ -18489,6 +19150,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -337075633i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "MotherboardComms".into(), prefab_hash: -337075633i32, @@ -18513,6 +19175,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 502555944i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "MotherboardLogic".into(), prefab_hash: 502555944i32, @@ -18537,6 +19200,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -127121474i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "MotherboardMissionControl".into(), prefab_hash: -127121474i32, @@ -18560,6 +19224,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -161107071i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "MotherboardProgrammableChip".into(), prefab_hash: -161107071i32, @@ -18584,6 +19249,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -806986392i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "MotherboardRockets".into(), prefab_hash: -806986392i32, @@ -18607,6 +19273,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1908268220i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "MotherboardSorter".into(), prefab_hash: -1908268220i32, @@ -18631,6 +19298,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1930442922i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "MothershipCore".into(), prefab_hash: -1930442922i32, @@ -18655,6 +19323,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 155856647i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "NpcChick".into(), prefab_hash: 155856647i32, @@ -18687,6 +19356,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 399074198i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "NpcChicken".into(), prefab_hash: 399074198i32, @@ -18719,6 +19389,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 248893646i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "PassiveSpeaker".into(), prefab_hash: 248893646i32, @@ -18768,6 +19439,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 443947415i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "PipeBenderMod".into(), prefab_hash: 443947415i32, @@ -18792,6 +19464,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1958705204i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "PortableComposter".into(), prefab_hash: -1958705204i32, @@ -18824,6 +19497,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2043318949i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "PortableSolarPanel".into(), prefab_hash: 2043318949i32, @@ -18875,6 +19549,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 399661231i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "RailingElegant01".into(), prefab_hash: 399661231i32, @@ -18890,6 +19565,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1898247915i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "RailingElegant02".into(), prefab_hash: -1898247915i32, @@ -18905,6 +19581,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2072792175i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "RailingIndustrial02".into(), prefab_hash: -2072792175i32, @@ -18920,6 +19597,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 980054869i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ReagentColorBlue".into(), prefab_hash: 980054869i32, @@ -18943,6 +19621,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 120807542i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ReagentColorGreen".into(), prefab_hash: 120807542i32, @@ -18966,6 +19645,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -400696159i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ReagentColorOrange".into(), prefab_hash: -400696159i32, @@ -18991,6 +19671,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1998377961i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ReagentColorRed".into(), prefab_hash: 1998377961i32, @@ -19014,6 +19695,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 635208006i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ReagentColorYellow".into(), prefab_hash: 635208006i32, @@ -19039,6 +19721,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -788672929i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "RespawnPoint".into(), prefab_hash: -788672929i32, @@ -19055,6 +19738,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -491247370i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "RespawnPointWallMounted".into(), prefab_hash: -491247370i32, @@ -19070,6 +19754,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 434786784i32, ItemCircuitHolderTemplate { + templateType: "ItemCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "Robot".into(), prefab_hash: 434786784i32, @@ -19220,6 +19905,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 350726273i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "RoverCargo".into(), prefab_hash: 350726273i32, @@ -19426,6 +20112,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2049946335i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "Rover_MkI".into(), prefab_hash: -2049946335i32, @@ -19584,6 +20271,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 861674123i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "Rover_MkI_build_states".into(), prefab_hash: 861674123i32, @@ -19599,6 +20287,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -256607540i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SMGMagazine".into(), prefab_hash: -256607540i32, @@ -19622,6 +20311,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1139887531i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Cocoa".into(), prefab_hash: 1139887531i32, @@ -19645,6 +20335,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1290755415i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Corn".into(), prefab_hash: -1290755415i32, @@ -19669,6 +20360,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1990600883i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Fern".into(), prefab_hash: -1990600883i32, @@ -19693,6 +20385,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 311593418i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Mushroom".into(), prefab_hash: 311593418i32, @@ -19717,6 +20410,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1005571172i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Potato".into(), prefab_hash: 1005571172i32, @@ -19741,6 +20435,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1423199840i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Pumpkin".into(), prefab_hash: 1423199840i32, @@ -19765,6 +20460,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1691151239i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Rice".into(), prefab_hash: -1691151239i32, @@ -19789,6 +20485,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1783004244i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Soybean".into(), prefab_hash: 1783004244i32, @@ -19813,6 +20510,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1884103228i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_SugarCane".into(), prefab_hash: -1884103228i32, @@ -19836,6 +20534,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 488360169i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Switchgrass".into(), prefab_hash: 488360169i32, @@ -19859,6 +20558,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1922066841i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Tomato".into(), prefab_hash: -1922066841i32, @@ -19883,6 +20583,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -654756733i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "SeedBag_Wheet".into(), prefab_hash: -654756733i32, @@ -19907,6 +20608,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1991297271i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "SpaceShuttle".into(), prefab_hash: -1991297271i32, @@ -19938,6 +20640,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1527229051i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StopWatch".into(), prefab_hash: -1527229051i32, @@ -19989,6 +20692,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1298920475i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAccessBridge".into(), prefab_hash: 1298920475i32, @@ -20041,6 +20745,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1129453144i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureActiveVent".into(), prefab_hash: -1129453144i32, @@ -20116,6 +20821,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 446212963i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAdvancedComposter".into(), prefab_hash: 446212963i32, @@ -20194,6 +20900,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 545937711i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAdvancedFurnace".into(), prefab_hash: 545937711i32, @@ -20300,6 +21007,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -463037670i32, StructureLogicDeviceConsumerMemoryTemplate { + templateType: "StructureLogicDeviceConsumerMemory".into(), prefab: PrefabInfo { prefab_name: "StructureAdvancedPackagingMachine".into(), prefab_hash: -463037670i32, @@ -20820,6 +21528,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2087593337i32, StructureCircuitHolderTemplate { + templateType: "StructureCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "StructureAirConditioner".into(), prefab_hash: -2087593337i32, @@ -20951,6 +21660,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2105052344i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAirlock".into(), prefab_hash: -2105052344i32, @@ -21009,6 +21719,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1736080881i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAirlockGate".into(), prefab_hash: 1736080881i32, @@ -21066,6 +21777,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1811979158i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAngledBench".into(), prefab_hash: 1811979158i32, @@ -21121,6 +21833,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -247344692i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureArcFurnace".into(), prefab_hash: -247344692i32, @@ -21206,6 +21919,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1999523701i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAreaPowerControl".into(), prefab_hash: 1999523701i32, @@ -21298,6 +22012,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1032513487i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAreaPowerControlReversed".into(), prefab_hash: -1032513487i32, @@ -21390,6 +22105,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 7274344i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureAutoMinerSmall".into(), prefab_hash: 7274344i32, @@ -21458,6 +22174,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 336213101i32, StructureLogicDeviceConsumerMemoryTemplate { + templateType: "StructureLogicDeviceConsumerMemory".into(), prefab: PrefabInfo { prefab_name: "StructureAutolathe".into(), prefab_hash: 336213101i32, @@ -22374,6 +23091,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1672404896i32, StructureLogicDeviceConsumerMemoryTemplate { + templateType: "StructureLogicDeviceConsumerMemory".into(), prefab: PrefabInfo { prefab_name: "StructureAutomatedOven".into(), prefab_hash: -1672404896i32, @@ -22956,6 +23674,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2099900163i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBackLiquidPressureRegulator".into(), prefab_hash: 2099900163i32, @@ -23012,6 +23731,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1149857558i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBackPressureRegulator".into(), prefab_hash: -1149857558i32, @@ -23067,6 +23787,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1613497288i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBasketHoop".into(), prefab_hash: -1613497288i32, @@ -23118,6 +23839,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -400115994i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBattery".into(), prefab_hash: -400115994i32, @@ -23182,6 +23904,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1945930022i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBatteryCharger".into(), prefab_hash: 1945930022i32, @@ -23296,6 +24019,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -761772413i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBatteryChargerSmall".into(), prefab_hash: -761772413i32, @@ -23375,6 +24099,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1388288459i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBatteryLarge".into(), prefab_hash: -1388288459i32, @@ -23439,6 +24164,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1125305264i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBatteryMedium".into(), prefab_hash: -1125305264i32, @@ -23503,6 +24229,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2123455080i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBatterySmall".into(), prefab_hash: -2123455080i32, @@ -23567,6 +24294,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -188177083i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBeacon".into(), prefab_hash: -188177083i32, @@ -23618,6 +24346,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2042448192i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBench".into(), prefab_hash: -2042448192i32, @@ -23696,6 +24425,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 406745009i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBench1".into(), prefab_hash: 406745009i32, @@ -23773,6 +24503,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2127086069i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBench2".into(), prefab_hash: -2127086069i32, @@ -23850,6 +24581,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -164622691i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBench3".into(), prefab_hash: -164622691i32, @@ -23927,6 +24659,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1750375230i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBench4".into(), prefab_hash: 1750375230i32, @@ -24004,6 +24737,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 337416191i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBlastDoor".into(), prefab_hash: 337416191i32, @@ -24062,6 +24796,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 697908419i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureBlockBed".into(), prefab_hash: 697908419i32, @@ -24126,6 +24861,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 378084505i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureBlocker".into(), prefab_hash: 378084505i32, @@ -24141,6 +24877,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1036015121i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCableAnalysizer".into(), prefab_hash: 1036015121i32, @@ -24190,6 +24927,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -889269388i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCorner".into(), prefab_hash: -889269388i32, @@ -24206,6 +24944,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 980469101i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCorner3".into(), prefab_hash: 980469101i32, @@ -24222,6 +24961,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 318437449i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCorner3Burnt".into(), prefab_hash: 318437449i32, @@ -24237,6 +24977,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2393826i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCorner3HBurnt".into(), prefab_hash: 2393826i32, @@ -24252,6 +24993,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1542172466i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCorner4".into(), prefab_hash: -1542172466i32, @@ -24267,6 +25009,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 268421361i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCorner4Burnt".into(), prefab_hash: 268421361i32, @@ -24282,6 +25025,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -981223316i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCorner4HBurnt".into(), prefab_hash: -981223316i32, @@ -24297,6 +25041,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -177220914i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCornerBurnt".into(), prefab_hash: -177220914i32, @@ -24312,6 +25057,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -39359015i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCornerH".into(), prefab_hash: -39359015i32, @@ -24327,6 +25073,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1843379322i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCornerH3".into(), prefab_hash: -1843379322i32, @@ -24342,6 +25089,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 205837861i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCornerH4".into(), prefab_hash: 205837861i32, @@ -24357,6 +25105,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1931412811i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableCornerHBurnt".into(), prefab_hash: 1931412811i32, @@ -24372,6 +25121,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 281380789i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCableFuse100k".into(), prefab_hash: 281380789i32, @@ -24413,6 +25163,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1103727120i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCableFuse1k".into(), prefab_hash: -1103727120i32, @@ -24454,6 +25205,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -349716617i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCableFuse50k".into(), prefab_hash: -349716617i32, @@ -24495,6 +25247,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -631590668i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCableFuse5k".into(), prefab_hash: -631590668i32, @@ -24536,6 +25289,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -175342021i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction".into(), prefab_hash: -175342021i32, @@ -24552,6 +25306,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1112047202i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction4".into(), prefab_hash: 1112047202i32, @@ -24568,6 +25323,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1756896811i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction4Burnt".into(), prefab_hash: -1756896811i32, @@ -24583,6 +25339,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -115809132i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction4HBurnt".into(), prefab_hash: -115809132i32, @@ -24598,6 +25355,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 894390004i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction5".into(), prefab_hash: 894390004i32, @@ -24613,6 +25371,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1545286256i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction5Burnt".into(), prefab_hash: 1545286256i32, @@ -24628,6 +25387,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1404690610i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction6".into(), prefab_hash: -1404690610i32, @@ -24644,6 +25404,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -628145954i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction6Burnt".into(), prefab_hash: -628145954i32, @@ -24659,6 +25420,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1854404029i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunction6HBurnt".into(), prefab_hash: 1854404029i32, @@ -24674,6 +25436,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1620686196i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunctionBurnt".into(), prefab_hash: -1620686196i32, @@ -24689,6 +25452,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 469451637i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunctionH".into(), prefab_hash: 469451637i32, @@ -24704,6 +25468,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -742234680i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunctionH4".into(), prefab_hash: -742234680i32, @@ -24719,6 +25484,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1530571426i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunctionH5".into(), prefab_hash: -1530571426i32, @@ -24734,6 +25500,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1701593300i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunctionH5Burnt".into(), prefab_hash: 1701593300i32, @@ -24749,6 +25516,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1036780772i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunctionH6".into(), prefab_hash: 1036780772i32, @@ -24764,6 +25532,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -341365649i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableJunctionHBurnt".into(), prefab_hash: -341365649i32, @@ -24779,6 +25548,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 605357050i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableStraight".into(), prefab_hash: 605357050i32, @@ -24795,6 +25565,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1196981113i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableStraightBurnt".into(), prefab_hash: -1196981113i32, @@ -24810,6 +25581,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -146200530i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableStraightH".into(), prefab_hash: -146200530i32, @@ -24825,6 +25597,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2085762089i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCableStraightHBurnt".into(), prefab_hash: 2085762089i32, @@ -24840,6 +25613,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -342072665i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCamera".into(), prefab_hash: -342072665i32, @@ -24893,6 +25667,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1385712131i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCapsuleTankGas".into(), prefab_hash: -1385712131i32, @@ -24967,6 +25742,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1415396263i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCapsuleTankLiquid".into(), prefab_hash: 1415396263i32, @@ -25041,6 +25817,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1151864003i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCargoStorageMedium".into(), prefab_hash: 1151864003i32, @@ -25247,6 +26024,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1493672123i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCargoStorageSmall".into(), prefab_hash: -1493672123i32, @@ -25768,6 +26546,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 690945935i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCentrifuge".into(), prefab_hash: 690945935i32, @@ -25836,6 +26615,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1167659360i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChair".into(), prefab_hash: 1167659360i32, @@ -25892,6 +26672,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1944858936i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChairBacklessDouble".into(), prefab_hash: 1944858936i32, @@ -25947,6 +26728,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1672275150i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChairBacklessSingle".into(), prefab_hash: 1672275150i32, @@ -26002,6 +26784,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -367720198i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChairBoothCornerLeft".into(), prefab_hash: -367720198i32, @@ -26057,6 +26840,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1640720378i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChairBoothMiddle".into(), prefab_hash: 1640720378i32, @@ -26112,6 +26896,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1152812099i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChairRectangleDouble".into(), prefab_hash: -1152812099i32, @@ -26167,6 +26952,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1425428917i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChairRectangleSingle".into(), prefab_hash: -1425428917i32, @@ -26222,6 +27008,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1245724402i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChairThickDouble".into(), prefab_hash: -1245724402i32, @@ -26277,6 +27064,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1510009608i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChairThickSingle".into(), prefab_hash: -1510009608i32, @@ -26332,6 +27120,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -850484480i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteBin".into(), prefab_hash: -850484480i32, @@ -26399,6 +27188,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1360330136i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureChuteCorner".into(), prefab_hash: 1360330136i32, @@ -26418,6 +27208,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -810874728i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteDigitalFlipFlopSplitterLeft".into(), prefab_hash: -810874728i32, @@ -26494,6 +27285,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 163728359i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteDigitalFlipFlopSplitterRight".into(), prefab_hash: 163728359i32, @@ -26570,6 +27362,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 648608238i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteDigitalValveLeft".into(), prefab_hash: 648608238i32, @@ -26639,6 +27432,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1337091041i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteDigitalValveRight".into(), prefab_hash: -1337091041i32, @@ -26708,6 +27502,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1446854725i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureChuteFlipFlopSplitter".into(), prefab_hash: -1446854725i32, @@ -26726,6 +27521,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1469588766i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteInlet".into(), prefab_hash: -1469588766i32, @@ -26790,6 +27586,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -611232514i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureChuteJunction".into(), prefab_hash: -611232514i32, @@ -26809,6 +27606,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1022714809i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteOutlet".into(), prefab_hash: -1022714809i32, @@ -26874,6 +27672,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 225377225i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureChuteOverflow".into(), prefab_hash: 225377225i32, @@ -26893,6 +27692,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 168307007i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureChuteStraight".into(), prefab_hash: 168307007i32, @@ -26912,6 +27712,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1918892177i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteUmbilicalFemale".into(), prefab_hash: -1918892177i32, @@ -26972,6 +27773,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -659093969i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteUmbilicalFemaleSide".into(), prefab_hash: -659093969i32, @@ -27032,6 +27834,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -958884053i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureChuteUmbilicalMale".into(), prefab_hash: -958884053i32, @@ -27105,6 +27908,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 434875271i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureChuteValve".into(), prefab_hash: 434875271i32, @@ -27124,6 +27928,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -607241919i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureChuteWindow".into(), prefab_hash: -607241919i32, @@ -27143,6 +27948,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -128473777i32, StructureCircuitHolderTemplate { + templateType: "StructureCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "StructureCircuitHousing".into(), prefab_hash: -128473777i32, @@ -27213,6 +28019,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1238905683i32, StructureCircuitHolderTemplate { + templateType: "StructureCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "StructureCombustionCentrifuge".into(), prefab_hash: 1238905683i32, @@ -27346,6 +28153,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1513030150i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngled".into(), prefab_hash: -1513030150i32, @@ -27361,6 +28169,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -69685069i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngledCorner".into(), prefab_hash: -69685069i32, @@ -27376,6 +28185,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1841871763i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngledCornerInner".into(), prefab_hash: -1841871763i32, @@ -27391,6 +28201,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1417912632i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngledCornerInnerLong".into(), prefab_hash: -1417912632i32, @@ -27406,6 +28217,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 947705066i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngledCornerInnerLongL".into(), prefab_hash: 947705066i32, @@ -27421,6 +28233,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1032590967i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngledCornerInnerLongR".into(), prefab_hash: -1032590967i32, @@ -27436,6 +28249,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 850558385i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngledCornerLong".into(), prefab_hash: 850558385i32, @@ -27451,6 +28265,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -348918222i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngledCornerLongR".into(), prefab_hash: -348918222i32, @@ -27466,6 +28281,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -387546514i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingAngledLong".into(), prefab_hash: -387546514i32, @@ -27481,6 +28297,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 212919006i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingCylindrical".into(), prefab_hash: 212919006i32, @@ -27496,6 +28313,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1077151132i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingCylindricalPanel".into(), prefab_hash: 1077151132i32, @@ -27511,6 +28329,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1997436771i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingPanel".into(), prefab_hash: 1997436771i32, @@ -27526,6 +28345,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -259357734i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingRounded".into(), prefab_hash: -259357734i32, @@ -27541,6 +28361,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1951525046i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingRoundedCorner".into(), prefab_hash: 1951525046i32, @@ -27556,6 +28377,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 110184667i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingRoundedCornerInner".into(), prefab_hash: 110184667i32, @@ -27571,6 +28393,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 139107321i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingSpherical".into(), prefab_hash: 139107321i32, @@ -27586,6 +28409,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 534213209i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingSphericalCap".into(), prefab_hash: 534213209i32, @@ -27601,6 +28425,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1751355139i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeCladdingSphericalCorner".into(), prefab_hash: 1751355139i32, @@ -27616,6 +28441,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -793837322i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeDoor".into(), prefab_hash: -793837322i32, @@ -27674,6 +28500,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 324868581i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeFloorGrating".into(), prefab_hash: 324868581i32, @@ -27690,6 +28517,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -895027741i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeFloorGrating2".into(), prefab_hash: -895027741i32, @@ -27705,6 +28533,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1113471627i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeFloorGrating3".into(), prefab_hash: -1113471627i32, @@ -27720,6 +28549,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 600133846i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeFloorGrating4".into(), prefab_hash: 600133846i32, @@ -27735,6 +28565,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2109695912i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeFloorGratingOpen".into(), prefab_hash: 2109695912i32, @@ -27750,6 +28581,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 882307910i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeFloorGratingOpenRotated".into(), prefab_hash: 882307910i32, @@ -27765,6 +28597,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1237302061i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeWall".into(), prefab_hash: 1237302061i32, @@ -27781,6 +28614,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 718343384i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeWall02".into(), prefab_hash: 718343384i32, @@ -27796,6 +28630,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1574321230i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeWall03".into(), prefab_hash: 1574321230i32, @@ -27811,6 +28646,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1011701267i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeWall04".into(), prefab_hash: -1011701267i32, @@ -27826,6 +28662,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2060571986i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeWindow".into(), prefab_hash: -2060571986i32, @@ -27842,6 +28679,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -688284639i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureCompositeWindowIron".into(), prefab_hash: -688284639i32, @@ -27857,6 +28695,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -626563514i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureComputer".into(), prefab_hash: -626563514i32, @@ -27921,6 +28760,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1420719315i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCondensationChamber".into(), prefab_hash: 1420719315i32, @@ -28002,6 +28842,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -965741795i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCondensationValve".into(), prefab_hash: -965741795i32, @@ -28053,6 +28894,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 235638270i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureConsole".into(), prefab_hash: 235638270i32, @@ -28115,6 +28957,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -722284333i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureConsoleDual".into(), prefab_hash: -722284333i32, @@ -28178,6 +29021,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -53151617i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureConsoleLED1x2".into(), prefab_hash: -53151617i32, @@ -28236,6 +29080,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1949054743i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureConsoleLED1x3".into(), prefab_hash: -1949054743i32, @@ -28294,6 +29139,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -815193061i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureConsoleLED5".into(), prefab_hash: -815193061i32, @@ -28352,6 +29198,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 801677497i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureConsoleMonitor".into(), prefab_hash: 801677497i32, @@ -28414,6 +29261,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1961153710i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureControlChair".into(), prefab_hash: -1961153710i32, @@ -28514,6 +29362,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1968255729i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCornerLocker".into(), prefab_hash: -1968255729i32, @@ -28617,6 +29466,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -733500083i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureCrateMount".into(), prefab_hash: -733500083i32, @@ -28635,6 +29485,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1938254586i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCryoTube".into(), prefab_hash: 1938254586i32, @@ -28711,6 +29562,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1443059329i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCryoTubeHorizontal".into(), prefab_hash: 1443059329i32, @@ -28777,6 +29629,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1381321828i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureCryoTubeVertical".into(), prefab_hash: -1381321828i32, @@ -28843,6 +29696,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1076425094i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureDaylightSensor".into(), prefab_hash: 1076425094i32, @@ -28903,6 +29757,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 265720906i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureDeepMiner".into(), prefab_hash: 265720906i32, @@ -28964,6 +29819,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1280984102i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureDigitalValve".into(), prefab_hash: -1280984102i32, @@ -29019,6 +29875,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1944485013i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureDiode".into(), prefab_hash: 1944485013i32, @@ -29069,6 +29926,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 576516101i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureDiodeSlide".into(), prefab_hash: 576516101i32, @@ -29119,6 +29977,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -137465079i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureDockPortSide".into(), prefab_hash: -137465079i32, @@ -29171,6 +30030,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1968371847i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureDrinkingFountain".into(), prefab_hash: 1968371847i32, @@ -29221,6 +30081,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1668992663i32, StructureCircuitHolderTemplate { + templateType: "StructureCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "StructureElectrolyzer".into(), prefab_hash: -1668992663i32, @@ -29349,6 +30210,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1307165496i32, StructureLogicDeviceConsumerMemoryTemplate { + templateType: "StructureLogicDeviceConsumerMemory".into(), prefab: PrefabInfo { prefab_name: "StructureElectronicsPrinter".into(), prefab_hash: 1307165496i32, @@ -30836,6 +31698,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -827912235i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureElevatorLevelFront".into(), prefab_hash: -827912235i32, @@ -30893,6 +31756,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2060648791i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureElevatorLevelIndustrial".into(), prefab_hash: 2060648791i32, @@ -30947,6 +31811,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 826144419i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureElevatorShaft".into(), prefab_hash: 826144419i32, @@ -31002,6 +31867,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1998354978i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureElevatorShaftIndustrial".into(), prefab_hash: 1998354978i32, @@ -31051,6 +31917,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1668452680i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureEmergencyButton".into(), prefab_hash: 1668452680i32, @@ -31104,6 +31971,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2035781224i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureEngineMountTypeA1".into(), prefab_hash: 2035781224i32, @@ -31119,6 +31987,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1429782576i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureEvaporationChamber".into(), prefab_hash: -1429782576i32, @@ -31200,6 +32069,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 195298587i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureExpansionValve".into(), prefab_hash: 195298587i32, @@ -31251,6 +32121,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1622567418i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFairingTypeA1".into(), prefab_hash: 1622567418i32, @@ -31266,6 +32137,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -104908736i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFairingTypeA2".into(), prefab_hash: -104908736i32, @@ -31281,6 +32153,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1900541738i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFairingTypeA3".into(), prefab_hash: -1900541738i32, @@ -31296,6 +32169,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -348054045i32, StructureCircuitHolderTemplate { + templateType: "StructureCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "StructureFiltration".into(), prefab_hash: -348054045i32, @@ -31425,6 +32299,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1529819532i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFlagSmall".into(), prefab_hash: -1529819532i32, @@ -31440,6 +32315,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1535893860i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureFlashingLight".into(), prefab_hash: -1535893860i32, @@ -31490,6 +32366,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 839890807i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureFlatBench".into(), prefab_hash: 839890807i32, @@ -31545,6 +32422,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1048813293i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFloorDrain".into(), prefab_hash: 1048813293i32, @@ -31564,6 +32442,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1432512808i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFrame".into(), prefab_hash: 1432512808i32, @@ -31580,6 +32459,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2112390778i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFrameCorner".into(), prefab_hash: -2112390778i32, @@ -31596,6 +32476,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 271315669i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFrameCornerCut".into(), prefab_hash: 271315669i32, @@ -31611,6 +32492,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1240951678i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFrameIron".into(), prefab_hash: -1240951678i32, @@ -31626,6 +32508,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -302420053i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFrameSide".into(), prefab_hash: -302420053i32, @@ -31642,6 +32525,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 958476921i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureFridgeBig".into(), prefab_hash: 958476921i32, @@ -31856,6 +32740,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 751887598i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureFridgeSmall".into(), prefab_hash: 751887598i32, @@ -31954,6 +32839,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1947944864i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureFurnace".into(), prefab_hash: 1947944864i32, @@ -32053,6 +32939,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1033024712i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFuselageTypeA1".into(), prefab_hash: 1033024712i32, @@ -32068,6 +32955,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1533287054i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFuselageTypeA2".into(), prefab_hash: -1533287054i32, @@ -32083,6 +32971,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1308115015i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFuselageTypeA4".into(), prefab_hash: 1308115015i32, @@ -32098,6 +32987,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 147395155i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureFuselageTypeC5".into(), prefab_hash: 147395155i32, @@ -32113,6 +33003,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1165997963i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGasGenerator".into(), prefab_hash: 1165997963i32, @@ -32190,6 +33081,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2104106366i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGasMixer".into(), prefab_hash: 2104106366i32, @@ -32247,6 +33139,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1252983604i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGasSensor".into(), prefab_hash: -1252983604i32, @@ -32313,6 +33206,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1632165346i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGasTankStorage".into(), prefab_hash: 1632165346i32, @@ -32390,6 +33284,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1680477930i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGasUmbilicalFemale".into(), prefab_hash: -1680477930i32, @@ -32438,6 +33333,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -648683847i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGasUmbilicalFemaleSide".into(), prefab_hash: -648683847i32, @@ -32486,6 +33382,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1814939203i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGasUmbilicalMale".into(), prefab_hash: -1814939203i32, @@ -32548,6 +33445,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -324331872i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGlassDoor".into(), prefab_hash: -324331872i32, @@ -32605,6 +33503,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -214232602i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGovernedGasEngine".into(), prefab_hash: -214232602i32, @@ -32678,6 +33577,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -619745681i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGroundBasedTelescope".into(), prefab_hash: -619745681i32, @@ -32744,6 +33644,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1758710260i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureGrowLight".into(), prefab_hash: -1758710260i32, @@ -32795,6 +33696,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 958056199i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureHarvie".into(), prefab_hash: 958056199i32, @@ -32895,6 +33797,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 944685608i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureHeatExchangeLiquidtoGas".into(), prefab_hash: 944685608i32, @@ -32948,6 +33851,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 21266291i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureHeatExchangerGastoGas".into(), prefab_hash: 21266291i32, @@ -33000,6 +33904,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -613784254i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureHeatExchangerLiquidtoLiquid".into(), prefab_hash: -613784254i32, @@ -33053,6 +33958,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1070427573i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureHorizontalAutoMiner".into(), prefab_hash: 1070427573i32, @@ -33126,6 +34032,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1888248335i32, StructureLogicDeviceConsumerMemoryTemplate { + templateType: "StructureLogicDeviceConsumerMemory".into(), prefab: PrefabInfo { prefab_name: "StructureHydraulicPipeBender".into(), prefab_hash: -1888248335i32, @@ -34374,6 +35281,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1441767298i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureHydroponicsStation".into(), prefab_hash: 1441767298i32, @@ -34559,6 +35467,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1464854517i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureHydroponicsTray".into(), prefab_hash: 1464854517i32, @@ -34584,6 +35493,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1841632400i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureHydroponicsTrayData".into(), prefab_hash: -1841632400i32, @@ -34687,6 +35597,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 443849486i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureIceCrusher".into(), prefab_hash: 443849486i32, @@ -34754,6 +35665,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1005491513i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureIgniter".into(), prefab_hash: 1005491513i32, @@ -34802,6 +35714,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1693382705i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInLineTankGas1x1".into(), prefab_hash: -1693382705i32, @@ -34821,6 +35734,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 35149429i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInLineTankGas1x2".into(), prefab_hash: 35149429i32, @@ -34840,6 +35754,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 543645499i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInLineTankLiquid1x1".into(), prefab_hash: 543645499i32, @@ -34859,6 +35774,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1183969663i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInLineTankLiquid1x2".into(), prefab_hash: -1183969663i32, @@ -34878,6 +35794,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1818267386i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedInLineTankGas1x1".into(), prefab_hash: 1818267386i32, @@ -34896,6 +35813,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -177610944i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedInLineTankGas1x2".into(), prefab_hash: -177610944i32, @@ -34914,6 +35832,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -813426145i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedInLineTankLiquid1x1".into(), prefab_hash: -813426145i32, @@ -34932,6 +35851,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1452100517i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedInLineTankLiquid1x2".into(), prefab_hash: 1452100517i32, @@ -34950,6 +35870,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1967711059i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeCorner".into(), prefab_hash: -1967711059i32, @@ -34969,6 +35890,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -92778058i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeCrossJunction".into(), prefab_hash: -92778058i32, @@ -34988,6 +35910,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1328210035i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeCrossJunction3".into(), prefab_hash: 1328210035i32, @@ -35007,6 +35930,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -783387184i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeCrossJunction4".into(), prefab_hash: -783387184i32, @@ -35026,6 +35950,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1505147578i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeCrossJunction5".into(), prefab_hash: -1505147578i32, @@ -35045,6 +35970,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1061164284i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeCrossJunction6".into(), prefab_hash: 1061164284i32, @@ -35064,6 +35990,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1713710802i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeLiquidCorner".into(), prefab_hash: 1713710802i32, @@ -35082,6 +36009,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1926651727i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeLiquidCrossJunction".into(), prefab_hash: 1926651727i32, @@ -35100,6 +36028,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 363303270i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeLiquidCrossJunction4".into(), prefab_hash: 363303270i32, @@ -35118,6 +36047,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1654694384i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeLiquidCrossJunction5".into(), prefab_hash: 1654694384i32, @@ -35136,6 +36066,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -72748982i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeLiquidCrossJunction6".into(), prefab_hash: -72748982i32, @@ -35154,6 +36085,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 295678685i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeLiquidStraight".into(), prefab_hash: 295678685i32, @@ -35172,6 +36104,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -532384855i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeLiquidTJunction".into(), prefab_hash: -532384855i32, @@ -35190,6 +36123,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2134172356i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeStraight".into(), prefab_hash: 2134172356i32, @@ -35209,6 +36143,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2076086215i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedPipeTJunction".into(), prefab_hash: -2076086215i32, @@ -35228,6 +36163,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -31273349i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedTankConnector".into(), prefab_hash: -31273349i32, @@ -35249,6 +36185,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1602030414i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureInsulatedTankConnectorLiquid".into(), prefab_hash: -1602030414i32, @@ -35270,6 +36207,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2096421875i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureInteriorDoorGlass".into(), prefab_hash: -2096421875i32, @@ -35321,6 +36259,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 847461335i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureInteriorDoorPadded".into(), prefab_hash: 847461335i32, @@ -35372,6 +36311,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1981698201i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureInteriorDoorPaddedThin".into(), prefab_hash: 1981698201i32, @@ -35423,6 +36363,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1182923101i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureInteriorDoorTriangle".into(), prefab_hash: -1182923101i32, @@ -35474,6 +36415,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -828056979i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureKlaxon".into(), prefab_hash: -828056979i32, @@ -35553,6 +36495,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -415420281i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureLadder".into(), prefab_hash: -415420281i32, @@ -35568,6 +36511,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1541734993i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureLadderEnd".into(), prefab_hash: 1541734993i32, @@ -35583,6 +36527,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1230658883i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLargeDirectHeatExchangeGastoGas".into(), prefab_hash: -1230658883i32, @@ -35633,6 +36578,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1412338038i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLargeDirectHeatExchangeGastoLiquid".into(), prefab_hash: 1412338038i32, @@ -35683,6 +36629,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 792686502i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLargeDirectHeatExchangeLiquidtoLiquid".into(), prefab_hash: 792686502i32, @@ -35733,6 +36680,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -566775170i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLargeExtendableRadiator".into(), prefab_hash: -566775170i32, @@ -35791,6 +36739,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1351081801i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLargeHangerDoor".into(), prefab_hash: -1351081801i32, @@ -35848,6 +36797,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1913391845i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLargeSatelliteDish".into(), prefab_hash: 1913391845i32, @@ -35913,6 +36863,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -558953231i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureLaunchMount".into(), prefab_hash: -558953231i32, @@ -35929,6 +36880,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 797794350i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLightLong".into(), prefab_hash: 797794350i32, @@ -35978,6 +36930,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1847265835i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLightLongAngled".into(), prefab_hash: 1847265835i32, @@ -36027,6 +36980,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 555215790i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLightLongWide".into(), prefab_hash: 555215790i32, @@ -36076,6 +37030,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1514476632i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLightRound".into(), prefab_hash: 1514476632i32, @@ -36125,6 +37080,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1592905386i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLightRoundAngled".into(), prefab_hash: 1592905386i32, @@ -36174,6 +37130,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1436121888i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLightRoundSmall".into(), prefab_hash: 1436121888i32, @@ -36223,6 +37180,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1687692899i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidDrain".into(), prefab_hash: 1687692899i32, @@ -36278,6 +37236,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2113838091i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidPipeAnalyzer".into(), prefab_hash: -2113838091i32, @@ -36349,6 +37308,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -287495560i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidPipeHeater".into(), prefab_hash: -287495560i32, @@ -36401,6 +37361,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -782453061i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidPipeOneWayValve".into(), prefab_hash: -782453061i32, @@ -36451,6 +37412,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2072805863i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidPipeRadiator".into(), prefab_hash: 2072805863i32, @@ -36496,6 +37458,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 482248766i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidPressureRegulator".into(), prefab_hash: 482248766i32, @@ -36552,6 +37515,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1098900430i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidTankBig".into(), prefab_hash: 1098900430i32, @@ -36626,6 +37590,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1430440215i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidTankBigInsulated".into(), prefab_hash: -1430440215i32, @@ -36700,6 +37665,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1988118157i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidTankSmall".into(), prefab_hash: 1988118157i32, @@ -36774,6 +37740,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 608607718i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidTankSmallInsulated".into(), prefab_hash: 608607718i32, @@ -36848,6 +37815,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1691898022i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidTankStorage".into(), prefab_hash: 1691898022i32, @@ -36925,6 +37893,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1051805505i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidTurboVolumePump".into(), prefab_hash: -1051805505i32, @@ -36987,6 +37956,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1734723642i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidUmbilicalFemale".into(), prefab_hash: 1734723642i32, @@ -37035,6 +38005,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1220870319i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidUmbilicalFemaleSide".into(), prefab_hash: 1220870319i32, @@ -37083,6 +38054,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1798420047i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidUmbilicalMale".into(), prefab_hash: -1798420047i32, @@ -37145,6 +38117,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1849974453i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidValve".into(), prefab_hash: 1849974453i32, @@ -37195,6 +38168,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -454028979i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLiquidVolumePump".into(), prefab_hash: -454028979i32, @@ -37250,6 +38224,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -647164662i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLockerSmall".into(), prefab_hash: -647164662i32, @@ -37335,6 +38310,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 264413729i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicBatchReader".into(), prefab_hash: 264413729i32, @@ -37387,6 +38363,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 436888930i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicBatchSlotReader".into(), prefab_hash: 436888930i32, @@ -37439,6 +38416,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1415443359i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicBatchWriter".into(), prefab_hash: 1415443359i32, @@ -37491,6 +38469,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 491845673i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicButton".into(), prefab_hash: 491845673i32, @@ -37540,6 +38519,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1489728908i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicCompare".into(), prefab_hash: -1489728908i32, @@ -37601,6 +38581,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 554524804i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicDial".into(), prefab_hash: 554524804i32, @@ -37649,6 +38630,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1942143074i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicGate".into(), prefab_hash: 1942143074i32, @@ -37712,6 +38694,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2077593121i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicHashGen".into(), prefab_hash: 2077593121i32, @@ -37760,6 +38743,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1657691323i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicMath".into(), prefab_hash: 1657691323i32, @@ -37824,6 +38808,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1160020195i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicMathUnary".into(), prefab_hash: -1160020195i32, @@ -37889,6 +38874,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -851746783i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicMemory".into(), prefab_hash: -851746783i32, @@ -37937,6 +38923,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 929022276i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicMinMax".into(), prefab_hash: 929022276i32, @@ -37995,6 +38982,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2096189278i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicMirror".into(), prefab_hash: 2096189278i32, @@ -38038,6 +39026,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -345383640i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicReader".into(), prefab_hash: -345383640i32, @@ -38090,6 +39079,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -124308857i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicReagentReader".into(), prefab_hash: -124308857i32, @@ -38142,6 +39132,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 876108549i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicRocketDownlink".into(), prefab_hash: 876108549i32, @@ -38190,6 +39181,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 546002924i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicRocketUplink".into(), prefab_hash: 546002924i32, @@ -38240,6 +39232,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1822736084i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicSelect".into(), prefab_hash: 1822736084i32, @@ -38301,6 +39294,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -767867194i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicSlotReader".into(), prefab_hash: -767867194i32, @@ -38353,6 +39347,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 873418029i32, StructureLogicDeviceMemoryTemplate { + templateType: "StructureLogicDeviceMemory".into(), prefab: PrefabInfo { prefab_name: "StructureLogicSorter".into(), prefab_hash: 873418029i32, @@ -38729,6 +39724,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1220484876i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicSwitch".into(), prefab_hash: 1220484876i32, @@ -38778,6 +39774,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 321604921i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicSwitch2".into(), prefab_hash: 321604921i32, @@ -38827,6 +39824,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -693235651i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicTransmitter".into(), prefab_hash: -693235651i32, @@ -38876,6 +39874,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1326019434i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicWriter".into(), prefab_hash: -1326019434i32, @@ -38928,6 +39927,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1321250424i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureLogicWriterSwitch".into(), prefab_hash: -1321250424i32, @@ -38981,6 +39981,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1808154199i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureManualHatch".into(), prefab_hash: -1808154199i32, @@ -39033,6 +40034,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1918215845i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureMediumConvectionRadiator".into(), prefab_hash: -1918215845i32, @@ -39086,6 +40088,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1169014183i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureMediumConvectionRadiatorLiquid".into(), prefab_hash: -1169014183i32, @@ -39139,6 +40142,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -566348148i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureMediumHangerDoor".into(), prefab_hash: -566348148i32, @@ -39196,6 +40200,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -975966237i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureMediumRadiator".into(), prefab_hash: -975966237i32, @@ -39249,6 +40254,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1141760613i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureMediumRadiatorLiquid".into(), prefab_hash: -1141760613i32, @@ -39302,6 +40308,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1093860567i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureMediumRocketGasFuelTank".into(), prefab_hash: -1093860567i32, @@ -39376,6 +40383,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1143639539i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureMediumRocketLiquidFuelTank".into(), prefab_hash: 1143639539i32, @@ -39450,6 +40458,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1713470563i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureMotionSensor".into(), prefab_hash: -1713470563i32, @@ -39499,6 +40508,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1898243702i32, StructureCircuitHolderTemplate { + templateType: "StructureCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "StructureNitrolyzer".into(), prefab_hash: 1898243702i32, @@ -39655,6 +40665,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 322782515i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureOccupancySensor".into(), prefab_hash: 322782515i32, @@ -39704,6 +40715,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1794932560i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureOverheadShortCornerLocker".into(), prefab_hash: -1794932560i32, @@ -39772,6 +40784,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1468249454i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureOverheadShortLocker".into(), prefab_hash: 1468249454i32, @@ -39910,6 +40923,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2066977095i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePassiveLargeRadiatorGas".into(), prefab_hash: 2066977095i32, @@ -39963,6 +40977,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 24786172i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePassiveLargeRadiatorLiquid".into(), prefab_hash: 24786172i32, @@ -40016,6 +41031,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1812364811i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePassiveLiquidDrain".into(), prefab_hash: 1812364811i32, @@ -40058,6 +41074,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 335498166i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePassiveVent".into(), prefab_hash: 335498166i32, @@ -40077,6 +41094,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1363077139i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePassiveVentInsulated".into(), prefab_hash: 1363077139i32, @@ -40095,6 +41113,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1674187440i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePassthroughHeatExchangerGasToGas".into(), prefab_hash: -1674187440i32, @@ -40147,6 +41166,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1928991265i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePassthroughHeatExchangerGasToLiquid".into(), prefab_hash: 1928991265i32, @@ -40200,6 +41220,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1472829583i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePassthroughHeatExchangerLiquidToLiquid".into(), prefab_hash: -1472829583i32, @@ -40253,6 +41274,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1434523206i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThickLandscapeLarge".into(), prefab_hash: -1434523206i32, @@ -40268,6 +41290,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2041566697i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThickLandscapeSmall".into(), prefab_hash: -2041566697i32, @@ -40283,6 +41306,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 950004659i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThickMountLandscapeLarge".into(), prefab_hash: 950004659i32, @@ -40298,6 +41322,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 347154462i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThickMountLandscapeSmall".into(), prefab_hash: 347154462i32, @@ -40313,6 +41338,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1459641358i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThickMountPortraitLarge".into(), prefab_hash: -1459641358i32, @@ -40328,6 +41354,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2066653089i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThickMountPortraitSmall".into(), prefab_hash: -2066653089i32, @@ -40343,6 +41370,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1686949570i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThickPortraitLarge".into(), prefab_hash: -1686949570i32, @@ -40358,6 +41386,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1218579821i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThickPortraitSmall".into(), prefab_hash: -1218579821i32, @@ -40373,6 +41402,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1418288625i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThinLandscapeLarge".into(), prefab_hash: -1418288625i32, @@ -40388,6 +41418,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2024250974i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThinLandscapeSmall".into(), prefab_hash: -2024250974i32, @@ -40403,6 +41434,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1146760430i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThinMountLandscapeLarge".into(), prefab_hash: -1146760430i32, @@ -40418,6 +41450,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1752493889i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThinMountLandscapeSmall".into(), prefab_hash: -1752493889i32, @@ -40433,6 +41466,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1094895077i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThinMountPortraitLarge".into(), prefab_hash: 1094895077i32, @@ -40448,6 +41482,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1835796040i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThinMountPortraitSmall".into(), prefab_hash: 1835796040i32, @@ -40463,6 +41498,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1212777087i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThinPortraitLarge".into(), prefab_hash: 1212777087i32, @@ -40478,6 +41514,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1684488658i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePictureFrameThinPortraitSmall".into(), prefab_hash: 1684488658i32, @@ -40493,6 +41530,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 435685051i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeAnalysizer".into(), prefab_hash: 435685051i32, @@ -40565,6 +41603,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1785673561i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeCorner".into(), prefab_hash: -1785673561i32, @@ -40584,6 +41623,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 465816159i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeCowl".into(), prefab_hash: 465816159i32, @@ -40602,6 +41642,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1405295588i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeCrossJunction".into(), prefab_hash: -1405295588i32, @@ -40621,6 +41662,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2038427184i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeCrossJunction3".into(), prefab_hash: 2038427184i32, @@ -40640,6 +41682,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -417629293i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeCrossJunction4".into(), prefab_hash: -417629293i32, @@ -40659,6 +41702,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1877193979i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeCrossJunction5".into(), prefab_hash: -1877193979i32, @@ -40678,6 +41722,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 152378047i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeCrossJunction6".into(), prefab_hash: 152378047i32, @@ -40697,6 +41742,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -419758574i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeHeater".into(), prefab_hash: -419758574i32, @@ -40749,6 +41795,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1286441942i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeIgniter".into(), prefab_hash: 1286441942i32, @@ -40798,6 +41845,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2068497073i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeInsulatedLiquidCrossJunction".into(), prefab_hash: -2068497073i32, @@ -40816,6 +41864,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -999721119i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLabel".into(), prefab_hash: -999721119i32, @@ -40858,6 +41907,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1856720921i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLiquidCorner".into(), prefab_hash: -1856720921i32, @@ -40877,6 +41927,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1848735691i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLiquidCrossJunction".into(), prefab_hash: 1848735691i32, @@ -40896,6 +41947,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1628087508i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLiquidCrossJunction3".into(), prefab_hash: 1628087508i32, @@ -40915,6 +41967,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -9555593i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLiquidCrossJunction4".into(), prefab_hash: -9555593i32, @@ -40934,6 +41987,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2006384159i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLiquidCrossJunction5".into(), prefab_hash: -2006384159i32, @@ -40953,6 +42007,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 291524699i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLiquidCrossJunction6".into(), prefab_hash: 291524699i32, @@ -40972,6 +42027,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 667597982i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLiquidStraight".into(), prefab_hash: 667597982i32, @@ -40991,6 +42047,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 262616717i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeLiquidTJunction".into(), prefab_hash: 262616717i32, @@ -41010,6 +42067,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1798362329i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeMeter".into(), prefab_hash: -1798362329i32, @@ -41052,6 +42110,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1580412404i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeOneWayValve".into(), prefab_hash: 1580412404i32, @@ -41102,6 +42161,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1305252611i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeOrgan".into(), prefab_hash: 1305252611i32, @@ -41121,6 +42181,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1696603168i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeRadiator".into(), prefab_hash: 1696603168i32, @@ -41166,6 +42227,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -399883995i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeRadiatorFlat".into(), prefab_hash: -399883995i32, @@ -41211,6 +42273,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2024754523i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePipeRadiatorFlatLiquid".into(), prefab_hash: 2024754523i32, @@ -41256,6 +42319,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 73728932i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeStraight".into(), prefab_hash: 73728932i32, @@ -41275,6 +42339,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -913817472i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePipeTJunction".into(), prefab_hash: -913817472i32, @@ -41294,6 +42359,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1125641329i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructurePlanter".into(), prefab_hash: -1125641329i32, @@ -41319,6 +42385,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1559586682i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructurePlatformLadderOpen".into(), prefab_hash: 1559586682i32, @@ -41334,6 +42401,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 989835703i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructurePlinth".into(), prefab_hash: 989835703i32, @@ -41352,6 +42420,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -899013427i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePortablesConnector".into(), prefab_hash: -899013427i32, @@ -41416,6 +42485,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -782951720i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePowerConnector".into(), prefab_hash: -782951720i32, @@ -41478,6 +42548,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -65087121i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePowerTransmitter".into(), prefab_hash: -65087121i32, @@ -41540,6 +42611,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -327468845i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePowerTransmitterOmni".into(), prefab_hash: -327468845i32, @@ -41590,6 +42662,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1195820278i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePowerTransmitterReceiver".into(), prefab_hash: 1195820278i32, @@ -41652,6 +42725,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 101488029i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePowerUmbilicalFemale".into(), prefab_hash: 101488029i32, @@ -41698,6 +42772,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1922506192i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePowerUmbilicalFemaleSide".into(), prefab_hash: 1922506192i32, @@ -41744,6 +42819,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1529453938i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePowerUmbilicalMale".into(), prefab_hash: 1529453938i32, @@ -41803,6 +42879,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 938836756i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePoweredVent".into(), prefab_hash: 938836756i32, @@ -41862,6 +42939,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -785498334i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePoweredVentLarge".into(), prefab_hash: -785498334i32, @@ -41921,6 +42999,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 23052817i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePressurantValve".into(), prefab_hash: 23052817i32, @@ -41977,6 +43056,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -624011170i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePressureFedGasEngine".into(), prefab_hash: -624011170i32, @@ -42051,6 +43131,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 379750958i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePressureFedLiquidEngine".into(), prefab_hash: 379750958i32, @@ -42127,6 +43208,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2008706143i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePressurePlateLarge".into(), prefab_hash: -2008706143i32, @@ -42175,6 +43257,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1269458680i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePressurePlateMedium".into(), prefab_hash: 1269458680i32, @@ -42223,6 +43306,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1536471028i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePressurePlateSmall".into(), prefab_hash: -1536471028i32, @@ -42271,6 +43355,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 209854039i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePressureRegulator".into(), prefab_hash: 209854039i32, @@ -42326,6 +43411,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 568800213i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureProximitySensor".into(), prefab_hash: 568800213i32, @@ -42375,6 +43461,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2031440019i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePumpedLiquidEngine".into(), prefab_hash: -2031440019i32, @@ -42451,6 +43538,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -737232128i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructurePurgeValve".into(), prefab_hash: -737232128i32, @@ -42506,6 +43594,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1756913871i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureRailing".into(), prefab_hash: -1756913871i32, @@ -42521,6 +43610,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1633947337i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureRecycler".into(), prefab_hash: -1633947337i32, @@ -42604,6 +43694,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1577831321i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureRefrigeratedVendingMachine".into(), prefab_hash: -1577831321i32, @@ -42838,6 +43929,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2027713511i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureReinforcedCompositeWindow".into(), prefab_hash: 2027713511i32, @@ -42854,6 +43946,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -816454272i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureReinforcedCompositeWindowSteel".into(), prefab_hash: -816454272i32, @@ -42870,6 +43963,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1939061729i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureReinforcedWallPaddedWindow".into(), prefab_hash: 1939061729i32, @@ -42886,6 +43980,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 158502707i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureReinforcedWallPaddedWindowThin".into(), prefab_hash: 158502707i32, @@ -42902,6 +43997,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 808389066i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureRocketAvionics".into(), prefab_hash: 808389066i32, @@ -43002,6 +44098,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 997453927i32, StructureLogicDeviceMemoryTemplate { + templateType: "StructureLogicDeviceMemory".into(), prefab: PrefabInfo { prefab_name: "StructureRocketCelestialTracker".into(), prefab_hash: 997453927i32, @@ -43122,6 +44219,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 150135861i32, StructureCircuitHolderTemplate { + templateType: "StructureCircuitHolder".into(), prefab: PrefabInfo { prefab_name: "StructureRocketCircuitHousing".into(), prefab_hash: 150135861i32, @@ -43191,6 +44289,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 178472613i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureRocketEngineTiny".into(), prefab_hash: 178472613i32, @@ -43266,6 +44365,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1781051034i32, StructureLogicDeviceConsumerMemoryTemplate { + templateType: "StructureLogicDeviceConsumerMemory".into(), prefab: PrefabInfo { prefab_name: "StructureRocketManufactory".into(), prefab_hash: 1781051034i32, @@ -43969,6 +45069,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2087223687i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureRocketMiner".into(), prefab_hash: -2087223687i32, @@ -44035,6 +45136,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2014252591i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureRocketScanner".into(), prefab_hash: 2014252591i32, @@ -44091,6 +45193,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -654619479i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureRocketTower".into(), prefab_hash: -654619479i32, @@ -44106,6 +45209,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 518925193i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureRocketTransformerSmall".into(), prefab_hash: 518925193i32, @@ -44161,6 +45265,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 806513938i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureRover".into(), prefab_hash: 806513938i32, @@ -44176,6 +45281,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1875856925i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSDBHopper".into(), prefab_hash: -1875856925i32, @@ -44229,6 +45335,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 467225612i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSDBHopperAdvanced".into(), prefab_hash: 467225612i32, @@ -44284,6 +45391,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1155865682i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSDBSilo".into(), prefab_hash: 1155865682i32, @@ -44358,6 +45466,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 439026183i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSatelliteDish".into(), prefab_hash: 439026183i32, @@ -44423,6 +45532,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -641491515i32, StructureLogicDeviceConsumerMemoryTemplate { + templateType: "StructureLogicDeviceConsumerMemory".into(), prefab: PrefabInfo { prefab_name: "StructureSecurityPrinter".into(), prefab_hash: -641491515i32, @@ -45057,6 +46167,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1172114950i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureShelf".into(), prefab_hash: 1172114950i32, @@ -45080,6 +46191,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 182006674i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureShelfMedium".into(), prefab_hash: 182006674i32, @@ -45260,6 +46372,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1330754486i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureShortCornerLocker".into(), prefab_hash: 1330754486i32, @@ -45328,6 +46441,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -554553467i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureShortLocker".into(), prefab_hash: -554553467i32, @@ -45466,6 +46580,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -775128944i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureShower".into(), prefab_hash: -775128944i32, @@ -45517,6 +46632,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1081797501i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureShowerPowered".into(), prefab_hash: -1081797501i32, @@ -45571,6 +46687,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 879058460i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSign1x1".into(), prefab_hash: 879058460i32, @@ -45612,6 +46729,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 908320837i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSign2x1".into(), prefab_hash: 908320837i32, @@ -45653,6 +46771,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -492611i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSingleBed".into(), prefab_hash: -492611i32, @@ -45708,6 +46827,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1467449329i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSleeper".into(), prefab_hash: -1467449329i32, @@ -45782,6 +46902,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1213495833i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSleeperLeft".into(), prefab_hash: 1213495833i32, @@ -45854,6 +46975,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1812330717i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSleeperRight".into(), prefab_hash: -1812330717i32, @@ -45926,6 +47048,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1300059018i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSleeperVertical".into(), prefab_hash: -1300059018i32, @@ -45998,6 +47121,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1382098999i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSleeperVerticalDroid".into(), prefab_hash: 1382098999i32, @@ -46055,6 +47179,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1310303582i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSmallDirectHeatExchangeGastoGas".into(), prefab_hash: 1310303582i32, @@ -46105,6 +47230,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1825212016i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSmallDirectHeatExchangeLiquidtoGas".into(), prefab_hash: 1825212016i32, @@ -46155,6 +47281,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -507770416i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSmallDirectHeatExchangeLiquidtoLiquid".into(), prefab_hash: -507770416i32, @@ -46205,6 +47332,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2138748650i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSmallSatelliteDish".into(), prefab_hash: -2138748650i32, @@ -46270,6 +47398,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1633000411i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureSmallTableBacklessDouble".into(), prefab_hash: -1633000411i32, @@ -46285,6 +47414,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1897221677i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureSmallTableBacklessSingle".into(), prefab_hash: -1897221677i32, @@ -46300,6 +47430,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1260651529i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureSmallTableDinnerSingle".into(), prefab_hash: 1260651529i32, @@ -46315,6 +47446,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -660451023i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureSmallTableRectangleDouble".into(), prefab_hash: -660451023i32, @@ -46330,6 +47462,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -924678969i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureSmallTableRectangleSingle".into(), prefab_hash: -924678969i32, @@ -46345,6 +47478,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -19246131i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureSmallTableThickDouble".into(), prefab_hash: -19246131i32, @@ -46360,6 +47494,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -291862981i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureSmallTableThickSingle".into(), prefab_hash: -291862981i32, @@ -46375,6 +47510,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2045627372i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSolarPanel".into(), prefab_hash: -2045627372i32, @@ -46426,6 +47562,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1554349863i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSolarPanel45".into(), prefab_hash: -1554349863i32, @@ -46477,6 +47614,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 930865127i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSolarPanel45Reinforced".into(), prefab_hash: 930865127i32, @@ -46527,6 +47665,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -539224550i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSolarPanelDual".into(), prefab_hash: -539224550i32, @@ -46579,6 +47718,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1545574413i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSolarPanelDualReinforced".into(), prefab_hash: -1545574413i32, @@ -46630,6 +47770,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1968102968i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSolarPanelFlat".into(), prefab_hash: 1968102968i32, @@ -46681,6 +47822,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1697196770i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSolarPanelFlatReinforced".into(), prefab_hash: 1697196770i32, @@ -46731,6 +47873,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -934345724i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSolarPanelReinforced".into(), prefab_hash: -934345724i32, @@ -46781,6 +47924,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 813146305i32, StructureLogicDeviceConsumerTemplate { + templateType: "StructureLogicDeviceConsumer".into(), prefab: PrefabInfo { prefab_name: "StructureSolidFuelGenerator".into(), prefab_hash: 813146305i32, @@ -46861,6 +48005,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1009150565i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSorter".into(), prefab_hash: -1009150565i32, @@ -46970,6 +48115,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2020231820i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureStacker".into(), prefab_hash: -2020231820i32, @@ -47067,6 +48213,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1585641623i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureStackerReverse".into(), prefab_hash: 1585641623i32, @@ -47164,6 +48311,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1405018945i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairs4x2".into(), prefab_hash: 1405018945i32, @@ -47179,6 +48327,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 155214029i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairs4x2RailL".into(), prefab_hash: 155214029i32, @@ -47194,6 +48343,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -212902482i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairs4x2RailR".into(), prefab_hash: -212902482i32, @@ -47209,6 +48359,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1088008720i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairs4x2Rails".into(), prefab_hash: -1088008720i32, @@ -47224,6 +48375,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 505924160i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairwellBackLeft".into(), prefab_hash: 505924160i32, @@ -47239,6 +48391,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -862048392i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairwellBackPassthrough".into(), prefab_hash: -862048392i32, @@ -47254,6 +48407,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2128896573i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairwellBackRight".into(), prefab_hash: -2128896573i32, @@ -47269,6 +48423,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -37454456i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairwellFrontLeft".into(), prefab_hash: -37454456i32, @@ -47284,6 +48439,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1625452928i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairwellFrontPassthrough".into(), prefab_hash: -1625452928i32, @@ -47299,6 +48455,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 340210934i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairwellFrontRight".into(), prefab_hash: 340210934i32, @@ -47314,6 +48471,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2049879875i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureStairwellNoDoors".into(), prefab_hash: 2049879875i32, @@ -47329,6 +48487,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -260316435i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureStirlingEngine".into(), prefab_hash: -260316435i32, @@ -47417,6 +48576,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -793623899i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureStorageLocker".into(), prefab_hash: -793623899i32, @@ -47729,6 +48889,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 255034731i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureSuitStorage".into(), prefab_hash: 255034731i32, @@ -47837,6 +48998,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1606848156i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTankBig".into(), prefab_hash: -1606848156i32, @@ -47912,6 +49074,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1280378227i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTankBigInsulated".into(), prefab_hash: 1280378227i32, @@ -47987,6 +49150,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1276379454i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureTankConnector".into(), prefab_hash: -1276379454i32, @@ -48009,6 +49173,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1331802518i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureTankConnectorLiquid".into(), prefab_hash: 1331802518i32, @@ -48031,6 +49196,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1013514688i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTankSmall".into(), prefab_hash: 1013514688i32, @@ -48106,6 +49272,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 955744474i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTankSmallAir".into(), prefab_hash: 955744474i32, @@ -48181,6 +49348,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2102454415i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTankSmallFuel".into(), prefab_hash: 2102454415i32, @@ -48256,6 +49424,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 272136332i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTankSmallInsulated".into(), prefab_hash: 272136332i32, @@ -48331,6 +49500,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -465741100i32, StructureLogicDeviceConsumerMemoryTemplate { + templateType: "StructureLogicDeviceConsumerMemory".into(), prefab: PrefabInfo { prefab_name: "StructureToolManufactory".into(), prefab_hash: -465741100i32, @@ -49520,6 +50690,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1473807953i32, StructureSlotsTemplate { + templateType: "StructureSlots".into(), prefab: PrefabInfo { prefab_name: "StructureTorpedoRack".into(), prefab_hash: 1473807953i32, @@ -49547,6 +50718,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1570931620i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTraderWaypoint".into(), prefab_hash: 1570931620i32, @@ -49596,6 +50768,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1423212473i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTransformer".into(), prefab_hash: -1423212473i32, @@ -49651,6 +50824,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1065725831i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTransformerMedium".into(), prefab_hash: -1065725831i32, @@ -49705,6 +50879,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 833912764i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTransformerMediumReversed".into(), prefab_hash: 833912764i32, @@ -49759,6 +50934,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -890946730i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTransformerSmall".into(), prefab_hash: -890946730i32, @@ -49813,6 +50989,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1054059374i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTransformerSmallReversed".into(), prefab_hash: 1054059374i32, @@ -49867,6 +51044,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1282191063i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTurbineGenerator".into(), prefab_hash: 1282191063i32, @@ -49915,6 +51093,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1310794736i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureTurboVolumePump".into(), prefab_hash: 1310794736i32, @@ -49976,6 +51155,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 750118160i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureUnloader".into(), prefab_hash: 750118160i32, @@ -50062,6 +51242,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1622183451i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureUprightWindTurbine".into(), prefab_hash: 1622183451i32, @@ -50110,6 +51291,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -692036078i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureValve".into(), prefab_hash: -692036078i32, @@ -50160,6 +51342,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -443130773i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureVendingMachine".into(), prefab_hash: -443130773i32, @@ -50370,6 +51553,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -321403609i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureVolumePump".into(), prefab_hash: -321403609i32, @@ -50425,6 +51609,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -858143148i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallArch".into(), prefab_hash: -858143148i32, @@ -50440,6 +51625,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1649708822i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallArchArrow".into(), prefab_hash: 1649708822i32, @@ -50455,6 +51641,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1794588890i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallArchCornerRound".into(), prefab_hash: 1794588890i32, @@ -50470,6 +51657,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1963016580i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallArchCornerSquare".into(), prefab_hash: -1963016580i32, @@ -50485,6 +51673,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1281911841i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallArchCornerTriangle".into(), prefab_hash: 1281911841i32, @@ -50500,6 +51689,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1182510648i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallArchPlating".into(), prefab_hash: 1182510648i32, @@ -50515,6 +51705,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 782529714i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallArchTwoTone".into(), prefab_hash: 782529714i32, @@ -50530,6 +51721,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -739292323i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWallCooler".into(), prefab_hash: -739292323i32, @@ -50598,6 +51790,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1635864154i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallFlat".into(), prefab_hash: 1635864154i32, @@ -50613,6 +51806,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 898708250i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallFlatCornerRound".into(), prefab_hash: 898708250i32, @@ -50628,6 +51822,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 298130111i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallFlatCornerSquare".into(), prefab_hash: 298130111i32, @@ -50643,6 +51838,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2097419366i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallFlatCornerTriangle".into(), prefab_hash: 2097419366i32, @@ -50658,6 +51854,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1161662836i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallFlatCornerTriangleFlat".into(), prefab_hash: -1161662836i32, @@ -50673,6 +51870,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1979212240i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallGeometryCorner".into(), prefab_hash: 1979212240i32, @@ -50688,6 +51886,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1049735537i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallGeometryStreight".into(), prefab_hash: 1049735537i32, @@ -50703,6 +51902,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1602758612i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallGeometryT".into(), prefab_hash: 1602758612i32, @@ -50718,6 +51918,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1427845483i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallGeometryTMirrored".into(), prefab_hash: -1427845483i32, @@ -50733,6 +51934,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 24258244i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWallHeater".into(), prefab_hash: 24258244i32, @@ -50798,6 +52000,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1287324802i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallIron".into(), prefab_hash: 1287324802i32, @@ -50813,6 +52016,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1485834215i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallIron02".into(), prefab_hash: 1485834215i32, @@ -50828,6 +52032,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 798439281i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallIron03".into(), prefab_hash: 798439281i32, @@ -50843,6 +52048,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1309433134i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallIron04".into(), prefab_hash: -1309433134i32, @@ -50858,6 +52064,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1492930217i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallLargePanel".into(), prefab_hash: 1492930217i32, @@ -50873,6 +52080,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -776581573i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallLargePanelArrow".into(), prefab_hash: -776581573i32, @@ -50888,6 +52096,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1860064656i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWallLight".into(), prefab_hash: -1860064656i32, @@ -50937,6 +52146,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1306415132i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWallLightBattery".into(), prefab_hash: -1306415132i32, @@ -51002,6 +52212,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1590330637i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedArch".into(), prefab_hash: 1590330637i32, @@ -51017,6 +52228,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1126688298i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedArchCorner".into(), prefab_hash: -1126688298i32, @@ -51032,6 +52244,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1171987947i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedArchLightFittingTop".into(), prefab_hash: 1171987947i32, @@ -51047,6 +52260,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1546743960i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedArchLightsFittings".into(), prefab_hash: -1546743960i32, @@ -51062,6 +52276,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -155945899i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedCorner".into(), prefab_hash: -155945899i32, @@ -51077,6 +52292,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1183203913i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedCornerThin".into(), prefab_hash: 1183203913i32, @@ -51092,6 +52308,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 8846501i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedNoBorder".into(), prefab_hash: 8846501i32, @@ -51107,6 +52324,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 179694804i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedNoBorderCorner".into(), prefab_hash: 179694804i32, @@ -51122,6 +52340,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1611559100i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedThinNoBorder".into(), prefab_hash: -1611559100i32, @@ -51137,6 +52356,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1769527556i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedThinNoBorderCorner".into(), prefab_hash: 1769527556i32, @@ -51152,6 +52372,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2087628940i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedWindow".into(), prefab_hash: 2087628940i32, @@ -51167,6 +52388,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -37302931i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddedWindowThin".into(), prefab_hash: -37302931i32, @@ -51182,6 +52404,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 635995024i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPadding".into(), prefab_hash: 635995024i32, @@ -51197,6 +52420,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1243329828i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddingArchVent".into(), prefab_hash: -1243329828i32, @@ -51212,6 +52436,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2024882687i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddingLightFitting".into(), prefab_hash: 2024882687i32, @@ -51227,6 +52452,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1102403554i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPaddingThin".into(), prefab_hash: -1102403554i32, @@ -51242,6 +52468,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 26167457i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallPlating".into(), prefab_hash: 26167457i32, @@ -51257,6 +52484,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 619828719i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallSmallPanelsAndHatch".into(), prefab_hash: 619828719i32, @@ -51272,6 +52500,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -639306697i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallSmallPanelsArrow".into(), prefab_hash: -639306697i32, @@ -51287,6 +52516,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 386820253i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallSmallPanelsMonoChrome".into(), prefab_hash: 386820253i32, @@ -51302,6 +52532,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1407480603i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallSmallPanelsOpen".into(), prefab_hash: -1407480603i32, @@ -51317,6 +52548,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1709994581i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallSmallPanelsTwoTone".into(), prefab_hash: 1709994581i32, @@ -51332,6 +52564,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1177469307i32, StructureTemplate { + templateType: "Structure".into(), prefab: PrefabInfo { prefab_name: "StructureWallVent".into(), prefab_hash: -1177469307i32, @@ -51347,6 +52580,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1178961954i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWaterBottleFiller".into(), prefab_hash: -1178961954i32, @@ -51429,6 +52663,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1433754995i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWaterBottleFillerBottom".into(), prefab_hash: 1433754995i32, @@ -51511,6 +52746,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -756587791i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWaterBottleFillerPowered".into(), prefab_hash: -756587791i32, @@ -51596,6 +52832,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1986658780i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWaterBottleFillerPoweredBottom".into(), prefab_hash: 1986658780i32, @@ -51681,6 +52918,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -517628750i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWaterDigitalValve".into(), prefab_hash: -517628750i32, @@ -51736,6 +52974,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 433184168i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWaterPipeMeter".into(), prefab_hash: 433184168i32, @@ -51777,6 +53016,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 887383294i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWaterPurifier".into(), prefab_hash: 887383294i32, @@ -51838,6 +53078,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1369060582i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWaterWallCooler".into(), prefab_hash: -1369060582i32, @@ -51905,6 +53146,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1997212478i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWeatherStation".into(), prefab_hash: 1997212478i32, @@ -51966,6 +53208,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2082355173i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWindTurbine".into(), prefab_hash: -2082355173i32, @@ -52015,6 +53258,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 2056377335i32, StructureLogicDeviceTemplate { + templateType: "StructureLogicDevice".into(), prefab: PrefabInfo { prefab_name: "StructureWindowShutter".into(), prefab_hash: 2056377335i32, @@ -52073,6 +53317,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1700018136i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ToolPrinterMod".into(), prefab_hash: 1700018136i32, @@ -52097,6 +53342,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 94730034i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "ToyLuna".into(), prefab_hash: 94730034i32, @@ -52120,6 +53366,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -2083426457i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "UniformCommander".into(), prefab_hash: -2083426457i32, @@ -52152,6 +53399,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -48342840i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "UniformMarine".into(), prefab_hash: -48342840i32, @@ -52183,6 +53431,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 810053150i32, ItemSlotsTemplate { + templateType: "ItemSlots".into(), prefab: PrefabInfo { prefab_name: "UniformOrangeJumpSuit".into(), prefab_hash: 810053150i32, @@ -52214,6 +53463,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 789494694i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "WeaponEnergy".into(), prefab_hash: 789494694i32, @@ -52265,6 +53515,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -385323479i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "WeaponPistolEnergy".into(), prefab_hash: -385323479i32, @@ -52323,6 +53574,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( 1154745374i32, ItemLogicTemplate { + templateType: "ItemLogic".into(), prefab: PrefabInfo { prefab_name: "WeaponRifleEnergy".into(), prefab_hash: 1154745374i32, @@ -52381,6 +53633,7 @@ pub fn build_prefab_database() -> std::collections::BTreeMap< map.insert( -1102977898i32, ItemTemplate { + templateType: "Item".into(), prefab: PrefabInfo { prefab_name: "WeaponTorpedo".into(), prefab_hash: -1102977898i32, diff --git a/stationeers_data/src/templates.rs b/stationeers_data/src/templates.rs index 2c60da7..d3eb3f4 100644 --- a/stationeers_data/src/templates.rs +++ b/stationeers_data/src/templates.rs @@ -13,7 +13,7 @@ use wasm_bindgen::prelude::*; #[derive(Clone, Debug, PartialEq, PartialOrd, Serialize, Deserialize)] #[cfg_attr(feature = "tsify", derive(Tsify), tsify(into_wasm_abi, from_wasm_abi))] -#[serde(untagged)] +#[serde(tag = "templateType")] pub enum ObjectTemplate { Structure(StructureTemplate), StructureSlots(StructureSlotsTemplate), diff --git a/www/data/database.json b/www/data/database.json index 7c9fb13..5d51e87 100644 --- a/www/data/database.json +++ b/www/data/database.json @@ -1,6 +1,7 @@ { "prefabs": { "AccessCardBlack": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardBlack", "prefab_hash": -1330388999, @@ -16,6 +17,7 @@ } }, "AccessCardBlue": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardBlue", "prefab_hash": -1411327657, @@ -31,6 +33,7 @@ } }, "AccessCardBrown": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardBrown", "prefab_hash": 1412428165, @@ -46,6 +49,7 @@ } }, "AccessCardGray": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardGray", "prefab_hash": -1339479035, @@ -61,6 +65,7 @@ } }, "AccessCardGreen": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardGreen", "prefab_hash": -374567952, @@ -76,6 +81,7 @@ } }, "AccessCardKhaki": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardKhaki", "prefab_hash": 337035771, @@ -91,6 +97,7 @@ } }, "AccessCardOrange": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardOrange", "prefab_hash": -332896929, @@ -106,6 +113,7 @@ } }, "AccessCardPink": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardPink", "prefab_hash": 431317557, @@ -121,6 +129,7 @@ } }, "AccessCardPurple": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardPurple", "prefab_hash": 459843265, @@ -136,6 +145,7 @@ } }, "AccessCardRed": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardRed", "prefab_hash": -1713748313, @@ -151,6 +161,7 @@ } }, "AccessCardWhite": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardWhite", "prefab_hash": 2079959157, @@ -166,6 +177,7 @@ } }, "AccessCardYellow": { + "templateType": "Item", "prefab": { "prefab_name": "AccessCardYellow", "prefab_hash": 568932536, @@ -181,6 +193,7 @@ } }, "ApplianceChemistryStation": { + "templateType": "ItemConsumer", "prefab": { "prefab_name": "ApplianceChemistryStation", "prefab_hash": 1365789392, @@ -213,6 +226,7 @@ } }, "ApplianceDeskLampLeft": { + "templateType": "Item", "prefab": { "prefab_name": "ApplianceDeskLampLeft", "prefab_hash": -1683849799, @@ -228,6 +242,7 @@ } }, "ApplianceDeskLampRight": { + "templateType": "Item", "prefab": { "prefab_name": "ApplianceDeskLampRight", "prefab_hash": 1174360780, @@ -243,6 +258,7 @@ } }, "ApplianceMicrowave": { + "templateType": "ItemConsumer", "prefab": { "prefab_name": "ApplianceMicrowave", "prefab_hash": -1136173965, @@ -285,6 +301,7 @@ } }, "AppliancePackagingMachine": { + "templateType": "ItemConsumer", "prefab": { "prefab_name": "AppliancePackagingMachine", "prefab_hash": -749191906, @@ -323,6 +340,7 @@ } }, "AppliancePaintMixer": { + "templateType": "ItemConsumer", "prefab": { "prefab_name": "AppliancePaintMixer", "prefab_hash": -1339716113, @@ -355,6 +373,7 @@ } }, "AppliancePlantGeneticAnalyzer": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "AppliancePlantGeneticAnalyzer", "prefab_hash": -1303038067, @@ -376,6 +395,7 @@ ] }, "AppliancePlantGeneticSplicer": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "AppliancePlantGeneticSplicer", "prefab_hash": -1094868323, @@ -401,6 +421,7 @@ ] }, "AppliancePlantGeneticStabilizer": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "AppliancePlantGeneticStabilizer", "prefab_hash": 871432335, @@ -422,6 +443,7 @@ ] }, "ApplianceReagentProcessor": { + "templateType": "ItemConsumer", "prefab": { "prefab_name": "ApplianceReagentProcessor", "prefab_hash": 1260918085, @@ -461,6 +483,7 @@ } }, "ApplianceSeedTray": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ApplianceSeedTray", "prefab_hash": 142831994, @@ -526,6 +549,7 @@ ] }, "ApplianceTabletDock": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ApplianceTabletDock", "prefab_hash": 1853941363, @@ -547,6 +571,7 @@ ] }, "AutolathePrinterMod": { + "templateType": "Item", "prefab": { "prefab_name": "AutolathePrinterMod", "prefab_hash": 221058307, @@ -562,6 +587,7 @@ } }, "Battery_Wireless_cell": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "Battery_Wireless_cell", "prefab_hash": -462415758, @@ -597,6 +623,7 @@ "slots": [] }, "Battery_Wireless_cell_Big": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "Battery_Wireless_cell_Big", "prefab_hash": -41519077, @@ -632,6 +659,7 @@ "slots": [] }, "CardboardBox": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "CardboardBox", "prefab_hash": -1976947556, @@ -673,6 +701,7 @@ ] }, "CartridgeAccessController": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeAccessController", "prefab_hash": -1634532552, @@ -688,6 +717,7 @@ } }, "CartridgeAtmosAnalyser": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeAtmosAnalyser", "prefab_hash": -1550278665, @@ -703,6 +733,7 @@ } }, "CartridgeConfiguration": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeConfiguration", "prefab_hash": -932136011, @@ -718,6 +749,7 @@ } }, "CartridgeElectronicReader": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeElectronicReader", "prefab_hash": -1462180176, @@ -733,6 +765,7 @@ } }, "CartridgeGPS": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeGPS", "prefab_hash": -1957063345, @@ -748,6 +781,7 @@ } }, "CartridgeGuide": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeGuide", "prefab_hash": 872720793, @@ -763,6 +797,7 @@ } }, "CartridgeMedicalAnalyser": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeMedicalAnalyser", "prefab_hash": -1116110181, @@ -778,6 +813,7 @@ } }, "CartridgeNetworkAnalyser": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeNetworkAnalyser", "prefab_hash": 1606989119, @@ -793,6 +829,7 @@ } }, "CartridgeOreScanner": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeOreScanner", "prefab_hash": -1768732546, @@ -808,6 +845,7 @@ } }, "CartridgeOreScannerColor": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeOreScannerColor", "prefab_hash": 1738236580, @@ -823,6 +861,7 @@ } }, "CartridgePlantAnalyser": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgePlantAnalyser", "prefab_hash": 1101328282, @@ -838,6 +877,7 @@ } }, "CartridgeTracker": { + "templateType": "Item", "prefab": { "prefab_name": "CartridgeTracker", "prefab_hash": 81488783, @@ -853,6 +893,7 @@ } }, "CircuitboardAdvAirlockControl": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardAdvAirlockControl", "prefab_hash": 1633663176, @@ -868,6 +909,7 @@ } }, "CircuitboardAirControl": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardAirControl", "prefab_hash": 1618019559, @@ -883,6 +925,7 @@ } }, "CircuitboardAirlockControl": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardAirlockControl", "prefab_hash": 912176135, @@ -898,6 +941,7 @@ } }, "CircuitboardCameraDisplay": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardCameraDisplay", "prefab_hash": -412104504, @@ -913,6 +957,7 @@ } }, "CircuitboardDoorControl": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardDoorControl", "prefab_hash": 855694771, @@ -928,6 +973,7 @@ } }, "CircuitboardGasDisplay": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardGasDisplay", "prefab_hash": -82343730, @@ -943,6 +989,7 @@ } }, "CircuitboardGraphDisplay": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardGraphDisplay", "prefab_hash": 1344368806, @@ -958,6 +1005,7 @@ } }, "CircuitboardHashDisplay": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardHashDisplay", "prefab_hash": 1633074601, @@ -973,6 +1021,7 @@ } }, "CircuitboardModeControl": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardModeControl", "prefab_hash": -1134148135, @@ -988,6 +1037,7 @@ } }, "CircuitboardPowerControl": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardPowerControl", "prefab_hash": -1923778429, @@ -1003,6 +1053,7 @@ } }, "CircuitboardShipDisplay": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardShipDisplay", "prefab_hash": -2044446819, @@ -1018,6 +1069,7 @@ } }, "CircuitboardSolarControl": { + "templateType": "Item", "prefab": { "prefab_name": "CircuitboardSolarControl", "prefab_hash": 2020180320, @@ -1033,6 +1085,7 @@ } }, "CompositeRollCover": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "CompositeRollCover", "prefab_hash": 1228794916, @@ -1077,6 +1130,7 @@ } }, "CrateMkII": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "CrateMkII", "prefab_hash": 8709219, @@ -1134,6 +1188,7 @@ ] }, "DecayedFood": { + "templateType": "Item", "prefab": { "prefab_name": "DecayedFood", "prefab_hash": 1531087544, @@ -1149,6 +1204,7 @@ } }, "DeviceLfoVolume": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "DeviceLfoVolume", "prefab_hash": -1844430312, @@ -1207,6 +1263,7 @@ } }, "DeviceStepUnit": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "DeviceStepUnit", "prefab_hash": 1762696475, @@ -1387,6 +1444,7 @@ } }, "DynamicAirConditioner": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicAirConditioner", "prefab_hash": 519913639, @@ -1412,6 +1470,7 @@ ] }, "DynamicCrate": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicCrate", "prefab_hash": 1941079206, @@ -1469,6 +1528,7 @@ ] }, "DynamicGPR": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "DynamicGPR", "prefab_hash": -2085885850, @@ -1514,6 +1574,7 @@ ] }, "DynamicGasCanisterAir": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterAir", "prefab_hash": -1713611165, @@ -1539,6 +1600,7 @@ ] }, "DynamicGasCanisterCarbonDioxide": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterCarbonDioxide", "prefab_hash": -322413931, @@ -1564,6 +1626,7 @@ ] }, "DynamicGasCanisterEmpty": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterEmpty", "prefab_hash": -1741267161, @@ -1589,6 +1652,7 @@ ] }, "DynamicGasCanisterFuel": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterFuel", "prefab_hash": -817051527, @@ -1614,6 +1678,7 @@ ] }, "DynamicGasCanisterNitrogen": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterNitrogen", "prefab_hash": 121951301, @@ -1639,6 +1704,7 @@ ] }, "DynamicGasCanisterNitrousOxide": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterNitrousOxide", "prefab_hash": 30727200, @@ -1664,6 +1730,7 @@ ] }, "DynamicGasCanisterOxygen": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterOxygen", "prefab_hash": 1360925836, @@ -1689,6 +1756,7 @@ ] }, "DynamicGasCanisterPollutants": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterPollutants", "prefab_hash": 396065382, @@ -1714,6 +1782,7 @@ ] }, "DynamicGasCanisterRocketFuel": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterRocketFuel", "prefab_hash": -8883951, @@ -1739,6 +1808,7 @@ ] }, "DynamicGasCanisterVolatiles": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterVolatiles", "prefab_hash": 108086870, @@ -1764,6 +1834,7 @@ ] }, "DynamicGasCanisterWater": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasCanisterWater", "prefab_hash": 197293625, @@ -1789,6 +1860,7 @@ ] }, "DynamicGasTankAdvanced": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasTankAdvanced", "prefab_hash": -386375420, @@ -1814,6 +1886,7 @@ ] }, "DynamicGasTankAdvancedOxygen": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGasTankAdvancedOxygen", "prefab_hash": -1264455519, @@ -1839,6 +1912,7 @@ ] }, "DynamicGenerator": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicGenerator", "prefab_hash": -82087220, @@ -1868,6 +1942,7 @@ ] }, "DynamicHydroponics": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicHydroponics", "prefab_hash": 587726607, @@ -1925,6 +2000,7 @@ ] }, "DynamicLight": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "DynamicLight", "prefab_hash": -21970188, @@ -1971,6 +2047,7 @@ ] }, "DynamicLiquidCanisterEmpty": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicLiquidCanisterEmpty", "prefab_hash": -1939209112, @@ -1996,6 +2073,7 @@ ] }, "DynamicMKIILiquidCanisterEmpty": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicMKIILiquidCanisterEmpty", "prefab_hash": 2130739600, @@ -2021,6 +2099,7 @@ ] }, "DynamicMKIILiquidCanisterWater": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicMKIILiquidCanisterWater", "prefab_hash": -319510386, @@ -2046,6 +2125,7 @@ ] }, "DynamicScrubber": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "DynamicScrubber", "prefab_hash": 755048589, @@ -2079,6 +2159,7 @@ ] }, "DynamicSkeleton": { + "templateType": "Item", "prefab": { "prefab_name": "DynamicSkeleton", "prefab_hash": 106953348, @@ -2094,6 +2175,7 @@ } }, "ElectronicPrinterMod": { + "templateType": "Item", "prefab": { "prefab_name": "ElectronicPrinterMod", "prefab_hash": -311170652, @@ -2109,6 +2191,7 @@ } }, "ElevatorCarrage": { + "templateType": "Item", "prefab": { "prefab_name": "ElevatorCarrage", "prefab_hash": -110788403, @@ -2124,6 +2207,7 @@ } }, "EntityChick": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "EntityChick", "prefab_hash": 1730165908, @@ -2149,6 +2233,7 @@ ] }, "EntityChickenBrown": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "EntityChickenBrown", "prefab_hash": 334097180, @@ -2174,6 +2259,7 @@ ] }, "EntityChickenWhite": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "EntityChickenWhite", "prefab_hash": 1010807532, @@ -2199,6 +2285,7 @@ ] }, "EntityRoosterBlack": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "EntityRoosterBlack", "prefab_hash": 966959649, @@ -2224,6 +2311,7 @@ ] }, "EntityRoosterBrown": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "EntityRoosterBrown", "prefab_hash": -583103395, @@ -2249,6 +2337,7 @@ ] }, "Fertilizer": { + "templateType": "Item", "prefab": { "prefab_name": "Fertilizer", "prefab_hash": 1517856652, @@ -2264,6 +2353,7 @@ } }, "FireArmSMG": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "FireArmSMG", "prefab_hash": -86315541, @@ -2285,6 +2375,7 @@ ] }, "Flag_ODA_10m": { + "templateType": "Structure", "prefab": { "prefab_name": "Flag_ODA_10m", "prefab_hash": 1845441951, @@ -2296,6 +2387,7 @@ } }, "Flag_ODA_4m": { + "templateType": "Structure", "prefab": { "prefab_name": "Flag_ODA_4m", "prefab_hash": 1159126354, @@ -2307,6 +2399,7 @@ } }, "Flag_ODA_6m": { + "templateType": "Structure", "prefab": { "prefab_name": "Flag_ODA_6m", "prefab_hash": 1998634960, @@ -2318,6 +2411,7 @@ } }, "Flag_ODA_8m": { + "templateType": "Structure", "prefab": { "prefab_name": "Flag_ODA_8m", "prefab_hash": -375156130, @@ -2329,6 +2423,7 @@ } }, "FlareGun": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "FlareGun", "prefab_hash": 118685786, @@ -2354,6 +2449,7 @@ ] }, "H2Combustor": { + "templateType": "StructureCircuitHolder", "prefab": { "prefab_name": "H2Combustor", "prefab_hash": 1840108251, @@ -2489,6 +2585,7 @@ } }, "Handgun": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "Handgun", "prefab_hash": 247238062, @@ -2510,6 +2607,7 @@ ] }, "HandgunMagazine": { + "templateType": "Item", "prefab": { "prefab_name": "HandgunMagazine", "prefab_hash": 1254383185, @@ -2525,6 +2623,7 @@ } }, "HumanSkull": { + "templateType": "Item", "prefab": { "prefab_name": "HumanSkull", "prefab_hash": -857713709, @@ -2540,6 +2639,7 @@ } }, "ImGuiCircuitboardAirlockControl": { + "templateType": "Item", "prefab": { "prefab_name": "ImGuiCircuitboardAirlockControl", "prefab_hash": -73796547, @@ -2555,6 +2655,7 @@ } }, "ItemActiveVent": { + "templateType": "Item", "prefab": { "prefab_name": "ItemActiveVent", "prefab_hash": -842048328, @@ -2570,6 +2671,7 @@ } }, "ItemAdhesiveInsulation": { + "templateType": "Item", "prefab": { "prefab_name": "ItemAdhesiveInsulation", "prefab_hash": 1871048978, @@ -2585,6 +2687,7 @@ } }, "ItemAdvancedTablet": { + "templateType": "ItemCircuitHolder", "prefab": { "prefab_name": "ItemAdvancedTablet", "prefab_hash": 1722785341, @@ -2676,6 +2779,7 @@ ] }, "ItemAlienMushroom": { + "templateType": "Item", "prefab": { "prefab_name": "ItemAlienMushroom", "prefab_hash": 176446172, @@ -2691,6 +2795,7 @@ } }, "ItemAmmoBox": { + "templateType": "Item", "prefab": { "prefab_name": "ItemAmmoBox", "prefab_hash": -9559091, @@ -2706,6 +2811,7 @@ } }, "ItemAngleGrinder": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemAngleGrinder", "prefab_hash": 201215010, @@ -2750,6 +2856,7 @@ ] }, "ItemArcWelder": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemArcWelder", "prefab_hash": 1385062886, @@ -2794,6 +2901,7 @@ ] }, "ItemAreaPowerControl": { + "templateType": "Item", "prefab": { "prefab_name": "ItemAreaPowerControl", "prefab_hash": 1757673317, @@ -2809,6 +2917,7 @@ } }, "ItemAstroloyIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemAstroloyIngot", "prefab_hash": 412924554, @@ -2827,6 +2936,7 @@ } }, "ItemAstroloySheets": { + "templateType": "Item", "prefab": { "prefab_name": "ItemAstroloySheets", "prefab_hash": -1662476145, @@ -2842,6 +2952,7 @@ } }, "ItemAuthoringTool": { + "templateType": "Item", "prefab": { "prefab_name": "ItemAuthoringTool", "prefab_hash": 789015045, @@ -2857,6 +2968,7 @@ } }, "ItemAuthoringToolRocketNetwork": { + "templateType": "Item", "prefab": { "prefab_name": "ItemAuthoringToolRocketNetwork", "prefab_hash": -1731627004, @@ -2872,6 +2984,7 @@ } }, "ItemBasketBall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemBasketBall", "prefab_hash": -1262580790, @@ -2887,6 +3000,7 @@ } }, "ItemBatteryCell": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemBatteryCell", "prefab_hash": 700133157, @@ -2922,6 +3036,7 @@ "slots": [] }, "ItemBatteryCellLarge": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemBatteryCellLarge", "prefab_hash": -459827268, @@ -2957,6 +3072,7 @@ "slots": [] }, "ItemBatteryCellNuclear": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemBatteryCellNuclear", "prefab_hash": 544617306, @@ -2992,6 +3108,7 @@ "slots": [] }, "ItemBatteryCharger": { + "templateType": "Item", "prefab": { "prefab_name": "ItemBatteryCharger", "prefab_hash": -1866880307, @@ -3007,6 +3124,7 @@ } }, "ItemBatteryChargerSmall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemBatteryChargerSmall", "prefab_hash": 1008295833, @@ -3022,6 +3140,7 @@ } }, "ItemBeacon": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemBeacon", "prefab_hash": -869869491, @@ -3067,6 +3186,7 @@ ] }, "ItemBiomass": { + "templateType": "Item", "prefab": { "prefab_name": "ItemBiomass", "prefab_hash": -831480639, @@ -3085,6 +3205,7 @@ } }, "ItemBreadLoaf": { + "templateType": "Item", "prefab": { "prefab_name": "ItemBreadLoaf", "prefab_hash": 893514943, @@ -3100,6 +3221,7 @@ } }, "ItemCableAnalyser": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCableAnalyser", "prefab_hash": -1792787349, @@ -3115,6 +3237,7 @@ } }, "ItemCableCoil": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCableCoil", "prefab_hash": -466050668, @@ -3130,6 +3253,7 @@ } }, "ItemCableCoilHeavy": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCableCoilHeavy", "prefab_hash": 2060134443, @@ -3145,6 +3269,7 @@ } }, "ItemCableFuse": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCableFuse", "prefab_hash": 195442047, @@ -3160,6 +3285,7 @@ } }, "ItemCannedCondensedMilk": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCannedCondensedMilk", "prefab_hash": -2104175091, @@ -3175,6 +3301,7 @@ } }, "ItemCannedEdamame": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCannedEdamame", "prefab_hash": -999714082, @@ -3190,6 +3317,7 @@ } }, "ItemCannedMushroom": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCannedMushroom", "prefab_hash": -1344601965, @@ -3205,6 +3333,7 @@ } }, "ItemCannedPowderedEggs": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCannedPowderedEggs", "prefab_hash": 1161510063, @@ -3220,6 +3349,7 @@ } }, "ItemCannedRicePudding": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCannedRicePudding", "prefab_hash": -1185552595, @@ -3235,6 +3365,7 @@ } }, "ItemCerealBar": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCerealBar", "prefab_hash": 791746840, @@ -3250,6 +3381,7 @@ } }, "ItemCharcoal": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCharcoal", "prefab_hash": 252561409, @@ -3268,6 +3400,7 @@ } }, "ItemChemLightBlue": { + "templateType": "Item", "prefab": { "prefab_name": "ItemChemLightBlue", "prefab_hash": -772542081, @@ -3283,6 +3416,7 @@ } }, "ItemChemLightGreen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemChemLightGreen", "prefab_hash": -597479390, @@ -3298,6 +3432,7 @@ } }, "ItemChemLightRed": { + "templateType": "Item", "prefab": { "prefab_name": "ItemChemLightRed", "prefab_hash": -525810132, @@ -3313,6 +3448,7 @@ } }, "ItemChemLightWhite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemChemLightWhite", "prefab_hash": 1312166823, @@ -3328,6 +3464,7 @@ } }, "ItemChemLightYellow": { + "templateType": "Item", "prefab": { "prefab_name": "ItemChemLightYellow", "prefab_hash": 1224819963, @@ -3343,6 +3480,7 @@ } }, "ItemChocolateBar": { + "templateType": "Item", "prefab": { "prefab_name": "ItemChocolateBar", "prefab_hash": 234601764, @@ -3358,6 +3496,7 @@ } }, "ItemChocolateCake": { + "templateType": "Item", "prefab": { "prefab_name": "ItemChocolateCake", "prefab_hash": -261575861, @@ -3373,6 +3512,7 @@ } }, "ItemChocolateCerealBar": { + "templateType": "Item", "prefab": { "prefab_name": "ItemChocolateCerealBar", "prefab_hash": 860793245, @@ -3388,6 +3528,7 @@ } }, "ItemCoalOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCoalOre", "prefab_hash": 1724793494, @@ -3406,6 +3547,7 @@ } }, "ItemCobaltOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCobaltOre", "prefab_hash": -983091249, @@ -3424,6 +3566,7 @@ } }, "ItemCocoaPowder": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCocoaPowder", "prefab_hash": 457286516, @@ -3442,6 +3585,7 @@ } }, "ItemCocoaTree": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCocoaTree", "prefab_hash": 680051921, @@ -3460,6 +3604,7 @@ } }, "ItemCoffeeMug": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCoffeeMug", "prefab_hash": 1800622698, @@ -3475,6 +3620,7 @@ } }, "ItemConstantanIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemConstantanIngot", "prefab_hash": 1058547521, @@ -3493,6 +3639,7 @@ } }, "ItemCookedCondensedMilk": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCookedCondensedMilk", "prefab_hash": 1715917521, @@ -3511,6 +3658,7 @@ } }, "ItemCookedCorn": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCookedCorn", "prefab_hash": 1344773148, @@ -3529,6 +3677,7 @@ } }, "ItemCookedMushroom": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCookedMushroom", "prefab_hash": -1076892658, @@ -3547,6 +3696,7 @@ } }, "ItemCookedPowderedEggs": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCookedPowderedEggs", "prefab_hash": -1712264413, @@ -3565,6 +3715,7 @@ } }, "ItemCookedPumpkin": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCookedPumpkin", "prefab_hash": 1849281546, @@ -3583,6 +3734,7 @@ } }, "ItemCookedRice": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCookedRice", "prefab_hash": 2013539020, @@ -3601,6 +3753,7 @@ } }, "ItemCookedSoybean": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCookedSoybean", "prefab_hash": 1353449022, @@ -3619,6 +3772,7 @@ } }, "ItemCookedTomato": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCookedTomato", "prefab_hash": -709086714, @@ -3637,6 +3791,7 @@ } }, "ItemCopperIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCopperIngot", "prefab_hash": -404336834, @@ -3655,6 +3810,7 @@ } }, "ItemCopperOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCopperOre", "prefab_hash": -707307845, @@ -3673,6 +3829,7 @@ } }, "ItemCorn": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCorn", "prefab_hash": 258339687, @@ -3691,6 +3848,7 @@ } }, "ItemCornSoup": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCornSoup", "prefab_hash": 545034114, @@ -3706,6 +3864,7 @@ } }, "ItemCreditCard": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCreditCard", "prefab_hash": -1756772618, @@ -3721,6 +3880,7 @@ } }, "ItemCropHay": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCropHay", "prefab_hash": 215486157, @@ -3736,6 +3896,7 @@ } }, "ItemCrowbar": { + "templateType": "Item", "prefab": { "prefab_name": "ItemCrowbar", "prefab_hash": 856108234, @@ -3751,6 +3912,7 @@ } }, "ItemDataDisk": { + "templateType": "Item", "prefab": { "prefab_name": "ItemDataDisk", "prefab_hash": 1005843700, @@ -3766,6 +3928,7 @@ } }, "ItemDirtCanister": { + "templateType": "Item", "prefab": { "prefab_name": "ItemDirtCanister", "prefab_hash": 902565329, @@ -3781,6 +3944,7 @@ } }, "ItemDirtyOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemDirtyOre", "prefab_hash": -1234745580, @@ -3796,6 +3960,7 @@ } }, "ItemDisposableBatteryCharger": { + "templateType": "Item", "prefab": { "prefab_name": "ItemDisposableBatteryCharger", "prefab_hash": -2124435700, @@ -3811,6 +3976,7 @@ } }, "ItemDrill": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemDrill", "prefab_hash": 2009673399, @@ -3855,6 +4021,7 @@ ] }, "ItemDuctTape": { + "templateType": "Item", "prefab": { "prefab_name": "ItemDuctTape", "prefab_hash": -1943134693, @@ -3870,6 +4037,7 @@ } }, "ItemDynamicAirCon": { + "templateType": "Item", "prefab": { "prefab_name": "ItemDynamicAirCon", "prefab_hash": 1072914031, @@ -3885,6 +4053,7 @@ } }, "ItemDynamicScrubber": { + "templateType": "Item", "prefab": { "prefab_name": "ItemDynamicScrubber", "prefab_hash": -971920158, @@ -3900,6 +4069,7 @@ } }, "ItemEggCarton": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemEggCarton", "prefab_hash": -524289310, @@ -3941,6 +4111,7 @@ ] }, "ItemElectronicParts": { + "templateType": "Item", "prefab": { "prefab_name": "ItemElectronicParts", "prefab_hash": 731250882, @@ -3956,6 +4127,7 @@ } }, "ItemElectrumIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemElectrumIngot", "prefab_hash": 502280180, @@ -3974,6 +4146,7 @@ } }, "ItemEmergencyAngleGrinder": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemEmergencyAngleGrinder", "prefab_hash": -351438780, @@ -4018,6 +4191,7 @@ ] }, "ItemEmergencyArcWelder": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemEmergencyArcWelder", "prefab_hash": -1056029600, @@ -4062,6 +4236,7 @@ ] }, "ItemEmergencyCrowbar": { + "templateType": "Item", "prefab": { "prefab_name": "ItemEmergencyCrowbar", "prefab_hash": 976699731, @@ -4077,6 +4252,7 @@ } }, "ItemEmergencyDrill": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemEmergencyDrill", "prefab_hash": -2052458905, @@ -4121,6 +4297,7 @@ ] }, "ItemEmergencyEvaSuit": { + "templateType": "ItemSuit", "prefab": { "prefab_name": "ItemEmergencyEvaSuit", "prefab_hash": 1791306431, @@ -4173,6 +4350,7 @@ } }, "ItemEmergencyPickaxe": { + "templateType": "Item", "prefab": { "prefab_name": "ItemEmergencyPickaxe", "prefab_hash": -1061510408, @@ -4188,6 +4366,7 @@ } }, "ItemEmergencyScrewdriver": { + "templateType": "Item", "prefab": { "prefab_name": "ItemEmergencyScrewdriver", "prefab_hash": 266099983, @@ -4203,6 +4382,7 @@ } }, "ItemEmergencySpaceHelmet": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemEmergencySpaceHelmet", "prefab_hash": 205916793, @@ -4263,6 +4443,7 @@ "slots": [] }, "ItemEmergencyToolBelt": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemEmergencyToolBelt", "prefab_hash": 1661941301, @@ -4312,6 +4493,7 @@ ] }, "ItemEmergencyWireCutters": { + "templateType": "Item", "prefab": { "prefab_name": "ItemEmergencyWireCutters", "prefab_hash": 2102803952, @@ -4327,6 +4509,7 @@ } }, "ItemEmergencyWrench": { + "templateType": "Item", "prefab": { "prefab_name": "ItemEmergencyWrench", "prefab_hash": 162553030, @@ -4342,6 +4525,7 @@ } }, "ItemEmptyCan": { + "templateType": "Item", "prefab": { "prefab_name": "ItemEmptyCan", "prefab_hash": 1013818348, @@ -4360,6 +4544,7 @@ } }, "ItemEvaSuit": { + "templateType": "ItemSuit", "prefab": { "prefab_name": "ItemEvaSuit", "prefab_hash": 1677018918, @@ -4412,6 +4597,7 @@ } }, "ItemExplosive": { + "templateType": "Item", "prefab": { "prefab_name": "ItemExplosive", "prefab_hash": 235361649, @@ -4427,6 +4613,7 @@ } }, "ItemFern": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFern", "prefab_hash": 892110467, @@ -4445,6 +4632,7 @@ } }, "ItemFertilizedEgg": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFertilizedEgg", "prefab_hash": -383972371, @@ -4463,6 +4651,7 @@ } }, "ItemFilterFern": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFilterFern", "prefab_hash": 266654416, @@ -4478,6 +4667,7 @@ } }, "ItemFlagSmall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFlagSmall", "prefab_hash": 2011191088, @@ -4493,6 +4683,7 @@ } }, "ItemFlashingLight": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFlashingLight", "prefab_hash": -2107840748, @@ -4508,6 +4699,7 @@ } }, "ItemFlashlight": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemFlashlight", "prefab_hash": -838472102, @@ -4557,6 +4749,7 @@ ] }, "ItemFlour": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFlour", "prefab_hash": -665995854, @@ -4575,6 +4768,7 @@ } }, "ItemFlowerBlue": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFlowerBlue", "prefab_hash": -1573623434, @@ -4590,6 +4784,7 @@ } }, "ItemFlowerGreen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFlowerGreen", "prefab_hash": -1513337058, @@ -4605,6 +4800,7 @@ } }, "ItemFlowerOrange": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFlowerOrange", "prefab_hash": -1411986716, @@ -4620,6 +4816,7 @@ } }, "ItemFlowerRed": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFlowerRed", "prefab_hash": -81376085, @@ -4635,6 +4832,7 @@ } }, "ItemFlowerYellow": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFlowerYellow", "prefab_hash": 1712822019, @@ -4650,6 +4848,7 @@ } }, "ItemFrenchFries": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFrenchFries", "prefab_hash": -57608687, @@ -4665,6 +4864,7 @@ } }, "ItemFries": { + "templateType": "Item", "prefab": { "prefab_name": "ItemFries", "prefab_hash": 1371786091, @@ -4680,6 +4880,7 @@ } }, "ItemGasCanisterCarbonDioxide": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterCarbonDioxide", "prefab_hash": -767685874, @@ -4702,6 +4903,7 @@ } }, "ItemGasCanisterEmpty": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterEmpty", "prefab_hash": 42280099, @@ -4724,6 +4926,7 @@ } }, "ItemGasCanisterFuel": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterFuel", "prefab_hash": -1014695176, @@ -4746,6 +4949,7 @@ } }, "ItemGasCanisterNitrogen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterNitrogen", "prefab_hash": 2145068424, @@ -4768,6 +4972,7 @@ } }, "ItemGasCanisterNitrousOxide": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterNitrousOxide", "prefab_hash": -1712153401, @@ -4790,6 +4995,7 @@ } }, "ItemGasCanisterOxygen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterOxygen", "prefab_hash": -1152261938, @@ -4812,6 +5018,7 @@ } }, "ItemGasCanisterPollutants": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterPollutants", "prefab_hash": -1552586384, @@ -4834,6 +5041,7 @@ } }, "ItemGasCanisterSmart": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterSmart", "prefab_hash": -668314371, @@ -4856,6 +5064,7 @@ } }, "ItemGasCanisterVolatiles": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterVolatiles", "prefab_hash": -472094806, @@ -4878,6 +5087,7 @@ } }, "ItemGasCanisterWater": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasCanisterWater", "prefab_hash": -1854861891, @@ -4900,6 +5110,7 @@ } }, "ItemGasFilterCarbonDioxide": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterCarbonDioxide", "prefab_hash": 1635000764, @@ -4916,6 +5127,7 @@ } }, "ItemGasFilterCarbonDioxideInfinite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterCarbonDioxideInfinite", "prefab_hash": -185568964, @@ -4932,6 +5144,7 @@ } }, "ItemGasFilterCarbonDioxideL": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterCarbonDioxideL", "prefab_hash": 1876847024, @@ -4948,6 +5161,7 @@ } }, "ItemGasFilterCarbonDioxideM": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterCarbonDioxideM", "prefab_hash": 416897318, @@ -4964,6 +5178,7 @@ } }, "ItemGasFilterNitrogen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterNitrogen", "prefab_hash": 632853248, @@ -4980,6 +5195,7 @@ } }, "ItemGasFilterNitrogenInfinite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterNitrogenInfinite", "prefab_hash": 152751131, @@ -4996,6 +5212,7 @@ } }, "ItemGasFilterNitrogenL": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterNitrogenL", "prefab_hash": -1387439451, @@ -5012,6 +5229,7 @@ } }, "ItemGasFilterNitrogenM": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterNitrogenM", "prefab_hash": -632657357, @@ -5028,6 +5246,7 @@ } }, "ItemGasFilterNitrousOxide": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterNitrousOxide", "prefab_hash": -1247674305, @@ -5044,6 +5263,7 @@ } }, "ItemGasFilterNitrousOxideInfinite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterNitrousOxideInfinite", "prefab_hash": -123934842, @@ -5060,6 +5280,7 @@ } }, "ItemGasFilterNitrousOxideL": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterNitrousOxideL", "prefab_hash": 465267979, @@ -5076,6 +5297,7 @@ } }, "ItemGasFilterNitrousOxideM": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterNitrousOxideM", "prefab_hash": 1824284061, @@ -5092,6 +5314,7 @@ } }, "ItemGasFilterOxygen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterOxygen", "prefab_hash": -721824748, @@ -5108,6 +5331,7 @@ } }, "ItemGasFilterOxygenInfinite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterOxygenInfinite", "prefab_hash": -1055451111, @@ -5124,6 +5348,7 @@ } }, "ItemGasFilterOxygenL": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterOxygenL", "prefab_hash": -1217998945, @@ -5140,6 +5365,7 @@ } }, "ItemGasFilterOxygenM": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterOxygenM", "prefab_hash": -1067319543, @@ -5156,6 +5382,7 @@ } }, "ItemGasFilterPollutants": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterPollutants", "prefab_hash": 1915566057, @@ -5172,6 +5399,7 @@ } }, "ItemGasFilterPollutantsInfinite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterPollutantsInfinite", "prefab_hash": -503738105, @@ -5188,6 +5416,7 @@ } }, "ItemGasFilterPollutantsL": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterPollutantsL", "prefab_hash": 1959564765, @@ -5204,6 +5433,7 @@ } }, "ItemGasFilterPollutantsM": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterPollutantsM", "prefab_hash": 63677771, @@ -5220,6 +5450,7 @@ } }, "ItemGasFilterVolatiles": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterVolatiles", "prefab_hash": 15011598, @@ -5236,6 +5467,7 @@ } }, "ItemGasFilterVolatilesInfinite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterVolatilesInfinite", "prefab_hash": -1916176068, @@ -5252,6 +5484,7 @@ } }, "ItemGasFilterVolatilesL": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterVolatilesL", "prefab_hash": 1255156286, @@ -5268,6 +5501,7 @@ } }, "ItemGasFilterVolatilesM": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterVolatilesM", "prefab_hash": 1037507240, @@ -5284,6 +5518,7 @@ } }, "ItemGasFilterWater": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterWater", "prefab_hash": -1993197973, @@ -5300,6 +5535,7 @@ } }, "ItemGasFilterWaterInfinite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterWaterInfinite", "prefab_hash": -1678456554, @@ -5316,6 +5552,7 @@ } }, "ItemGasFilterWaterL": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterWaterL", "prefab_hash": 2004969680, @@ -5332,6 +5569,7 @@ } }, "ItemGasFilterWaterM": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasFilterWaterM", "prefab_hash": 8804422, @@ -5348,6 +5586,7 @@ } }, "ItemGasSensor": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasSensor", "prefab_hash": 1717593480, @@ -5363,6 +5602,7 @@ } }, "ItemGasTankStorage": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGasTankStorage", "prefab_hash": -2113012215, @@ -5378,6 +5618,7 @@ } }, "ItemGlassSheets": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGlassSheets", "prefab_hash": 1588896491, @@ -5393,6 +5634,7 @@ } }, "ItemGlasses": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGlasses", "prefab_hash": -1068925231, @@ -5408,6 +5650,7 @@ } }, "ItemGoldIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGoldIngot", "prefab_hash": 226410516, @@ -5426,6 +5669,7 @@ } }, "ItemGoldOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGoldOre", "prefab_hash": -1348105509, @@ -5444,6 +5688,7 @@ } }, "ItemGrenade": { + "templateType": "Item", "prefab": { "prefab_name": "ItemGrenade", "prefab_hash": 1544275894, @@ -5459,6 +5704,7 @@ } }, "ItemHEMDroidRepairKit": { + "templateType": "Item", "prefab": { "prefab_name": "ItemHEMDroidRepairKit", "prefab_hash": 470636008, @@ -5474,6 +5720,7 @@ } }, "ItemHardBackpack": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemHardBackpack", "prefab_hash": 374891127, @@ -5657,6 +5904,7 @@ ] }, "ItemHardJetpack": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemHardJetpack", "prefab_hash": -412551656, @@ -5883,6 +6131,7 @@ ] }, "ItemHardMiningBackPack": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemHardMiningBackPack", "prefab_hash": 900366130, @@ -6012,6 +6261,7 @@ ] }, "ItemHardSuit": { + "templateType": "ItemSuitCircuitHolder", "prefab": { "prefab_name": "ItemHardSuit", "prefab_hash": -1758310454, @@ -6212,12 +6462,13 @@ "hygine_reduction_multiplier": 1.5, "waste_max_pressure": 4053.0 }, - "memory": {, + "memory": { "memory_access": "ReadWrite", "memory_size": 0 } }, "ItemHardsuitHelmet": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemHardsuitHelmet", "prefab_hash": -84573099, @@ -6278,6 +6529,7 @@ "slots": [] }, "ItemHastelloyIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemHastelloyIngot", "prefab_hash": 1579842814, @@ -6296,6 +6548,7 @@ } }, "ItemHat": { + "templateType": "Item", "prefab": { "prefab_name": "ItemHat", "prefab_hash": 299189339, @@ -6311,6 +6564,7 @@ } }, "ItemHighVolumeGasCanisterEmpty": { + "templateType": "Item", "prefab": { "prefab_name": "ItemHighVolumeGasCanisterEmpty", "prefab_hash": 998653377, @@ -6333,6 +6587,7 @@ } }, "ItemHorticultureBelt": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemHorticultureBelt", "prefab_hash": -1117581553, @@ -6390,6 +6645,7 @@ ] }, "ItemHydroponicTray": { + "templateType": "Item", "prefab": { "prefab_name": "ItemHydroponicTray", "prefab_hash": -1193543727, @@ -6405,6 +6661,7 @@ } }, "ItemIce": { + "templateType": "Item", "prefab": { "prefab_name": "ItemIce", "prefab_hash": 1217489948, @@ -6420,6 +6677,7 @@ } }, "ItemIgniter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemIgniter", "prefab_hash": 890106742, @@ -6435,6 +6693,7 @@ } }, "ItemInconelIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemInconelIngot", "prefab_hash": -787796599, @@ -6453,6 +6712,7 @@ } }, "ItemInsulation": { + "templateType": "Item", "prefab": { "prefab_name": "ItemInsulation", "prefab_hash": 897176943, @@ -6468,6 +6728,7 @@ } }, "ItemIntegratedCircuit10": { + "templateType": "ItemLogicMemory", "prefab": { "prefab_name": "ItemIntegratedCircuit10", "prefab_hash": -744098481, @@ -6492,12 +6753,13 @@ "circuit_holder": false }, "slots": [], - "memory": {, + "memory": { "memory_access": "ReadWrite", "memory_size": 512 } }, "ItemInvarIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemInvarIngot", "prefab_hash": -297990285, @@ -6516,6 +6778,7 @@ } }, "ItemIronFrames": { + "templateType": "Item", "prefab": { "prefab_name": "ItemIronFrames", "prefab_hash": 1225836666, @@ -6531,6 +6794,7 @@ } }, "ItemIronIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemIronIngot", "prefab_hash": -1301215609, @@ -6549,6 +6813,7 @@ } }, "ItemIronOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemIronOre", "prefab_hash": 1758427767, @@ -6567,6 +6832,7 @@ } }, "ItemIronSheets": { + "templateType": "Item", "prefab": { "prefab_name": "ItemIronSheets", "prefab_hash": -487378546, @@ -6582,6 +6848,7 @@ } }, "ItemJetpackBasic": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemJetpackBasic", "prefab_hash": 1969189000, @@ -6743,6 +7010,7 @@ ] }, "ItemKitAIMeE": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAIMeE", "prefab_hash": 496830914, @@ -6758,6 +7026,7 @@ } }, "ItemKitAccessBridge": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAccessBridge", "prefab_hash": 513258369, @@ -6773,6 +7042,7 @@ } }, "ItemKitAdvancedComposter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAdvancedComposter", "prefab_hash": -1431998347, @@ -6788,6 +7058,7 @@ } }, "ItemKitAdvancedFurnace": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAdvancedFurnace", "prefab_hash": -616758353, @@ -6803,6 +7074,7 @@ } }, "ItemKitAdvancedPackagingMachine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAdvancedPackagingMachine", "prefab_hash": -598545233, @@ -6818,6 +7090,7 @@ } }, "ItemKitAirlock": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAirlock", "prefab_hash": 964043875, @@ -6833,6 +7106,7 @@ } }, "ItemKitAirlockGate": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAirlockGate", "prefab_hash": 682546947, @@ -6848,6 +7122,7 @@ } }, "ItemKitArcFurnace": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitArcFurnace", "prefab_hash": -98995857, @@ -6863,6 +7138,7 @@ } }, "ItemKitAtmospherics": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAtmospherics", "prefab_hash": 1222286371, @@ -6878,6 +7154,7 @@ } }, "ItemKitAutoMinerSmall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAutoMinerSmall", "prefab_hash": 1668815415, @@ -6893,6 +7170,7 @@ } }, "ItemKitAutolathe": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAutolathe", "prefab_hash": -1753893214, @@ -6908,6 +7186,7 @@ } }, "ItemKitAutomatedOven": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitAutomatedOven", "prefab_hash": -1931958659, @@ -6923,6 +7202,7 @@ } }, "ItemKitBasket": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitBasket", "prefab_hash": 148305004, @@ -6938,6 +7218,7 @@ } }, "ItemKitBattery": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitBattery", "prefab_hash": 1406656973, @@ -6953,6 +7234,7 @@ } }, "ItemKitBatteryLarge": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitBatteryLarge", "prefab_hash": -21225041, @@ -6968,6 +7250,7 @@ } }, "ItemKitBeacon": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitBeacon", "prefab_hash": 249073136, @@ -6983,6 +7266,7 @@ } }, "ItemKitBeds": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitBeds", "prefab_hash": -1241256797, @@ -6998,6 +7282,7 @@ } }, "ItemKitBlastDoor": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitBlastDoor", "prefab_hash": -1755116240, @@ -7013,6 +7298,7 @@ } }, "ItemKitCentrifuge": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitCentrifuge", "prefab_hash": 578182956, @@ -7028,6 +7314,7 @@ } }, "ItemKitChairs": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitChairs", "prefab_hash": -1394008073, @@ -7043,6 +7330,7 @@ } }, "ItemKitChute": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitChute", "prefab_hash": 1025254665, @@ -7058,6 +7346,7 @@ } }, "ItemKitChuteUmbilical": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitChuteUmbilical", "prefab_hash": -876560854, @@ -7073,6 +7362,7 @@ } }, "ItemKitCompositeCladding": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitCompositeCladding", "prefab_hash": -1470820996, @@ -7088,6 +7378,7 @@ } }, "ItemKitCompositeFloorGrating": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitCompositeFloorGrating", "prefab_hash": 1182412869, @@ -7103,6 +7394,7 @@ } }, "ItemKitComputer": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitComputer", "prefab_hash": 1990225489, @@ -7118,6 +7410,7 @@ } }, "ItemKitConsole": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitConsole", "prefab_hash": -1241851179, @@ -7133,6 +7426,7 @@ } }, "ItemKitCrate": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitCrate", "prefab_hash": 429365598, @@ -7148,6 +7442,7 @@ } }, "ItemKitCrateMkII": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitCrateMkII", "prefab_hash": -1585956426, @@ -7163,6 +7458,7 @@ } }, "ItemKitCrateMount": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitCrateMount", "prefab_hash": -551612946, @@ -7178,6 +7474,7 @@ } }, "ItemKitCryoTube": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitCryoTube", "prefab_hash": -545234195, @@ -7193,6 +7490,7 @@ } }, "ItemKitDeepMiner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDeepMiner", "prefab_hash": -1935075707, @@ -7208,6 +7506,7 @@ } }, "ItemKitDockingPort": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDockingPort", "prefab_hash": 77421200, @@ -7223,6 +7522,7 @@ } }, "ItemKitDoor": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDoor", "prefab_hash": 168615924, @@ -7238,6 +7538,7 @@ } }, "ItemKitDrinkingFountain": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDrinkingFountain", "prefab_hash": -1743663875, @@ -7253,6 +7554,7 @@ } }, "ItemKitDynamicCanister": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDynamicCanister", "prefab_hash": -1061945368, @@ -7268,6 +7570,7 @@ } }, "ItemKitDynamicGasTankAdvanced": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDynamicGasTankAdvanced", "prefab_hash": 1533501495, @@ -7283,6 +7586,7 @@ } }, "ItemKitDynamicGenerator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDynamicGenerator", "prefab_hash": -732720413, @@ -7298,6 +7602,7 @@ } }, "ItemKitDynamicHydroponics": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDynamicHydroponics", "prefab_hash": -1861154222, @@ -7313,6 +7618,7 @@ } }, "ItemKitDynamicLiquidCanister": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDynamicLiquidCanister", "prefab_hash": 375541286, @@ -7328,6 +7634,7 @@ } }, "ItemKitDynamicMKIILiquidCanister": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitDynamicMKIILiquidCanister", "prefab_hash": -638019974, @@ -7343,6 +7650,7 @@ } }, "ItemKitElectricUmbilical": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitElectricUmbilical", "prefab_hash": 1603046970, @@ -7358,6 +7666,7 @@ } }, "ItemKitElectronicsPrinter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitElectronicsPrinter", "prefab_hash": -1181922382, @@ -7373,6 +7682,7 @@ } }, "ItemKitElevator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitElevator", "prefab_hash": -945806652, @@ -7388,6 +7698,7 @@ } }, "ItemKitEngineLarge": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitEngineLarge", "prefab_hash": 755302726, @@ -7403,6 +7714,7 @@ } }, "ItemKitEngineMedium": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitEngineMedium", "prefab_hash": 1969312177, @@ -7418,6 +7730,7 @@ } }, "ItemKitEngineSmall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitEngineSmall", "prefab_hash": 19645163, @@ -7433,6 +7746,7 @@ } }, "ItemKitEvaporationChamber": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitEvaporationChamber", "prefab_hash": 1587787610, @@ -7448,6 +7762,7 @@ } }, "ItemKitFlagODA": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitFlagODA", "prefab_hash": 1701764190, @@ -7463,6 +7778,7 @@ } }, "ItemKitFridgeBig": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitFridgeBig", "prefab_hash": -1168199498, @@ -7478,6 +7794,7 @@ } }, "ItemKitFridgeSmall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitFridgeSmall", "prefab_hash": 1661226524, @@ -7493,6 +7810,7 @@ } }, "ItemKitFurnace": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitFurnace", "prefab_hash": -806743925, @@ -7508,6 +7826,7 @@ } }, "ItemKitFurniture": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitFurniture", "prefab_hash": 1162905029, @@ -7523,6 +7842,7 @@ } }, "ItemKitFuselage": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitFuselage", "prefab_hash": -366262681, @@ -7538,6 +7858,7 @@ } }, "ItemKitGasGenerator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitGasGenerator", "prefab_hash": 377745425, @@ -7553,6 +7874,7 @@ } }, "ItemKitGasUmbilical": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitGasUmbilical", "prefab_hash": -1867280568, @@ -7568,6 +7890,7 @@ } }, "ItemKitGovernedGasRocketEngine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitGovernedGasRocketEngine", "prefab_hash": 206848766, @@ -7583,6 +7906,7 @@ } }, "ItemKitGroundTelescope": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitGroundTelescope", "prefab_hash": -2140672772, @@ -7598,6 +7922,7 @@ } }, "ItemKitGrowLight": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitGrowLight", "prefab_hash": 341030083, @@ -7613,6 +7938,7 @@ } }, "ItemKitHarvie": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitHarvie", "prefab_hash": -1022693454, @@ -7628,6 +7954,7 @@ } }, "ItemKitHeatExchanger": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitHeatExchanger", "prefab_hash": -1710540039, @@ -7643,6 +7970,7 @@ } }, "ItemKitHorizontalAutoMiner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitHorizontalAutoMiner", "prefab_hash": 844391171, @@ -7658,6 +7986,7 @@ } }, "ItemKitHydraulicPipeBender": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitHydraulicPipeBender", "prefab_hash": -2098556089, @@ -7673,6 +8002,7 @@ } }, "ItemKitHydroponicAutomated": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitHydroponicAutomated", "prefab_hash": -927931558, @@ -7688,6 +8018,7 @@ } }, "ItemKitHydroponicStation": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitHydroponicStation", "prefab_hash": 2057179799, @@ -7703,6 +8034,7 @@ } }, "ItemKitIceCrusher": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitIceCrusher", "prefab_hash": 288111533, @@ -7718,6 +8050,7 @@ } }, "ItemKitInsulatedLiquidPipe": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitInsulatedLiquidPipe", "prefab_hash": 2067655311, @@ -7733,6 +8066,7 @@ } }, "ItemKitInsulatedPipe": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitInsulatedPipe", "prefab_hash": 452636699, @@ -7748,6 +8082,7 @@ } }, "ItemKitInsulatedPipeUtility": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitInsulatedPipeUtility", "prefab_hash": -27284803, @@ -7763,6 +8098,7 @@ } }, "ItemKitInsulatedPipeUtilityLiquid": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitInsulatedPipeUtilityLiquid", "prefab_hash": -1831558953, @@ -7778,6 +8114,7 @@ } }, "ItemKitInteriorDoors": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitInteriorDoors", "prefab_hash": 1935945891, @@ -7793,6 +8130,7 @@ } }, "ItemKitLadder": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLadder", "prefab_hash": 489494578, @@ -7808,6 +8146,7 @@ } }, "ItemKitLandingPadAtmos": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLandingPadAtmos", "prefab_hash": 1817007843, @@ -7823,6 +8162,7 @@ } }, "ItemKitLandingPadBasic": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLandingPadBasic", "prefab_hash": 293581318, @@ -7838,6 +8178,7 @@ } }, "ItemKitLandingPadWaypoint": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLandingPadWaypoint", "prefab_hash": -1267511065, @@ -7853,6 +8194,7 @@ } }, "ItemKitLargeDirectHeatExchanger": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLargeDirectHeatExchanger", "prefab_hash": 450164077, @@ -7868,6 +8210,7 @@ } }, "ItemKitLargeExtendableRadiator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLargeExtendableRadiator", "prefab_hash": 847430620, @@ -7883,6 +8226,7 @@ } }, "ItemKitLargeSatelliteDish": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLargeSatelliteDish", "prefab_hash": -2039971217, @@ -7898,6 +8242,7 @@ } }, "ItemKitLaunchMount": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLaunchMount", "prefab_hash": -1854167549, @@ -7913,6 +8258,7 @@ } }, "ItemKitLaunchTower": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLaunchTower", "prefab_hash": -174523552, @@ -7928,6 +8274,7 @@ } }, "ItemKitLiquidRegulator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLiquidRegulator", "prefab_hash": 1951126161, @@ -7943,6 +8290,7 @@ } }, "ItemKitLiquidTank": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLiquidTank", "prefab_hash": -799849305, @@ -7958,6 +8306,7 @@ } }, "ItemKitLiquidTankInsulated": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLiquidTankInsulated", "prefab_hash": 617773453, @@ -7973,6 +8322,7 @@ } }, "ItemKitLiquidTurboVolumePump": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLiquidTurboVolumePump", "prefab_hash": -1805020897, @@ -7988,6 +8338,7 @@ } }, "ItemKitLiquidUmbilical": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLiquidUmbilical", "prefab_hash": 1571996765, @@ -8003,6 +8354,7 @@ } }, "ItemKitLocker": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLocker", "prefab_hash": 882301399, @@ -8018,6 +8370,7 @@ } }, "ItemKitLogicCircuit": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLogicCircuit", "prefab_hash": 1512322581, @@ -8033,6 +8386,7 @@ } }, "ItemKitLogicInputOutput": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLogicInputOutput", "prefab_hash": 1997293610, @@ -8048,6 +8402,7 @@ } }, "ItemKitLogicMemory": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLogicMemory", "prefab_hash": -2098214189, @@ -8063,6 +8418,7 @@ } }, "ItemKitLogicProcessor": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLogicProcessor", "prefab_hash": 220644373, @@ -8078,6 +8434,7 @@ } }, "ItemKitLogicSwitch": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLogicSwitch", "prefab_hash": 124499454, @@ -8093,6 +8450,7 @@ } }, "ItemKitLogicTransmitter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitLogicTransmitter", "prefab_hash": 1005397063, @@ -8108,6 +8466,7 @@ } }, "ItemKitMotherShipCore": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitMotherShipCore", "prefab_hash": -344968335, @@ -8123,6 +8482,7 @@ } }, "ItemKitMusicMachines": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitMusicMachines", "prefab_hash": -2038889137, @@ -8138,6 +8498,7 @@ } }, "ItemKitPassiveLargeRadiatorGas": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPassiveLargeRadiatorGas", "prefab_hash": -1752768283, @@ -8153,6 +8514,7 @@ } }, "ItemKitPassiveLargeRadiatorLiquid": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPassiveLargeRadiatorLiquid", "prefab_hash": 1453961898, @@ -8168,6 +8530,7 @@ } }, "ItemKitPassthroughHeatExchanger": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPassthroughHeatExchanger", "prefab_hash": 636112787, @@ -8183,6 +8546,7 @@ } }, "ItemKitPictureFrame": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPictureFrame", "prefab_hash": -2062364768, @@ -8198,6 +8562,7 @@ } }, "ItemKitPipe": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPipe", "prefab_hash": -1619793705, @@ -8213,6 +8578,7 @@ } }, "ItemKitPipeLiquid": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPipeLiquid", "prefab_hash": -1166461357, @@ -8228,6 +8594,7 @@ } }, "ItemKitPipeOrgan": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPipeOrgan", "prefab_hash": -827125300, @@ -8243,6 +8610,7 @@ } }, "ItemKitPipeRadiator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPipeRadiator", "prefab_hash": 920411066, @@ -8258,6 +8626,7 @@ } }, "ItemKitPipeRadiatorLiquid": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPipeRadiatorLiquid", "prefab_hash": -1697302609, @@ -8273,6 +8642,7 @@ } }, "ItemKitPipeUtility": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPipeUtility", "prefab_hash": 1934508338, @@ -8288,6 +8658,7 @@ } }, "ItemKitPipeUtilityLiquid": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPipeUtilityLiquid", "prefab_hash": 595478589, @@ -8303,6 +8674,7 @@ } }, "ItemKitPlanter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPlanter", "prefab_hash": 119096484, @@ -8318,6 +8690,7 @@ } }, "ItemKitPortablesConnector": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPortablesConnector", "prefab_hash": 1041148999, @@ -8333,6 +8706,7 @@ } }, "ItemKitPowerTransmitter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPowerTransmitter", "prefab_hash": 291368213, @@ -8348,6 +8722,7 @@ } }, "ItemKitPowerTransmitterOmni": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPowerTransmitterOmni", "prefab_hash": -831211676, @@ -8363,6 +8738,7 @@ } }, "ItemKitPoweredVent": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPoweredVent", "prefab_hash": 2015439334, @@ -8378,6 +8754,7 @@ } }, "ItemKitPressureFedGasEngine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPressureFedGasEngine", "prefab_hash": -121514007, @@ -8393,6 +8770,7 @@ } }, "ItemKitPressureFedLiquidEngine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPressureFedLiquidEngine", "prefab_hash": -99091572, @@ -8408,6 +8786,7 @@ } }, "ItemKitPressurePlate": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPressurePlate", "prefab_hash": 123504691, @@ -8423,6 +8802,7 @@ } }, "ItemKitPumpedLiquidEngine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitPumpedLiquidEngine", "prefab_hash": 1921918951, @@ -8438,6 +8818,7 @@ } }, "ItemKitRailing": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRailing", "prefab_hash": 750176282, @@ -8453,6 +8834,7 @@ } }, "ItemKitRecycler": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRecycler", "prefab_hash": 849148192, @@ -8468,6 +8850,7 @@ } }, "ItemKitRegulator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRegulator", "prefab_hash": 1181371795, @@ -8483,6 +8866,7 @@ } }, "ItemKitReinforcedWindows": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitReinforcedWindows", "prefab_hash": 1459985302, @@ -8498,6 +8882,7 @@ } }, "ItemKitResearchMachine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitResearchMachine", "prefab_hash": 724776762, @@ -8513,6 +8898,7 @@ } }, "ItemKitRespawnPointWallMounted": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRespawnPointWallMounted", "prefab_hash": 1574688481, @@ -8528,6 +8914,7 @@ } }, "ItemKitRocketAvionics": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketAvionics", "prefab_hash": 1396305045, @@ -8543,6 +8930,7 @@ } }, "ItemKitRocketBattery": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketBattery", "prefab_hash": -314072139, @@ -8558,6 +8946,7 @@ } }, "ItemKitRocketCargoStorage": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketCargoStorage", "prefab_hash": 479850239, @@ -8573,6 +8962,7 @@ } }, "ItemKitRocketCelestialTracker": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketCelestialTracker", "prefab_hash": -303008602, @@ -8588,6 +8978,7 @@ } }, "ItemKitRocketCircuitHousing": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketCircuitHousing", "prefab_hash": 721251202, @@ -8603,6 +8994,7 @@ } }, "ItemKitRocketDatalink": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketDatalink", "prefab_hash": -1256996603, @@ -8618,6 +9010,7 @@ } }, "ItemKitRocketGasFuelTank": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketGasFuelTank", "prefab_hash": -1629347579, @@ -8633,6 +9026,7 @@ } }, "ItemKitRocketLiquidFuelTank": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketLiquidFuelTank", "prefab_hash": 2032027950, @@ -8648,6 +9042,7 @@ } }, "ItemKitRocketManufactory": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketManufactory", "prefab_hash": -636127860, @@ -8663,6 +9058,7 @@ } }, "ItemKitRocketMiner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketMiner", "prefab_hash": -867969909, @@ -8678,6 +9074,7 @@ } }, "ItemKitRocketScanner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketScanner", "prefab_hash": 1753647154, @@ -8693,6 +9090,7 @@ } }, "ItemKitRocketTransformerSmall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRocketTransformerSmall", "prefab_hash": -932335800, @@ -8708,6 +9106,7 @@ } }, "ItemKitRoverFrame": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRoverFrame", "prefab_hash": 1827215803, @@ -8723,6 +9122,7 @@ } }, "ItemKitRoverMKI": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitRoverMKI", "prefab_hash": 197243872, @@ -8738,6 +9138,7 @@ } }, "ItemKitSDBHopper": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSDBHopper", "prefab_hash": 323957548, @@ -8753,6 +9154,7 @@ } }, "ItemKitSatelliteDish": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSatelliteDish", "prefab_hash": 178422810, @@ -8768,6 +9170,7 @@ } }, "ItemKitSecurityPrinter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSecurityPrinter", "prefab_hash": 578078533, @@ -8783,6 +9186,7 @@ } }, "ItemKitSensor": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSensor", "prefab_hash": -1776897113, @@ -8798,6 +9202,7 @@ } }, "ItemKitShower": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitShower", "prefab_hash": 735858725, @@ -8813,6 +9218,7 @@ } }, "ItemKitSign": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSign", "prefab_hash": 529996327, @@ -8828,6 +9234,7 @@ } }, "ItemKitSleeper": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSleeper", "prefab_hash": 326752036, @@ -8843,6 +9250,7 @@ } }, "ItemKitSmallDirectHeatExchanger": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSmallDirectHeatExchanger", "prefab_hash": -1332682164, @@ -8858,6 +9266,7 @@ } }, "ItemKitSmallSatelliteDish": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSmallSatelliteDish", "prefab_hash": 1960952220, @@ -8873,6 +9282,7 @@ } }, "ItemKitSolarPanel": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSolarPanel", "prefab_hash": -1924492105, @@ -8888,6 +9298,7 @@ } }, "ItemKitSolarPanelBasic": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSolarPanelBasic", "prefab_hash": 844961456, @@ -8903,6 +9314,7 @@ } }, "ItemKitSolarPanelBasicReinforced": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSolarPanelBasicReinforced", "prefab_hash": -528695432, @@ -8918,6 +9330,7 @@ } }, "ItemKitSolarPanelReinforced": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSolarPanelReinforced", "prefab_hash": -364868685, @@ -8933,6 +9346,7 @@ } }, "ItemKitSolidGenerator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSolidGenerator", "prefab_hash": 1293995736, @@ -8948,6 +9362,7 @@ } }, "ItemKitSorter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSorter", "prefab_hash": 969522478, @@ -8963,6 +9378,7 @@ } }, "ItemKitSpeaker": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSpeaker", "prefab_hash": -126038526, @@ -8978,6 +9394,7 @@ } }, "ItemKitStacker": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitStacker", "prefab_hash": 1013244511, @@ -8993,6 +9410,7 @@ } }, "ItemKitStairs": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitStairs", "prefab_hash": 170878959, @@ -9008,6 +9426,7 @@ } }, "ItemKitStairwell": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitStairwell", "prefab_hash": -1868555784, @@ -9023,6 +9442,7 @@ } }, "ItemKitStandardChute": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitStandardChute", "prefab_hash": 2133035682, @@ -9038,6 +9458,7 @@ } }, "ItemKitStirlingEngine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitStirlingEngine", "prefab_hash": -1821571150, @@ -9053,6 +9474,7 @@ } }, "ItemKitSuitStorage": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitSuitStorage", "prefab_hash": 1088892825, @@ -9068,6 +9490,7 @@ } }, "ItemKitTables": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitTables", "prefab_hash": -1361598922, @@ -9083,6 +9506,7 @@ } }, "ItemKitTank": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitTank", "prefab_hash": 771439840, @@ -9098,6 +9522,7 @@ } }, "ItemKitTankInsulated": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitTankInsulated", "prefab_hash": 1021053608, @@ -9113,6 +9538,7 @@ } }, "ItemKitToolManufactory": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitToolManufactory", "prefab_hash": 529137748, @@ -9128,6 +9554,7 @@ } }, "ItemKitTransformer": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitTransformer", "prefab_hash": -453039435, @@ -9143,6 +9570,7 @@ } }, "ItemKitTransformerSmall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitTransformerSmall", "prefab_hash": 665194284, @@ -9158,6 +9586,7 @@ } }, "ItemKitTurbineGenerator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitTurbineGenerator", "prefab_hash": -1590715731, @@ -9173,6 +9602,7 @@ } }, "ItemKitTurboVolumePump": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitTurboVolumePump", "prefab_hash": -1248429712, @@ -9188,6 +9618,7 @@ } }, "ItemKitUprightWindTurbine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitUprightWindTurbine", "prefab_hash": -1798044015, @@ -9203,6 +9634,7 @@ } }, "ItemKitVendingMachine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitVendingMachine", "prefab_hash": -2038384332, @@ -9218,6 +9650,7 @@ } }, "ItemKitVendingMachineRefrigerated": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitVendingMachineRefrigerated", "prefab_hash": -1867508561, @@ -9233,6 +9666,7 @@ } }, "ItemKitWall": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWall", "prefab_hash": -1826855889, @@ -9248,6 +9682,7 @@ } }, "ItemKitWallArch": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWallArch", "prefab_hash": 1625214531, @@ -9263,6 +9698,7 @@ } }, "ItemKitWallFlat": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWallFlat", "prefab_hash": -846838195, @@ -9278,6 +9714,7 @@ } }, "ItemKitWallGeometry": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWallGeometry", "prefab_hash": -784733231, @@ -9293,6 +9730,7 @@ } }, "ItemKitWallIron": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWallIron", "prefab_hash": -524546923, @@ -9308,6 +9746,7 @@ } }, "ItemKitWallPadded": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWallPadded", "prefab_hash": -821868990, @@ -9323,6 +9762,7 @@ } }, "ItemKitWaterBottleFiller": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWaterBottleFiller", "prefab_hash": 159886536, @@ -9338,6 +9778,7 @@ } }, "ItemKitWaterPurifier": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWaterPurifier", "prefab_hash": 611181283, @@ -9353,6 +9794,7 @@ } }, "ItemKitWeatherStation": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWeatherStation", "prefab_hash": 337505889, @@ -9368,6 +9810,7 @@ } }, "ItemKitWindTurbine": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWindTurbine", "prefab_hash": -868916503, @@ -9383,6 +9826,7 @@ } }, "ItemKitWindowShutter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemKitWindowShutter", "prefab_hash": 1779979754, @@ -9398,6 +9842,7 @@ } }, "ItemLabeller": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemLabeller", "prefab_hash": -743968726, @@ -9443,6 +9888,7 @@ ] }, "ItemLaptop": { + "templateType": "ItemCircuitHolder", "prefab": { "prefab_name": "ItemLaptop", "prefab_hash": 141535121, @@ -9519,6 +9965,7 @@ ] }, "ItemLeadIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLeadIngot", "prefab_hash": 2134647745, @@ -9537,6 +9984,7 @@ } }, "ItemLeadOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLeadOre", "prefab_hash": -190236170, @@ -9555,6 +10003,7 @@ } }, "ItemLightSword": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLightSword", "prefab_hash": 1949076595, @@ -9570,6 +10019,7 @@ } }, "ItemLiquidCanisterEmpty": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLiquidCanisterEmpty", "prefab_hash": -185207387, @@ -9592,6 +10042,7 @@ } }, "ItemLiquidCanisterSmart": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLiquidCanisterSmart", "prefab_hash": 777684475, @@ -9614,6 +10065,7 @@ } }, "ItemLiquidDrain": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLiquidDrain", "prefab_hash": 2036225202, @@ -9629,6 +10081,7 @@ } }, "ItemLiquidPipeAnalyzer": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLiquidPipeAnalyzer", "prefab_hash": 226055671, @@ -9644,6 +10097,7 @@ } }, "ItemLiquidPipeHeater": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLiquidPipeHeater", "prefab_hash": -248475032, @@ -9659,6 +10113,7 @@ } }, "ItemLiquidPipeValve": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLiquidPipeValve", "prefab_hash": -2126113312, @@ -9674,6 +10129,7 @@ } }, "ItemLiquidPipeVolumePump": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLiquidPipeVolumePump", "prefab_hash": -2106280569, @@ -9689,6 +10145,7 @@ } }, "ItemLiquidTankStorage": { + "templateType": "Item", "prefab": { "prefab_name": "ItemLiquidTankStorage", "prefab_hash": 2037427578, @@ -9704,6 +10161,7 @@ } }, "ItemMKIIAngleGrinder": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemMKIIAngleGrinder", "prefab_hash": 240174650, @@ -9748,6 +10206,7 @@ ] }, "ItemMKIIArcWelder": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemMKIIArcWelder", "prefab_hash": -2061979347, @@ -9792,6 +10251,7 @@ ] }, "ItemMKIICrowbar": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMKIICrowbar", "prefab_hash": 1440775434, @@ -9807,6 +10267,7 @@ } }, "ItemMKIIDrill": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemMKIIDrill", "prefab_hash": 324791548, @@ -9851,6 +10312,7 @@ ] }, "ItemMKIIDuctTape": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMKIIDuctTape", "prefab_hash": 388774906, @@ -9866,6 +10328,7 @@ } }, "ItemMKIIMiningDrill": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemMKIIMiningDrill", "prefab_hash": -1875271296, @@ -9917,6 +10380,7 @@ ] }, "ItemMKIIScrewdriver": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMKIIScrewdriver", "prefab_hash": -2015613246, @@ -9932,6 +10396,7 @@ } }, "ItemMKIIWireCutters": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMKIIWireCutters", "prefab_hash": -178893251, @@ -9947,6 +10412,7 @@ } }, "ItemMKIIWrench": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMKIIWrench", "prefab_hash": 1862001680, @@ -9962,6 +10428,7 @@ } }, "ItemMarineBodyArmor": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemMarineBodyArmor", "prefab_hash": 1399098998, @@ -9995,6 +10462,7 @@ ] }, "ItemMarineHelmet": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemMarineHelmet", "prefab_hash": 1073631646, @@ -10016,6 +10484,7 @@ ] }, "ItemMilk": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMilk", "prefab_hash": 1327248310, @@ -10034,6 +10503,7 @@ } }, "ItemMiningBackPack": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemMiningBackPack", "prefab_hash": -1650383245, @@ -10147,6 +10617,7 @@ ] }, "ItemMiningBelt": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemMiningBelt", "prefab_hash": -676435305, @@ -10204,6 +10675,7 @@ ] }, "ItemMiningBeltMKII": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemMiningBeltMKII", "prefab_hash": 1470787934, @@ -10426,6 +10898,7 @@ ] }, "ItemMiningCharge": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMiningCharge", "prefab_hash": 15829510, @@ -10441,6 +10914,7 @@ } }, "ItemMiningDrill": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemMiningDrill", "prefab_hash": 1055173191, @@ -10492,6 +10966,7 @@ ] }, "ItemMiningDrillHeavy": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemMiningDrillHeavy", "prefab_hash": -1663349918, @@ -10543,6 +11018,7 @@ ] }, "ItemMiningDrillPneumatic": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemMiningDrillPneumatic", "prefab_hash": 1258187304, @@ -10564,6 +11040,7 @@ ] }, "ItemMkIIToolbelt": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemMkIIToolbelt", "prefab_hash": 1467558064, @@ -10747,6 +11224,7 @@ ] }, "ItemMuffin": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMuffin", "prefab_hash": -1864982322, @@ -10762,6 +11240,7 @@ } }, "ItemMushroom": { + "templateType": "Item", "prefab": { "prefab_name": "ItemMushroom", "prefab_hash": 2044798572, @@ -10780,6 +11259,7 @@ } }, "ItemNVG": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemNVG", "prefab_hash": 982514123, @@ -10825,6 +11305,7 @@ ] }, "ItemNickelIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemNickelIngot", "prefab_hash": -1406385572, @@ -10843,6 +11324,7 @@ } }, "ItemNickelOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemNickelOre", "prefab_hash": 1830218956, @@ -10861,6 +11343,7 @@ } }, "ItemNitrice": { + "templateType": "Item", "prefab": { "prefab_name": "ItemNitrice", "prefab_hash": -1499471529, @@ -10876,6 +11359,7 @@ } }, "ItemOxite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemOxite", "prefab_hash": -1805394113, @@ -10891,6 +11375,7 @@ } }, "ItemPassiveVent": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPassiveVent", "prefab_hash": 238631271, @@ -10906,6 +11391,7 @@ } }, "ItemPassiveVentInsulated": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPassiveVentInsulated", "prefab_hash": -1397583760, @@ -10921,6 +11407,7 @@ } }, "ItemPeaceLily": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPeaceLily", "prefab_hash": 2042955224, @@ -10936,6 +11423,7 @@ } }, "ItemPickaxe": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPickaxe", "prefab_hash": -913649823, @@ -10951,6 +11439,7 @@ } }, "ItemPillHeal": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPillHeal", "prefab_hash": 1118069417, @@ -10966,6 +11455,7 @@ } }, "ItemPillStun": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPillStun", "prefab_hash": 418958601, @@ -10981,6 +11471,7 @@ } }, "ItemPipeAnalyizer": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeAnalyizer", "prefab_hash": -767597887, @@ -10996,6 +11487,7 @@ } }, "ItemPipeCowl": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeCowl", "prefab_hash": -38898376, @@ -11011,6 +11503,7 @@ } }, "ItemPipeDigitalValve": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeDigitalValve", "prefab_hash": -1532448832, @@ -11026,6 +11519,7 @@ } }, "ItemPipeGasMixer": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeGasMixer", "prefab_hash": -1134459463, @@ -11041,6 +11535,7 @@ } }, "ItemPipeHeater": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeHeater", "prefab_hash": -1751627006, @@ -11056,6 +11551,7 @@ } }, "ItemPipeIgniter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeIgniter", "prefab_hash": 1366030599, @@ -11071,6 +11567,7 @@ } }, "ItemPipeLabel": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeLabel", "prefab_hash": 391769637, @@ -11086,6 +11583,7 @@ } }, "ItemPipeLiquidRadiator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeLiquidRadiator", "prefab_hash": -906521320, @@ -11101,6 +11599,7 @@ } }, "ItemPipeMeter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeMeter", "prefab_hash": 1207939683, @@ -11116,6 +11615,7 @@ } }, "ItemPipeRadiator": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeRadiator", "prefab_hash": -1796655088, @@ -11131,6 +11631,7 @@ } }, "ItemPipeValve": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeValve", "prefab_hash": 799323450, @@ -11146,6 +11647,7 @@ } }, "ItemPipeVolumePump": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPipeVolumePump", "prefab_hash": -1766301997, @@ -11161,6 +11663,7 @@ } }, "ItemPlainCake": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlainCake", "prefab_hash": -1108244510, @@ -11176,6 +11679,7 @@ } }, "ItemPlantEndothermic_Creative": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlantEndothermic_Creative", "prefab_hash": -1159179557, @@ -11191,6 +11695,7 @@ } }, "ItemPlantEndothermic_Genepool1": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlantEndothermic_Genepool1", "prefab_hash": 851290561, @@ -11206,6 +11711,7 @@ } }, "ItemPlantEndothermic_Genepool2": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlantEndothermic_Genepool2", "prefab_hash": -1414203269, @@ -11221,6 +11727,7 @@ } }, "ItemPlantSampler": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemPlantSampler", "prefab_hash": 173023800, @@ -11271,6 +11778,7 @@ ] }, "ItemPlantSwitchGrass": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlantSwitchGrass", "prefab_hash": -532672323, @@ -11286,6 +11794,7 @@ } }, "ItemPlantThermogenic_Creative": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlantThermogenic_Creative", "prefab_hash": -1208890208, @@ -11301,6 +11810,7 @@ } }, "ItemPlantThermogenic_Genepool1": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlantThermogenic_Genepool1", "prefab_hash": -177792789, @@ -11316,6 +11826,7 @@ } }, "ItemPlantThermogenic_Genepool2": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlantThermogenic_Genepool2", "prefab_hash": 1819167057, @@ -11331,6 +11842,7 @@ } }, "ItemPlasticSheets": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPlasticSheets", "prefab_hash": 662053345, @@ -11346,6 +11858,7 @@ } }, "ItemPotato": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPotato", "prefab_hash": 1929046963, @@ -11364,6 +11877,7 @@ } }, "ItemPotatoBaked": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPotatoBaked", "prefab_hash": -2111886401, @@ -11382,6 +11896,7 @@ } }, "ItemPowerConnector": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPowerConnector", "prefab_hash": 839924019, @@ -11397,6 +11912,7 @@ } }, "ItemPumpkin": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPumpkin", "prefab_hash": 1277828144, @@ -11415,6 +11931,7 @@ } }, "ItemPumpkinPie": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPumpkinPie", "prefab_hash": 62768076, @@ -11430,6 +11947,7 @@ } }, "ItemPumpkinSoup": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPumpkinSoup", "prefab_hash": 1277979876, @@ -11445,6 +11963,7 @@ } }, "ItemPureIce": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIce", "prefab_hash": -1616308158, @@ -11460,6 +11979,7 @@ } }, "ItemPureIceCarbonDioxide": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceCarbonDioxide", "prefab_hash": -1251009404, @@ -11475,6 +11995,7 @@ } }, "ItemPureIceHydrogen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceHydrogen", "prefab_hash": 944530361, @@ -11490,6 +12011,7 @@ } }, "ItemPureIceLiquidCarbonDioxide": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceLiquidCarbonDioxide", "prefab_hash": -1715945725, @@ -11505,6 +12027,7 @@ } }, "ItemPureIceLiquidHydrogen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceLiquidHydrogen", "prefab_hash": -1044933269, @@ -11520,6 +12043,7 @@ } }, "ItemPureIceLiquidNitrogen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceLiquidNitrogen", "prefab_hash": 1674576569, @@ -11535,6 +12059,7 @@ } }, "ItemPureIceLiquidNitrous": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceLiquidNitrous", "prefab_hash": 1428477399, @@ -11550,6 +12075,7 @@ } }, "ItemPureIceLiquidOxygen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceLiquidOxygen", "prefab_hash": 541621589, @@ -11565,6 +12091,7 @@ } }, "ItemPureIceLiquidPollutant": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceLiquidPollutant", "prefab_hash": -1748926678, @@ -11580,6 +12107,7 @@ } }, "ItemPureIceLiquidVolatiles": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceLiquidVolatiles", "prefab_hash": -1306628937, @@ -11595,6 +12123,7 @@ } }, "ItemPureIceNitrogen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceNitrogen", "prefab_hash": -1708395413, @@ -11610,6 +12139,7 @@ } }, "ItemPureIceNitrous": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceNitrous", "prefab_hash": 386754635, @@ -11625,6 +12155,7 @@ } }, "ItemPureIceOxygen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceOxygen", "prefab_hash": -1150448260, @@ -11640,6 +12171,7 @@ } }, "ItemPureIcePollutant": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIcePollutant", "prefab_hash": -1755356, @@ -11655,6 +12187,7 @@ } }, "ItemPureIcePollutedWater": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIcePollutedWater", "prefab_hash": -2073202179, @@ -11670,6 +12203,7 @@ } }, "ItemPureIceSteam": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceSteam", "prefab_hash": -874791066, @@ -11685,6 +12219,7 @@ } }, "ItemPureIceVolatiles": { + "templateType": "Item", "prefab": { "prefab_name": "ItemPureIceVolatiles", "prefab_hash": -633723719, @@ -11700,6 +12235,7 @@ } }, "ItemRTG": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRTG", "prefab_hash": 495305053, @@ -11715,6 +12251,7 @@ } }, "ItemRTGSurvival": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRTGSurvival", "prefab_hash": 1817645803, @@ -11730,6 +12267,7 @@ } }, "ItemReagentMix": { + "templateType": "Item", "prefab": { "prefab_name": "ItemReagentMix", "prefab_hash": -1641500434, @@ -11745,6 +12283,7 @@ } }, "ItemRemoteDetonator": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemRemoteDetonator", "prefab_hash": 678483886, @@ -11790,6 +12329,7 @@ ] }, "ItemReusableFireExtinguisher": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemReusableFireExtinguisher", "prefab_hash": -1773192190, @@ -11811,6 +12351,7 @@ ] }, "ItemRice": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRice", "prefab_hash": 658916791, @@ -11829,6 +12370,7 @@ } }, "ItemRoadFlare": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRoadFlare", "prefab_hash": 871811564, @@ -11844,6 +12386,7 @@ } }, "ItemRocketMiningDrillHead": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRocketMiningDrillHead", "prefab_hash": 2109945337, @@ -11859,6 +12402,7 @@ } }, "ItemRocketMiningDrillHeadDurable": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRocketMiningDrillHeadDurable", "prefab_hash": 1530764483, @@ -11874,6 +12418,7 @@ } }, "ItemRocketMiningDrillHeadHighSpeedIce": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRocketMiningDrillHeadHighSpeedIce", "prefab_hash": 653461728, @@ -11889,6 +12434,7 @@ } }, "ItemRocketMiningDrillHeadHighSpeedMineral": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRocketMiningDrillHeadHighSpeedMineral", "prefab_hash": 1440678625, @@ -11904,6 +12450,7 @@ } }, "ItemRocketMiningDrillHeadIce": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRocketMiningDrillHeadIce", "prefab_hash": -380904592, @@ -11919,6 +12466,7 @@ } }, "ItemRocketMiningDrillHeadLongTerm": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRocketMiningDrillHeadLongTerm", "prefab_hash": -684020753, @@ -11934,6 +12482,7 @@ } }, "ItemRocketMiningDrillHeadMineral": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRocketMiningDrillHeadMineral", "prefab_hash": 1083675581, @@ -11949,6 +12498,7 @@ } }, "ItemRocketScanningHead": { + "templateType": "Item", "prefab": { "prefab_name": "ItemRocketScanningHead", "prefab_hash": -1198702771, @@ -11964,6 +12514,7 @@ } }, "ItemScanner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemScanner", "prefab_hash": 1661270830, @@ -11979,6 +12530,7 @@ } }, "ItemScrewdriver": { + "templateType": "Item", "prefab": { "prefab_name": "ItemScrewdriver", "prefab_hash": 687940869, @@ -11994,6 +12546,7 @@ } }, "ItemSecurityCamera": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSecurityCamera", "prefab_hash": -1981101032, @@ -12009,6 +12562,7 @@ } }, "ItemSensorLenses": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemSensorLenses", "prefab_hash": -1176140051, @@ -12066,6 +12620,7 @@ ] }, "ItemSensorProcessingUnitCelestialScanner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSensorProcessingUnitCelestialScanner", "prefab_hash": -1154200014, @@ -12081,6 +12636,7 @@ } }, "ItemSensorProcessingUnitMesonScanner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSensorProcessingUnitMesonScanner", "prefab_hash": -1730464583, @@ -12096,6 +12652,7 @@ } }, "ItemSensorProcessingUnitOreScanner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSensorProcessingUnitOreScanner", "prefab_hash": -1219128491, @@ -12111,6 +12668,7 @@ } }, "ItemSiliconIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSiliconIngot", "prefab_hash": -290196476, @@ -12129,6 +12687,7 @@ } }, "ItemSiliconOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSiliconOre", "prefab_hash": 1103972403, @@ -12147,6 +12706,7 @@ } }, "ItemSilverIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSilverIngot", "prefab_hash": -929742000, @@ -12165,6 +12725,7 @@ } }, "ItemSilverOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSilverOre", "prefab_hash": -916518678, @@ -12183,6 +12744,7 @@ } }, "ItemSolderIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSolderIngot", "prefab_hash": -82508479, @@ -12201,6 +12763,7 @@ } }, "ItemSolidFuel": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSolidFuel", "prefab_hash": -365253871, @@ -12219,6 +12782,7 @@ } }, "ItemSoundCartridgeBass": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSoundCartridgeBass", "prefab_hash": -1883441704, @@ -12234,6 +12798,7 @@ } }, "ItemSoundCartridgeDrums": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSoundCartridgeDrums", "prefab_hash": -1901500508, @@ -12249,6 +12814,7 @@ } }, "ItemSoundCartridgeLeads": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSoundCartridgeLeads", "prefab_hash": -1174735962, @@ -12264,6 +12830,7 @@ } }, "ItemSoundCartridgeSynth": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSoundCartridgeSynth", "prefab_hash": -1971419310, @@ -12279,6 +12846,7 @@ } }, "ItemSoyOil": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSoyOil", "prefab_hash": 1387403148, @@ -12297,6 +12865,7 @@ } }, "ItemSoybean": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSoybean", "prefab_hash": 1924673028, @@ -12315,6 +12884,7 @@ } }, "ItemSpaceCleaner": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSpaceCleaner", "prefab_hash": -1737666461, @@ -12330,6 +12900,7 @@ } }, "ItemSpaceHelmet": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemSpaceHelmet", "prefab_hash": 714830451, @@ -12390,6 +12961,7 @@ "slots": [] }, "ItemSpaceIce": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSpaceIce", "prefab_hash": 675686937, @@ -12405,6 +12977,7 @@ } }, "ItemSpaceOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSpaceOre", "prefab_hash": 2131916219, @@ -12420,6 +12993,7 @@ } }, "ItemSpacepack": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemSpacepack", "prefab_hash": -1260618380, @@ -12581,6 +13155,7 @@ ] }, "ItemSprayCanBlack": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanBlack", "prefab_hash": -688107795, @@ -12596,6 +13171,7 @@ } }, "ItemSprayCanBlue": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanBlue", "prefab_hash": -498464883, @@ -12611,6 +13187,7 @@ } }, "ItemSprayCanBrown": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanBrown", "prefab_hash": 845176977, @@ -12626,6 +13203,7 @@ } }, "ItemSprayCanGreen": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanGreen", "prefab_hash": -1880941852, @@ -12641,6 +13219,7 @@ } }, "ItemSprayCanGrey": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanGrey", "prefab_hash": -1645266981, @@ -12656,6 +13235,7 @@ } }, "ItemSprayCanKhaki": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanKhaki", "prefab_hash": 1918456047, @@ -12671,6 +13251,7 @@ } }, "ItemSprayCanOrange": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanOrange", "prefab_hash": -158007629, @@ -12686,6 +13267,7 @@ } }, "ItemSprayCanPink": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanPink", "prefab_hash": 1344257263, @@ -12701,6 +13283,7 @@ } }, "ItemSprayCanPurple": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanPurple", "prefab_hash": 30686509, @@ -12716,6 +13299,7 @@ } }, "ItemSprayCanRed": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanRed", "prefab_hash": 1514393921, @@ -12731,6 +13315,7 @@ } }, "ItemSprayCanWhite": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanWhite", "prefab_hash": 498481505, @@ -12746,6 +13331,7 @@ } }, "ItemSprayCanYellow": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSprayCanYellow", "prefab_hash": 995468116, @@ -12761,6 +13347,7 @@ } }, "ItemSprayGun": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemSprayGun", "prefab_hash": 1289723966, @@ -12782,6 +13369,7 @@ ] }, "ItemSteelFrames": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSteelFrames", "prefab_hash": -1448105779, @@ -12797,6 +13385,7 @@ } }, "ItemSteelIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSteelIngot", "prefab_hash": -654790771, @@ -12815,6 +13404,7 @@ } }, "ItemSteelSheets": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSteelSheets", "prefab_hash": 38555961, @@ -12830,6 +13420,7 @@ } }, "ItemStelliteGlassSheets": { + "templateType": "Item", "prefab": { "prefab_name": "ItemStelliteGlassSheets", "prefab_hash": -2038663432, @@ -12845,6 +13436,7 @@ } }, "ItemStelliteIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemStelliteIngot", "prefab_hash": -1897868623, @@ -12863,6 +13455,7 @@ } }, "ItemSugar": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSugar", "prefab_hash": 2111910840, @@ -12881,6 +13474,7 @@ } }, "ItemSugarCane": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSugarCane", "prefab_hash": -1335056202, @@ -12899,6 +13493,7 @@ } }, "ItemSuitModCryogenicUpgrade": { + "templateType": "Item", "prefab": { "prefab_name": "ItemSuitModCryogenicUpgrade", "prefab_hash": -1274308304, @@ -12914,6 +13509,7 @@ } }, "ItemTablet": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemTablet", "prefab_hash": -229808600, @@ -12972,6 +13568,7 @@ ] }, "ItemTerrainManipulator": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemTerrainManipulator", "prefab_hash": 111280987, @@ -13036,6 +13633,7 @@ ] }, "ItemTomato": { + "templateType": "Item", "prefab": { "prefab_name": "ItemTomato", "prefab_hash": -998592080, @@ -13054,6 +13652,7 @@ } }, "ItemTomatoSoup": { + "templateType": "Item", "prefab": { "prefab_name": "ItemTomatoSoup", "prefab_hash": 688734890, @@ -13069,6 +13668,7 @@ } }, "ItemToolBelt": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemToolBelt", "prefab_hash": -355127880, @@ -13118,6 +13718,7 @@ ] }, "ItemTropicalPlant": { + "templateType": "Item", "prefab": { "prefab_name": "ItemTropicalPlant", "prefab_hash": -800947386, @@ -13133,6 +13734,7 @@ } }, "ItemUraniumOre": { + "templateType": "Item", "prefab": { "prefab_name": "ItemUraniumOre", "prefab_hash": -1516581844, @@ -13151,6 +13753,7 @@ } }, "ItemVolatiles": { + "templateType": "Item", "prefab": { "prefab_name": "ItemVolatiles", "prefab_hash": 1253102035, @@ -13166,6 +13769,7 @@ } }, "ItemWallCooler": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWallCooler", "prefab_hash": -1567752627, @@ -13181,6 +13785,7 @@ } }, "ItemWallHeater": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWallHeater", "prefab_hash": 1880134612, @@ -13196,6 +13801,7 @@ } }, "ItemWallLight": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWallLight", "prefab_hash": 1108423476, @@ -13211,6 +13817,7 @@ } }, "ItemWaspaloyIngot": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWaspaloyIngot", "prefab_hash": 156348098, @@ -13229,6 +13836,7 @@ } }, "ItemWaterBottle": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWaterBottle", "prefab_hash": 107741229, @@ -13244,6 +13852,7 @@ } }, "ItemWaterPipeDigitalValve": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWaterPipeDigitalValve", "prefab_hash": 309693520, @@ -13259,6 +13868,7 @@ } }, "ItemWaterPipeMeter": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWaterPipeMeter", "prefab_hash": -90898877, @@ -13274,6 +13884,7 @@ } }, "ItemWaterWallCooler": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWaterWallCooler", "prefab_hash": -1721846327, @@ -13289,6 +13900,7 @@ } }, "ItemWearLamp": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemWearLamp", "prefab_hash": -598730959, @@ -13333,6 +13945,7 @@ ] }, "ItemWeldingTorch": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "ItemWeldingTorch", "prefab_hash": -2066892079, @@ -13358,6 +13971,7 @@ ] }, "ItemWheat": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWheat", "prefab_hash": -1057658015, @@ -13376,6 +13990,7 @@ } }, "ItemWireCutters": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWireCutters", "prefab_hash": 1535854074, @@ -13391,6 +14006,7 @@ } }, "ItemWirelessBatteryCellExtraLarge": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "ItemWirelessBatteryCellExtraLarge", "prefab_hash": -504717121, @@ -13426,6 +14042,7 @@ "slots": [] }, "ItemWreckageAirConditioner1": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageAirConditioner1", "prefab_hash": -1826023284, @@ -13441,6 +14058,7 @@ } }, "ItemWreckageAirConditioner2": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageAirConditioner2", "prefab_hash": 169888054, @@ -13456,6 +14074,7 @@ } }, "ItemWreckageHydroponicsTray1": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageHydroponicsTray1", "prefab_hash": -310178617, @@ -13471,6 +14090,7 @@ } }, "ItemWreckageLargeExtendableRadiator01": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageLargeExtendableRadiator01", "prefab_hash": -997763, @@ -13486,6 +14106,7 @@ } }, "ItemWreckageStructureRTG1": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureRTG1", "prefab_hash": 391453348, @@ -13501,6 +14122,7 @@ } }, "ItemWreckageStructureWeatherStation001": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureWeatherStation001", "prefab_hash": -834664349, @@ -13516,6 +14138,7 @@ } }, "ItemWreckageStructureWeatherStation002": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureWeatherStation002", "prefab_hash": 1464424921, @@ -13531,6 +14154,7 @@ } }, "ItemWreckageStructureWeatherStation003": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureWeatherStation003", "prefab_hash": 542009679, @@ -13546,6 +14170,7 @@ } }, "ItemWreckageStructureWeatherStation004": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureWeatherStation004", "prefab_hash": -1104478996, @@ -13561,6 +14186,7 @@ } }, "ItemWreckageStructureWeatherStation005": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureWeatherStation005", "prefab_hash": -919745414, @@ -13576,6 +14202,7 @@ } }, "ItemWreckageStructureWeatherStation006": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureWeatherStation006", "prefab_hash": 1344576960, @@ -13591,6 +14218,7 @@ } }, "ItemWreckageStructureWeatherStation007": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureWeatherStation007", "prefab_hash": 656649558, @@ -13606,6 +14234,7 @@ } }, "ItemWreckageStructureWeatherStation008": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageStructureWeatherStation008", "prefab_hash": -1214467897, @@ -13621,6 +14250,7 @@ } }, "ItemWreckageTurbineGenerator1": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageTurbineGenerator1", "prefab_hash": -1662394403, @@ -13636,6 +14266,7 @@ } }, "ItemWreckageTurbineGenerator2": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageTurbineGenerator2", "prefab_hash": 98602599, @@ -13651,6 +14282,7 @@ } }, "ItemWreckageTurbineGenerator3": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageTurbineGenerator3", "prefab_hash": 1927790321, @@ -13666,6 +14298,7 @@ } }, "ItemWreckageWallCooler1": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageWallCooler1", "prefab_hash": -1682930158, @@ -13681,6 +14314,7 @@ } }, "ItemWreckageWallCooler2": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWreckageWallCooler2", "prefab_hash": 45733800, @@ -13696,6 +14330,7 @@ } }, "ItemWrench": { + "templateType": "Item", "prefab": { "prefab_name": "ItemWrench", "prefab_hash": -1886261558, @@ -13711,6 +14346,7 @@ } }, "KitSDBSilo": { + "templateType": "Item", "prefab": { "prefab_name": "KitSDBSilo", "prefab_hash": 1932952652, @@ -13726,6 +14362,7 @@ } }, "KitStructureCombustionCentrifuge": { + "templateType": "Item", "prefab": { "prefab_name": "KitStructureCombustionCentrifuge", "prefab_hash": 231903234, @@ -13741,6 +14378,7 @@ } }, "KitchenTableShort": { + "templateType": "Structure", "prefab": { "prefab_name": "KitchenTableShort", "prefab_hash": -1427415566, @@ -13752,6 +14390,7 @@ } }, "KitchenTableSimpleShort": { + "templateType": "Structure", "prefab": { "prefab_name": "KitchenTableSimpleShort", "prefab_hash": -78099334, @@ -13763,6 +14402,7 @@ } }, "KitchenTableSimpleTall": { + "templateType": "Structure", "prefab": { "prefab_name": "KitchenTableSimpleTall", "prefab_hash": -1068629349, @@ -13774,6 +14414,7 @@ } }, "KitchenTableTall": { + "templateType": "Structure", "prefab": { "prefab_name": "KitchenTableTall", "prefab_hash": -1386237782, @@ -13785,6 +14426,7 @@ } }, "Lander": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "Lander", "prefab_hash": 1605130615, @@ -13838,6 +14480,7 @@ ] }, "Landingpad_2x2CenterPiece01": { + "templateType": "StructureLogic", "prefab": { "prefab_name": "Landingpad_2x2CenterPiece01", "prefab_hash": -1295222317, @@ -13857,6 +14500,7 @@ "slots": [] }, "Landingpad_BlankPiece": { + "templateType": "Structure", "prefab": { "prefab_name": "Landingpad_BlankPiece", "prefab_hash": 912453390, @@ -13868,6 +14512,7 @@ } }, "Landingpad_CenterPiece01": { + "templateType": "StructureLogic", "prefab": { "prefab_name": "Landingpad_CenterPiece01", "prefab_hash": 1070143159, @@ -13894,6 +14539,7 @@ "slots": [] }, "Landingpad_CrossPiece": { + "templateType": "Structure", "prefab": { "prefab_name": "Landingpad_CrossPiece", "prefab_hash": 1101296153, @@ -13905,6 +14551,7 @@ } }, "Landingpad_DataConnectionPiece": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "Landingpad_DataConnectionPiece", "prefab_hash": -2066405918, @@ -13996,6 +14643,7 @@ } }, "Landingpad_DiagonalPiece01": { + "templateType": "Structure", "prefab": { "prefab_name": "Landingpad_DiagonalPiece01", "prefab_hash": 977899131, @@ -14007,6 +14655,7 @@ } }, "Landingpad_GasConnectorInwardPiece": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "Landingpad_GasConnectorInwardPiece", "prefab_hash": 817945707, @@ -14090,6 +14739,7 @@ } }, "Landingpad_GasConnectorOutwardPiece": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "Landingpad_GasConnectorOutwardPiece", "prefab_hash": -1100218307, @@ -14173,6 +14823,7 @@ } }, "Landingpad_GasCylinderTankPiece": { + "templateType": "Structure", "prefab": { "prefab_name": "Landingpad_GasCylinderTankPiece", "prefab_hash": 170818567, @@ -14184,6 +14835,7 @@ } }, "Landingpad_LiquidConnectorInwardPiece": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "Landingpad_LiquidConnectorInwardPiece", "prefab_hash": -1216167727, @@ -14267,6 +14919,7 @@ } }, "Landingpad_LiquidConnectorOutwardPiece": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "Landingpad_LiquidConnectorOutwardPiece", "prefab_hash": -1788929869, @@ -14350,6 +15003,7 @@ } }, "Landingpad_StraightPiece01": { + "templateType": "Structure", "prefab": { "prefab_name": "Landingpad_StraightPiece01", "prefab_hash": -976273247, @@ -14361,6 +15015,7 @@ } }, "Landingpad_TaxiPieceCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "Landingpad_TaxiPieceCorner", "prefab_hash": -1872345847, @@ -14372,6 +15027,7 @@ } }, "Landingpad_TaxiPieceHold": { + "templateType": "Structure", "prefab": { "prefab_name": "Landingpad_TaxiPieceHold", "prefab_hash": 146051619, @@ -14383,6 +15039,7 @@ } }, "Landingpad_TaxiPieceStraight": { + "templateType": "Structure", "prefab": { "prefab_name": "Landingpad_TaxiPieceStraight", "prefab_hash": -1477941080, @@ -14394,6 +15051,7 @@ } }, "Landingpad_ThreshholdPiece": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "Landingpad_ThreshholdPiece", "prefab_hash": -1514298582, @@ -14448,6 +15106,7 @@ } }, "LogicStepSequencer8": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "LogicStepSequencer8", "prefab_hash": 1531272458, @@ -14527,6 +15186,7 @@ } }, "Meteorite": { + "templateType": "Item", "prefab": { "prefab_name": "Meteorite", "prefab_hash": -99064335, @@ -14542,6 +15202,7 @@ } }, "MonsterEgg": { + "templateType": "Item", "prefab": { "prefab_name": "MonsterEgg", "prefab_hash": -1667675295, @@ -14557,6 +15218,7 @@ } }, "MotherboardComms": { + "templateType": "Item", "prefab": { "prefab_name": "MotherboardComms", "prefab_hash": -337075633, @@ -14572,6 +15234,7 @@ } }, "MotherboardLogic": { + "templateType": "Item", "prefab": { "prefab_name": "MotherboardLogic", "prefab_hash": 502555944, @@ -14587,6 +15250,7 @@ } }, "MotherboardMissionControl": { + "templateType": "Item", "prefab": { "prefab_name": "MotherboardMissionControl", "prefab_hash": -127121474, @@ -14602,6 +15266,7 @@ } }, "MotherboardProgrammableChip": { + "templateType": "Item", "prefab": { "prefab_name": "MotherboardProgrammableChip", "prefab_hash": -161107071, @@ -14617,6 +15282,7 @@ } }, "MotherboardRockets": { + "templateType": "Item", "prefab": { "prefab_name": "MotherboardRockets", "prefab_hash": -806986392, @@ -14632,6 +15298,7 @@ } }, "MotherboardSorter": { + "templateType": "Item", "prefab": { "prefab_name": "MotherboardSorter", "prefab_hash": -1908268220, @@ -14647,6 +15314,7 @@ } }, "MothershipCore": { + "templateType": "Item", "prefab": { "prefab_name": "MothershipCore", "prefab_hash": -1930442922, @@ -14662,6 +15330,7 @@ } }, "NpcChick": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "NpcChick", "prefab_hash": 155856647, @@ -14691,6 +15360,7 @@ ] }, "NpcChicken": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "NpcChicken", "prefab_hash": 399074198, @@ -14720,6 +15390,7 @@ ] }, "PassiveSpeaker": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "PassiveSpeaker", "prefab_hash": 248893646, @@ -14761,6 +15432,7 @@ } }, "PipeBenderMod": { + "templateType": "Item", "prefab": { "prefab_name": "PipeBenderMod", "prefab_hash": 443947415, @@ -14776,6 +15448,7 @@ } }, "PortableComposter": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "PortableComposter", "prefab_hash": -1958705204, @@ -14809,6 +15482,7 @@ ] }, "PortableSolarPanel": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "PortableSolarPanel", "prefab_hash": 2043318949, @@ -14852,6 +15526,7 @@ ] }, "RailingElegant01": { + "templateType": "Structure", "prefab": { "prefab_name": "RailingElegant01", "prefab_hash": 399661231, @@ -14863,6 +15538,7 @@ } }, "RailingElegant02": { + "templateType": "Structure", "prefab": { "prefab_name": "RailingElegant02", "prefab_hash": -1898247915, @@ -14874,6 +15550,7 @@ } }, "RailingIndustrial02": { + "templateType": "Structure", "prefab": { "prefab_name": "RailingIndustrial02", "prefab_hash": -2072792175, @@ -14885,6 +15562,7 @@ } }, "ReagentColorBlue": { + "templateType": "Item", "prefab": { "prefab_name": "ReagentColorBlue", "prefab_hash": 980054869, @@ -14903,6 +15581,7 @@ } }, "ReagentColorGreen": { + "templateType": "Item", "prefab": { "prefab_name": "ReagentColorGreen", "prefab_hash": 120807542, @@ -14921,6 +15600,7 @@ } }, "ReagentColorOrange": { + "templateType": "Item", "prefab": { "prefab_name": "ReagentColorOrange", "prefab_hash": -400696159, @@ -14939,6 +15619,7 @@ } }, "ReagentColorRed": { + "templateType": "Item", "prefab": { "prefab_name": "ReagentColorRed", "prefab_hash": 1998377961, @@ -14957,6 +15638,7 @@ } }, "ReagentColorYellow": { + "templateType": "Item", "prefab": { "prefab_name": "ReagentColorYellow", "prefab_hash": 635208006, @@ -14975,6 +15657,7 @@ } }, "RespawnPoint": { + "templateType": "Structure", "prefab": { "prefab_name": "RespawnPoint", "prefab_hash": -788672929, @@ -14986,6 +15669,7 @@ } }, "RespawnPointWallMounted": { + "templateType": "Structure", "prefab": { "prefab_name": "RespawnPointWallMounted", "prefab_hash": -491247370, @@ -14997,6 +15681,7 @@ } }, "Robot": { + "templateType": "ItemCircuitHolder", "prefab": { "prefab_name": "Robot", "prefab_hash": 434786784, @@ -15190,6 +15875,7 @@ ] }, "RoverCargo": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "RoverCargo", "prefab_hash": 350726273, @@ -15469,6 +16155,7 @@ ] }, "Rover_MkI": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "Rover_MkI", "prefab_hash": -2049946335, @@ -15672,6 +16359,7 @@ ] }, "Rover_MkI_build_states": { + "templateType": "Structure", "prefab": { "prefab_name": "Rover_MkI_build_states", "prefab_hash": 861674123, @@ -15683,6 +16371,7 @@ } }, "SMGMagazine": { + "templateType": "Item", "prefab": { "prefab_name": "SMGMagazine", "prefab_hash": -256607540, @@ -15698,6 +16387,7 @@ } }, "SeedBag_Cocoa": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Cocoa", "prefab_hash": 1139887531, @@ -15713,6 +16403,7 @@ } }, "SeedBag_Corn": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Corn", "prefab_hash": -1290755415, @@ -15728,6 +16419,7 @@ } }, "SeedBag_Fern": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Fern", "prefab_hash": -1990600883, @@ -15743,6 +16435,7 @@ } }, "SeedBag_Mushroom": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Mushroom", "prefab_hash": 311593418, @@ -15758,6 +16451,7 @@ } }, "SeedBag_Potato": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Potato", "prefab_hash": 1005571172, @@ -15773,6 +16467,7 @@ } }, "SeedBag_Pumpkin": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Pumpkin", "prefab_hash": 1423199840, @@ -15788,6 +16483,7 @@ } }, "SeedBag_Rice": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Rice", "prefab_hash": -1691151239, @@ -15803,6 +16499,7 @@ } }, "SeedBag_Soybean": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Soybean", "prefab_hash": 1783004244, @@ -15818,6 +16515,7 @@ } }, "SeedBag_SugarCane": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_SugarCane", "prefab_hash": -1884103228, @@ -15833,6 +16531,7 @@ } }, "SeedBag_Switchgrass": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Switchgrass", "prefab_hash": 488360169, @@ -15848,6 +16547,7 @@ } }, "SeedBag_Tomato": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Tomato", "prefab_hash": -1922066841, @@ -15863,6 +16563,7 @@ } }, "SeedBag_Wheet": { + "templateType": "Item", "prefab": { "prefab_name": "SeedBag_Wheet", "prefab_hash": -654756733, @@ -15878,6 +16579,7 @@ } }, "SpaceShuttle": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "SpaceShuttle", "prefab_hash": -1991297271, @@ -15907,6 +16609,7 @@ ] }, "StopWatch": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StopWatch", "prefab_hash": -1527229051, @@ -15956,6 +16659,7 @@ } }, "StructureAccessBridge": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAccessBridge", "prefab_hash": 1298920475, @@ -16005,6 +16709,7 @@ } }, "StructureActiveVent": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureActiveVent", "prefab_hash": -1129453144, @@ -16081,6 +16786,7 @@ } }, "StructureAdvancedComposter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAdvancedComposter", "prefab_hash": 446212963, @@ -16171,6 +16877,7 @@ } }, "StructureAdvancedFurnace": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAdvancedFurnace", "prefab_hash": 545937711, @@ -16293,6 +17000,7 @@ } }, "StructureAdvancedPackagingMachine": { + "templateType": "StructureLogicDeviceConsumerMemory", "prefab": { "prefab_name": "StructureAdvancedPackagingMachine", "prefab_hash": -463037670, @@ -16981,6 +17689,7 @@ } }, "StructureAirConditioner": { + "templateType": "StructureCircuitHolder", "prefab": { "prefab_name": "StructureAirConditioner", "prefab_hash": -2087593337, @@ -17119,6 +17828,7 @@ } }, "StructureAirlock": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAirlock", "prefab_hash": -2105052344, @@ -17174,6 +17884,7 @@ } }, "StructureAirlockGate": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAirlockGate", "prefab_hash": 1736080881, @@ -17229,6 +17940,7 @@ } }, "StructureAngledBench": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAngledBench", "prefab_hash": 1811979158, @@ -17280,6 +17992,7 @@ } }, "StructureArcFurnace": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureArcFurnace", "prefab_hash": -247344692, @@ -17375,6 +18088,7 @@ } }, "StructureAreaPowerControl": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAreaPowerControl", "prefab_hash": 1999523701, @@ -17471,6 +18185,7 @@ } }, "StructureAreaPowerControlReversed": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAreaPowerControlReversed", "prefab_hash": -1032513487, @@ -17567,6 +18282,7 @@ } }, "StructureAutoMinerSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureAutoMinerSmall", "prefab_hash": 7274344, @@ -17639,6 +18355,7 @@ } }, "StructureAutolathe": { + "templateType": "StructureLogicDeviceConsumerMemory", "prefab": { "prefab_name": "StructureAutolathe", "prefab_hash": 336213101, @@ -19711,6 +20428,7 @@ } }, "StructureAutomatedOven": { + "templateType": "StructureLogicDeviceConsumerMemory", "prefab": { "prefab_name": "StructureAutomatedOven", "prefab_hash": -1672404896, @@ -20627,6 +21345,7 @@ } }, "StructureBackLiquidPressureRegulator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBackLiquidPressureRegulator", "prefab_hash": 2099900163, @@ -20682,6 +21401,7 @@ } }, "StructureBackPressureRegulator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBackPressureRegulator", "prefab_hash": -1149857558, @@ -20737,6 +21457,7 @@ } }, "StructureBasketHoop": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBasketHoop", "prefab_hash": -1613497288, @@ -20785,6 +21506,7 @@ } }, "StructureBattery": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBattery", "prefab_hash": -400115994, @@ -20851,6 +21573,7 @@ } }, "StructureBatteryCharger": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBatteryCharger", "prefab_hash": 1945930022, @@ -20986,6 +21709,7 @@ } }, "StructureBatteryChargerSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBatteryChargerSmall", "prefab_hash": -761772413, @@ -21066,6 +21790,7 @@ } }, "StructureBatteryLarge": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBatteryLarge", "prefab_hash": -1388288459, @@ -21132,6 +21857,7 @@ } }, "StructureBatteryMedium": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBatteryMedium", "prefab_hash": -1125305264, @@ -21196,6 +21922,7 @@ } }, "StructureBatterySmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBatterySmall", "prefab_hash": -2123455080, @@ -21260,6 +21987,7 @@ } }, "StructureBeacon": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBeacon", "prefab_hash": -188177083, @@ -21309,6 +22037,7 @@ } }, "StructureBench": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBench", "prefab_hash": -2042448192, @@ -21390,6 +22119,7 @@ } }, "StructureBench1": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBench1", "prefab_hash": 406745009, @@ -21471,6 +22201,7 @@ } }, "StructureBench2": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBench2", "prefab_hash": -2127086069, @@ -21552,6 +22283,7 @@ } }, "StructureBench3": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBench3", "prefab_hash": -164622691, @@ -21633,6 +22365,7 @@ } }, "StructureBench4": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBench4", "prefab_hash": 1750375230, @@ -21714,6 +22447,7 @@ } }, "StructureBlastDoor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBlastDoor", "prefab_hash": 337416191, @@ -21769,6 +22503,7 @@ } }, "StructureBlockBed": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureBlockBed", "prefab_hash": 697908419, @@ -21830,6 +22565,7 @@ } }, "StructureBlocker": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureBlocker", "prefab_hash": 378084505, @@ -21841,6 +22577,7 @@ } }, "StructureCableAnalysizer": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCableAnalysizer", "prefab_hash": 1036015121, @@ -21883,6 +22620,7 @@ } }, "StructureCableCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCorner", "prefab_hash": -889269388, @@ -21894,6 +22632,7 @@ } }, "StructureCableCorner3": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCorner3", "prefab_hash": 980469101, @@ -21905,6 +22644,7 @@ } }, "StructureCableCorner3Burnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCorner3Burnt", "prefab_hash": 318437449, @@ -21916,6 +22656,7 @@ } }, "StructureCableCorner3HBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCorner3HBurnt", "prefab_hash": 2393826, @@ -21927,6 +22668,7 @@ } }, "StructureCableCorner4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCorner4", "prefab_hash": -1542172466, @@ -21938,6 +22680,7 @@ } }, "StructureCableCorner4Burnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCorner4Burnt", "prefab_hash": 268421361, @@ -21949,6 +22692,7 @@ } }, "StructureCableCorner4HBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCorner4HBurnt", "prefab_hash": -981223316, @@ -21960,6 +22704,7 @@ } }, "StructureCableCornerBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCornerBurnt", "prefab_hash": -177220914, @@ -21971,6 +22716,7 @@ } }, "StructureCableCornerH": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCornerH", "prefab_hash": -39359015, @@ -21982,6 +22728,7 @@ } }, "StructureCableCornerH3": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCornerH3", "prefab_hash": -1843379322, @@ -21993,6 +22740,7 @@ } }, "StructureCableCornerH4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCornerH4", "prefab_hash": 205837861, @@ -22004,6 +22752,7 @@ } }, "StructureCableCornerHBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableCornerHBurnt", "prefab_hash": 1931412811, @@ -22015,6 +22764,7 @@ } }, "StructureCableFuse100k": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCableFuse100k", "prefab_hash": 281380789, @@ -22049,6 +22799,7 @@ } }, "StructureCableFuse1k": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCableFuse1k", "prefab_hash": -1103727120, @@ -22083,6 +22834,7 @@ } }, "StructureCableFuse50k": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCableFuse50k", "prefab_hash": -349716617, @@ -22117,6 +22869,7 @@ } }, "StructureCableFuse5k": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCableFuse5k", "prefab_hash": -631590668, @@ -22151,6 +22904,7 @@ } }, "StructureCableJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction", "prefab_hash": -175342021, @@ -22162,6 +22916,7 @@ } }, "StructureCableJunction4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction4", "prefab_hash": 1112047202, @@ -22173,6 +22928,7 @@ } }, "StructureCableJunction4Burnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction4Burnt", "prefab_hash": -1756896811, @@ -22184,6 +22940,7 @@ } }, "StructureCableJunction4HBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction4HBurnt", "prefab_hash": -115809132, @@ -22195,6 +22952,7 @@ } }, "StructureCableJunction5": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction5", "prefab_hash": 894390004, @@ -22206,6 +22964,7 @@ } }, "StructureCableJunction5Burnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction5Burnt", "prefab_hash": 1545286256, @@ -22217,6 +22976,7 @@ } }, "StructureCableJunction6": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction6", "prefab_hash": -1404690610, @@ -22228,6 +22988,7 @@ } }, "StructureCableJunction6Burnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction6Burnt", "prefab_hash": -628145954, @@ -22239,6 +23000,7 @@ } }, "StructureCableJunction6HBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunction6HBurnt", "prefab_hash": 1854404029, @@ -22250,6 +23012,7 @@ } }, "StructureCableJunctionBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunctionBurnt", "prefab_hash": -1620686196, @@ -22261,6 +23024,7 @@ } }, "StructureCableJunctionH": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunctionH", "prefab_hash": 469451637, @@ -22272,6 +23036,7 @@ } }, "StructureCableJunctionH4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunctionH4", "prefab_hash": -742234680, @@ -22283,6 +23048,7 @@ } }, "StructureCableJunctionH5": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunctionH5", "prefab_hash": -1530571426, @@ -22294,6 +23060,7 @@ } }, "StructureCableJunctionH5Burnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunctionH5Burnt", "prefab_hash": 1701593300, @@ -22305,6 +23072,7 @@ } }, "StructureCableJunctionH6": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunctionH6", "prefab_hash": 1036780772, @@ -22316,6 +23084,7 @@ } }, "StructureCableJunctionHBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableJunctionHBurnt", "prefab_hash": -341365649, @@ -22327,6 +23096,7 @@ } }, "StructureCableStraight": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableStraight", "prefab_hash": 605357050, @@ -22338,6 +23108,7 @@ } }, "StructureCableStraightBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableStraightBurnt", "prefab_hash": -1196981113, @@ -22349,6 +23120,7 @@ } }, "StructureCableStraightH": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableStraightH", "prefab_hash": -146200530, @@ -22360,6 +23132,7 @@ } }, "StructureCableStraightHBurnt": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCableStraightHBurnt", "prefab_hash": 2085762089, @@ -22371,6 +23144,7 @@ } }, "StructureCamera": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCamera", "prefab_hash": -342072665, @@ -22416,6 +23190,7 @@ } }, "StructureCapsuleTankGas": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCapsuleTankGas", "prefab_hash": -1385712131, @@ -22489,6 +23264,7 @@ } }, "StructureCapsuleTankLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCapsuleTankLiquid", "prefab_hash": 1415396263, @@ -22562,6 +23338,7 @@ } }, "StructureCargoStorageMedium": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCargoStorageMedium", "prefab_hash": 1151864003, @@ -23132,6 +23909,7 @@ } }, "StructureCargoStorageSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCargoStorageSmall", "prefab_hash": -1493672123, @@ -23972,6 +24750,7 @@ } }, "StructureCentrifuge": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCentrifuge", "prefab_hash": 690945935, @@ -24044,6 +24823,7 @@ } }, "StructureChair": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChair", "prefab_hash": 1167659360, @@ -24095,6 +24875,7 @@ } }, "StructureChairBacklessDouble": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChairBacklessDouble", "prefab_hash": 1944858936, @@ -24146,6 +24927,7 @@ } }, "StructureChairBacklessSingle": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChairBacklessSingle", "prefab_hash": 1672275150, @@ -24197,6 +24979,7 @@ } }, "StructureChairBoothCornerLeft": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChairBoothCornerLeft", "prefab_hash": -367720198, @@ -24248,6 +25031,7 @@ } }, "StructureChairBoothMiddle": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChairBoothMiddle", "prefab_hash": 1640720378, @@ -24299,6 +25083,7 @@ } }, "StructureChairRectangleDouble": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChairRectangleDouble", "prefab_hash": -1152812099, @@ -24350,6 +25135,7 @@ } }, "StructureChairRectangleSingle": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChairRectangleSingle", "prefab_hash": -1425428917, @@ -24401,6 +25187,7 @@ } }, "StructureChairThickDouble": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChairThickDouble", "prefab_hash": -1245724402, @@ -24452,6 +25239,7 @@ } }, "StructureChairThickSingle": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChairThickSingle", "prefab_hash": -1510009608, @@ -24503,6 +25291,7 @@ } }, "StructureChuteBin": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteBin", "prefab_hash": -850484480, @@ -24569,6 +25358,7 @@ } }, "StructureChuteCorner": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureChuteCorner", "prefab_hash": 1360330136, @@ -24586,6 +25376,7 @@ ] }, "StructureChuteDigitalFlipFlopSplitterLeft": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteDigitalFlipFlopSplitterLeft", "prefab_hash": -810874728, @@ -24665,6 +25456,7 @@ } }, "StructureChuteDigitalFlipFlopSplitterRight": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteDigitalFlipFlopSplitterRight", "prefab_hash": 163728359, @@ -24744,6 +25536,7 @@ } }, "StructureChuteDigitalValveLeft": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteDigitalValveLeft", "prefab_hash": 648608238, @@ -24815,6 +25608,7 @@ } }, "StructureChuteDigitalValveRight": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteDigitalValveRight", "prefab_hash": -1337091041, @@ -24886,6 +25680,7 @@ } }, "StructureChuteFlipFlopSplitter": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureChuteFlipFlopSplitter", "prefab_hash": -1446854725, @@ -24903,6 +25698,7 @@ ] }, "StructureChuteInlet": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteInlet", "prefab_hash": -1469588766, @@ -24966,6 +25762,7 @@ } }, "StructureChuteJunction": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureChuteJunction", "prefab_hash": -611232514, @@ -24983,6 +25780,7 @@ ] }, "StructureChuteOutlet": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteOutlet", "prefab_hash": -1022714809, @@ -25047,6 +25845,7 @@ } }, "StructureChuteOverflow": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureChuteOverflow", "prefab_hash": 225377225, @@ -25064,6 +25863,7 @@ ] }, "StructureChuteStraight": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureChuteStraight", "prefab_hash": 168307007, @@ -25081,6 +25881,7 @@ ] }, "StructureChuteUmbilicalFemale": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteUmbilicalFemale", "prefab_hash": -1918892177, @@ -25137,6 +25938,7 @@ } }, "StructureChuteUmbilicalFemaleSide": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteUmbilicalFemaleSide", "prefab_hash": -659093969, @@ -25193,6 +25995,7 @@ } }, "StructureChuteUmbilicalMale": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureChuteUmbilicalMale", "prefab_hash": -958884053, @@ -25265,6 +26068,7 @@ } }, "StructureChuteValve": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureChuteValve", "prefab_hash": 434875271, @@ -25282,6 +26086,7 @@ ] }, "StructureChuteWindow": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureChuteWindow", "prefab_hash": -607241919, @@ -25299,6 +26104,7 @@ ] }, "StructureCircuitHousing": { + "templateType": "StructureCircuitHolder", "prefab": { "prefab_name": "StructureCircuitHousing", "prefab_hash": -128473777, @@ -25367,6 +26173,7 @@ } }, "StructureCombustionCentrifuge": { + "templateType": "StructureCircuitHolder", "prefab": { "prefab_name": "StructureCombustionCentrifuge", "prefab_hash": 1238905683, @@ -25519,6 +26326,7 @@ } }, "StructureCompositeCladdingAngled": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngled", "prefab_hash": -1513030150, @@ -25530,6 +26338,7 @@ } }, "StructureCompositeCladdingAngledCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngledCorner", "prefab_hash": -69685069, @@ -25541,6 +26350,7 @@ } }, "StructureCompositeCladdingAngledCornerInner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngledCornerInner", "prefab_hash": -1841871763, @@ -25552,6 +26362,7 @@ } }, "StructureCompositeCladdingAngledCornerInnerLong": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngledCornerInnerLong", "prefab_hash": -1417912632, @@ -25563,6 +26374,7 @@ } }, "StructureCompositeCladdingAngledCornerInnerLongL": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngledCornerInnerLongL", "prefab_hash": 947705066, @@ -25574,6 +26386,7 @@ } }, "StructureCompositeCladdingAngledCornerInnerLongR": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngledCornerInnerLongR", "prefab_hash": -1032590967, @@ -25585,6 +26398,7 @@ } }, "StructureCompositeCladdingAngledCornerLong": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngledCornerLong", "prefab_hash": 850558385, @@ -25596,6 +26410,7 @@ } }, "StructureCompositeCladdingAngledCornerLongR": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngledCornerLongR", "prefab_hash": -348918222, @@ -25607,6 +26422,7 @@ } }, "StructureCompositeCladdingAngledLong": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingAngledLong", "prefab_hash": -387546514, @@ -25618,6 +26434,7 @@ } }, "StructureCompositeCladdingCylindrical": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingCylindrical", "prefab_hash": 212919006, @@ -25629,6 +26446,7 @@ } }, "StructureCompositeCladdingCylindricalPanel": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingCylindricalPanel", "prefab_hash": 1077151132, @@ -25640,6 +26458,7 @@ } }, "StructureCompositeCladdingPanel": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingPanel", "prefab_hash": 1997436771, @@ -25651,6 +26470,7 @@ } }, "StructureCompositeCladdingRounded": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingRounded", "prefab_hash": -259357734, @@ -25662,6 +26482,7 @@ } }, "StructureCompositeCladdingRoundedCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingRoundedCorner", "prefab_hash": 1951525046, @@ -25673,6 +26494,7 @@ } }, "StructureCompositeCladdingRoundedCornerInner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingRoundedCornerInner", "prefab_hash": 110184667, @@ -25684,6 +26506,7 @@ } }, "StructureCompositeCladdingSpherical": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingSpherical", "prefab_hash": 139107321, @@ -25695,6 +26518,7 @@ } }, "StructureCompositeCladdingSphericalCap": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingSphericalCap", "prefab_hash": 534213209, @@ -25706,6 +26530,7 @@ } }, "StructureCompositeCladdingSphericalCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeCladdingSphericalCorner", "prefab_hash": 1751355139, @@ -25717,6 +26542,7 @@ } }, "StructureCompositeDoor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCompositeDoor", "prefab_hash": -793837322, @@ -25772,6 +26598,7 @@ } }, "StructureCompositeFloorGrating": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeFloorGrating", "prefab_hash": 324868581, @@ -25783,6 +26610,7 @@ } }, "StructureCompositeFloorGrating2": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeFloorGrating2", "prefab_hash": -895027741, @@ -25794,6 +26622,7 @@ } }, "StructureCompositeFloorGrating3": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeFloorGrating3", "prefab_hash": -1113471627, @@ -25805,6 +26634,7 @@ } }, "StructureCompositeFloorGrating4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeFloorGrating4", "prefab_hash": 600133846, @@ -25816,6 +26646,7 @@ } }, "StructureCompositeFloorGratingOpen": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeFloorGratingOpen", "prefab_hash": 2109695912, @@ -25827,6 +26658,7 @@ } }, "StructureCompositeFloorGratingOpenRotated": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeFloorGratingOpenRotated", "prefab_hash": 882307910, @@ -25838,6 +26670,7 @@ } }, "StructureCompositeWall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeWall", "prefab_hash": 1237302061, @@ -25849,6 +26682,7 @@ } }, "StructureCompositeWall02": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeWall02", "prefab_hash": 718343384, @@ -25860,6 +26694,7 @@ } }, "StructureCompositeWall03": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeWall03", "prefab_hash": 1574321230, @@ -25871,6 +26706,7 @@ } }, "StructureCompositeWall04": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeWall04", "prefab_hash": -1011701267, @@ -25882,6 +26718,7 @@ } }, "StructureCompositeWindow": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeWindow", "prefab_hash": -2060571986, @@ -25893,6 +26730,7 @@ } }, "StructureCompositeWindowIron": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureCompositeWindowIron", "prefab_hash": -688284639, @@ -25904,6 +26742,7 @@ } }, "StructureComputer": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureComputer", "prefab_hash": -626563514, @@ -25970,6 +26809,7 @@ } }, "StructureCondensationChamber": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCondensationChamber", "prefab_hash": 1420719315, @@ -26059,6 +26899,7 @@ } }, "StructureCondensationValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCondensationValve", "prefab_hash": -965741795, @@ -26106,6 +26947,7 @@ } }, "StructureConsole": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureConsole", "prefab_hash": 235638270, @@ -26163,6 +27005,7 @@ } }, "StructureConsoleDual": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureConsoleDual", "prefab_hash": -722284333, @@ -26224,6 +27067,7 @@ } }, "StructureConsoleLED1x2": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureConsoleLED1x2", "prefab_hash": -53151617, @@ -26275,6 +27119,7 @@ } }, "StructureConsoleLED1x3": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureConsoleLED1x3", "prefab_hash": -1949054743, @@ -26326,6 +27171,7 @@ } }, "StructureConsoleLED5": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureConsoleLED5", "prefab_hash": -815193061, @@ -26377,6 +27223,7 @@ } }, "StructureConsoleMonitor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureConsoleMonitor", "prefab_hash": 801677497, @@ -26434,6 +27281,7 @@ } }, "StructureControlChair": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureControlChair", "prefab_hash": -1961153710, @@ -26538,6 +27386,7 @@ } }, "StructureCornerLocker": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCornerLocker", "prefab_hash": -1968255729, @@ -26666,6 +27515,7 @@ } }, "StructureCrateMount": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureCrateMount", "prefab_hash": -733500083, @@ -26683,6 +27533,7 @@ ] }, "StructureCryoTube": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCryoTube", "prefab_hash": 1938254586, @@ -26764,6 +27615,7 @@ } }, "StructureCryoTubeHorizontal": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCryoTubeHorizontal", "prefab_hash": 1443059329, @@ -26835,6 +27687,7 @@ } }, "StructureCryoTubeVertical": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureCryoTubeVertical", "prefab_hash": -1381321828, @@ -26906,6 +27759,7 @@ } }, "StructureDaylightSensor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureDaylightSensor", "prefab_hash": 1076425094, @@ -26957,6 +27811,7 @@ } }, "StructureDeepMiner": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureDeepMiner", "prefab_hash": 265720906, @@ -27021,6 +27876,7 @@ } }, "StructureDigitalValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureDigitalValve", "prefab_hash": -1280984102, @@ -27076,6 +27932,7 @@ } }, "StructureDiode": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureDiode", "prefab_hash": 1944485013, @@ -27120,6 +27977,7 @@ } }, "StructureDiodeSlide": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureDiodeSlide", "prefab_hash": 576516101, @@ -27164,6 +28022,7 @@ } }, "StructureDockPortSide": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureDockPortSide", "prefab_hash": -137465079, @@ -27214,6 +28073,7 @@ } }, "StructureDrinkingFountain": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureDrinkingFountain", "prefab_hash": 1968371847, @@ -27261,6 +28121,7 @@ } }, "StructureElectrolyzer": { + "templateType": "StructureCircuitHolder", "prefab": { "prefab_name": "StructureElectrolyzer", "prefab_hash": -1668992663, @@ -27396,6 +28257,7 @@ } }, "StructureElectronicsPrinter": { + "templateType": "StructureLogicDeviceConsumerMemory", "prefab": { "prefab_name": "StructureElectronicsPrinter", "prefab_hash": 1307165496, @@ -31367,6 +32229,7 @@ } }, "StructureElevatorLevelFront": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureElevatorLevelFront", "prefab_hash": -827912235, @@ -31427,6 +32290,7 @@ } }, "StructureElevatorLevelIndustrial": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureElevatorLevelIndustrial", "prefab_hash": 2060648791, @@ -31479,6 +32343,7 @@ } }, "StructureElevatorShaft": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureElevatorShaft", "prefab_hash": 826144419, @@ -31535,6 +32400,7 @@ } }, "StructureElevatorShaftIndustrial": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureElevatorShaftIndustrial", "prefab_hash": 1998354978, @@ -31580,6 +32446,7 @@ } }, "StructureEmergencyButton": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureEmergencyButton", "prefab_hash": 1668452680, @@ -31631,6 +32498,7 @@ } }, "StructureEngineMountTypeA1": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureEngineMountTypeA1", "prefab_hash": 2035781224, @@ -31642,6 +32510,7 @@ } }, "StructureEvaporationChamber": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureEvaporationChamber", "prefab_hash": -1429782576, @@ -31731,6 +32600,7 @@ } }, "StructureExpansionValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureExpansionValve", "prefab_hash": 195298587, @@ -31778,6 +32648,7 @@ } }, "StructureFairingTypeA1": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFairingTypeA1", "prefab_hash": 1622567418, @@ -31789,6 +32660,7 @@ } }, "StructureFairingTypeA2": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFairingTypeA2", "prefab_hash": -104908736, @@ -31800,6 +32672,7 @@ } }, "StructureFairingTypeA3": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFairingTypeA3", "prefab_hash": -1900541738, @@ -31811,6 +32684,7 @@ } }, "StructureFiltration": { + "templateType": "StructureCircuitHolder", "prefab": { "prefab_name": "StructureFiltration", "prefab_hash": -348054045, @@ -31952,6 +32826,7 @@ } }, "StructureFlagSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFlagSmall", "prefab_hash": -1529819532, @@ -31963,6 +32838,7 @@ } }, "StructureFlashingLight": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureFlashingLight", "prefab_hash": -1535893860, @@ -32006,6 +32882,7 @@ } }, "StructureFlatBench": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureFlatBench", "prefab_hash": 839890807, @@ -32057,6 +32934,7 @@ } }, "StructureFloorDrain": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFloorDrain", "prefab_hash": 1048813293, @@ -32072,6 +32950,7 @@ } }, "StructureFrame": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFrame", "prefab_hash": 1432512808, @@ -32083,6 +32962,7 @@ } }, "StructureFrameCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFrameCorner", "prefab_hash": -2112390778, @@ -32094,6 +32974,7 @@ } }, "StructureFrameCornerCut": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFrameCornerCut", "prefab_hash": 271315669, @@ -32105,6 +32986,7 @@ } }, "StructureFrameIron": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFrameIron", "prefab_hash": -1240951678, @@ -32116,6 +32998,7 @@ } }, "StructureFrameSide": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFrameSide", "prefab_hash": -302420053, @@ -32127,6 +33010,7 @@ } }, "StructureFridgeBig": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureFridgeBig", "prefab_hash": 958476921, @@ -32430,6 +33314,7 @@ } }, "StructureFridgeSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureFridgeSmall", "prefab_hash": 751887598, @@ -32530,6 +33415,7 @@ } }, "StructureFurnace": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureFurnace", "prefab_hash": 1947944864, @@ -32642,6 +33528,7 @@ } }, "StructureFuselageTypeA1": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFuselageTypeA1", "prefab_hash": 1033024712, @@ -32653,6 +33540,7 @@ } }, "StructureFuselageTypeA2": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFuselageTypeA2", "prefab_hash": -1533287054, @@ -32664,6 +33552,7 @@ } }, "StructureFuselageTypeA4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFuselageTypeA4", "prefab_hash": 1308115015, @@ -32675,6 +33564,7 @@ } }, "StructureFuselageTypeC5": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureFuselageTypeC5", "prefab_hash": 147395155, @@ -32686,6 +33576,7 @@ } }, "StructureGasGenerator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGasGenerator", "prefab_hash": 1165997963, @@ -32770,6 +33661,7 @@ } }, "StructureGasMixer": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGasMixer", "prefab_hash": 2104106366, @@ -32829,6 +33721,7 @@ } }, "StructureGasSensor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGasSensor", "prefab_hash": -1252983604, @@ -32888,6 +33781,7 @@ } }, "StructureGasTankStorage": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGasTankStorage", "prefab_hash": 1632165346, @@ -32962,6 +33856,7 @@ } }, "StructureGasUmbilicalFemale": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGasUmbilicalFemale", "prefab_hash": -1680477930, @@ -33004,6 +33899,7 @@ } }, "StructureGasUmbilicalFemaleSide": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGasUmbilicalFemaleSide", "prefab_hash": -648683847, @@ -33046,6 +33942,7 @@ } }, "StructureGasUmbilicalMale": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGasUmbilicalMale", "prefab_hash": -1814939203, @@ -33104,6 +34001,7 @@ } }, "StructureGlassDoor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGlassDoor", "prefab_hash": -324331872, @@ -33159,6 +34057,7 @@ } }, "StructureGovernedGasEngine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGovernedGasEngine", "prefab_hash": -214232602, @@ -33229,6 +34128,7 @@ } }, "StructureGroundBasedTelescope": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGroundBasedTelescope", "prefab_hash": -619745681, @@ -33293,6 +34193,7 @@ } }, "StructureGrowLight": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureGrowLight", "prefab_hash": -1758710260, @@ -33340,6 +34241,7 @@ } }, "StructureHarvie": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureHarvie", "prefab_hash": 958056199, @@ -33452,6 +34354,7 @@ } }, "StructureHeatExchangeLiquidtoGas": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureHeatExchangeLiquidtoGas", "prefab_hash": 944685608, @@ -33506,6 +34409,7 @@ } }, "StructureHeatExchangerGastoGas": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureHeatExchangerGastoGas", "prefab_hash": 21266291, @@ -33560,6 +34464,7 @@ } }, "StructureHeatExchangerLiquidtoLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureHeatExchangerLiquidtoLiquid", "prefab_hash": -613784254, @@ -33614,6 +34519,7 @@ } }, "StructureHorizontalAutoMiner": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureHorizontalAutoMiner", "prefab_hash": 1070427573, @@ -33691,6 +34597,7 @@ } }, "StructureHydraulicPipeBender": { + "templateType": "StructureLogicDeviceConsumerMemory", "prefab": { "prefab_name": "StructureHydraulicPipeBender", "prefab_hash": -1888248335, @@ -36865,6 +37772,7 @@ } }, "StructureHydroponicsStation": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureHydroponicsStation", "prefab_hash": 1441767298, @@ -37098,6 +38006,7 @@ } }, "StructureHydroponicsTray": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureHydroponicsTray", "prefab_hash": 1464854517, @@ -37123,6 +38032,7 @@ ] }, "StructureHydroponicsTrayData": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureHydroponicsTrayData", "prefab_hash": -1841632400, @@ -37232,6 +38142,7 @@ } }, "StructureIceCrusher": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureIceCrusher", "prefab_hash": 443849486, @@ -37309,6 +38220,7 @@ } }, "StructureIgniter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureIgniter", "prefab_hash": 1005491513, @@ -37349,6 +38261,7 @@ } }, "StructureInLineTankGas1x1": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInLineTankGas1x1", "prefab_hash": -1693382705, @@ -37364,6 +38277,7 @@ } }, "StructureInLineTankGas1x2": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInLineTankGas1x2", "prefab_hash": 35149429, @@ -37379,6 +38293,7 @@ } }, "StructureInLineTankLiquid1x1": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInLineTankLiquid1x1", "prefab_hash": 543645499, @@ -37394,6 +38309,7 @@ } }, "StructureInLineTankLiquid1x2": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInLineTankLiquid1x2", "prefab_hash": -1183969663, @@ -37409,6 +38325,7 @@ } }, "StructureInsulatedInLineTankGas1x1": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedInLineTankGas1x1", "prefab_hash": 1818267386, @@ -37424,6 +38341,7 @@ } }, "StructureInsulatedInLineTankGas1x2": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedInLineTankGas1x2", "prefab_hash": -177610944, @@ -37439,6 +38357,7 @@ } }, "StructureInsulatedInLineTankLiquid1x1": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedInLineTankLiquid1x1", "prefab_hash": -813426145, @@ -37454,6 +38373,7 @@ } }, "StructureInsulatedInLineTankLiquid1x2": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedInLineTankLiquid1x2", "prefab_hash": 1452100517, @@ -37469,6 +38389,7 @@ } }, "StructureInsulatedPipeCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeCorner", "prefab_hash": -1967711059, @@ -37484,6 +38405,7 @@ } }, "StructureInsulatedPipeCrossJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeCrossJunction", "prefab_hash": -92778058, @@ -37499,6 +38421,7 @@ } }, "StructureInsulatedPipeCrossJunction3": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeCrossJunction3", "prefab_hash": 1328210035, @@ -37514,6 +38437,7 @@ } }, "StructureInsulatedPipeCrossJunction4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeCrossJunction4", "prefab_hash": -783387184, @@ -37529,6 +38453,7 @@ } }, "StructureInsulatedPipeCrossJunction5": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeCrossJunction5", "prefab_hash": -1505147578, @@ -37544,6 +38469,7 @@ } }, "StructureInsulatedPipeCrossJunction6": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeCrossJunction6", "prefab_hash": 1061164284, @@ -37559,6 +38485,7 @@ } }, "StructureInsulatedPipeLiquidCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeLiquidCorner", "prefab_hash": 1713710802, @@ -37574,6 +38501,7 @@ } }, "StructureInsulatedPipeLiquidCrossJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeLiquidCrossJunction", "prefab_hash": 1926651727, @@ -37589,6 +38517,7 @@ } }, "StructureInsulatedPipeLiquidCrossJunction4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeLiquidCrossJunction4", "prefab_hash": 363303270, @@ -37604,6 +38533,7 @@ } }, "StructureInsulatedPipeLiquidCrossJunction5": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeLiquidCrossJunction5", "prefab_hash": 1654694384, @@ -37619,6 +38549,7 @@ } }, "StructureInsulatedPipeLiquidCrossJunction6": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeLiquidCrossJunction6", "prefab_hash": -72748982, @@ -37634,6 +38565,7 @@ } }, "StructureInsulatedPipeLiquidStraight": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeLiquidStraight", "prefab_hash": 295678685, @@ -37649,6 +38581,7 @@ } }, "StructureInsulatedPipeLiquidTJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeLiquidTJunction", "prefab_hash": -532384855, @@ -37664,6 +38597,7 @@ } }, "StructureInsulatedPipeStraight": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeStraight", "prefab_hash": 2134172356, @@ -37679,6 +38613,7 @@ } }, "StructureInsulatedPipeTJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureInsulatedPipeTJunction", "prefab_hash": -2076086215, @@ -37694,6 +38629,7 @@ } }, "StructureInsulatedTankConnector": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureInsulatedTankConnector", "prefab_hash": -31273349, @@ -37715,6 +38651,7 @@ ] }, "StructureInsulatedTankConnectorLiquid": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureInsulatedTankConnectorLiquid", "prefab_hash": -1602030414, @@ -37736,6 +38673,7 @@ ] }, "StructureInteriorDoorGlass": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureInteriorDoorGlass", "prefab_hash": -2096421875, @@ -37782,6 +38720,7 @@ } }, "StructureInteriorDoorPadded": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureInteriorDoorPadded", "prefab_hash": 847461335, @@ -37828,6 +38767,7 @@ } }, "StructureInteriorDoorPaddedThin": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureInteriorDoorPaddedThin", "prefab_hash": 1981698201, @@ -37874,6 +38814,7 @@ } }, "StructureInteriorDoorTriangle": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureInteriorDoorTriangle", "prefab_hash": -1182923101, @@ -37920,6 +38861,7 @@ } }, "StructureKlaxon": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureKlaxon", "prefab_hash": -828056979, @@ -38013,6 +38955,7 @@ } }, "StructureLadder": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureLadder", "prefab_hash": -415420281, @@ -38024,6 +38967,7 @@ } }, "StructureLadderEnd": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureLadderEnd", "prefab_hash": 1541734993, @@ -38035,6 +38979,7 @@ } }, "StructureLargeDirectHeatExchangeGastoGas": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLargeDirectHeatExchangeGastoGas", "prefab_hash": -1230658883, @@ -38081,6 +39026,7 @@ } }, "StructureLargeDirectHeatExchangeGastoLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLargeDirectHeatExchangeGastoLiquid", "prefab_hash": 1412338038, @@ -38127,6 +39073,7 @@ } }, "StructureLargeDirectHeatExchangeLiquidtoLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLargeDirectHeatExchangeLiquidtoLiquid", "prefab_hash": 792686502, @@ -38173,6 +39120,7 @@ } }, "StructureLargeExtendableRadiator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLargeExtendableRadiator", "prefab_hash": -566775170, @@ -38230,6 +39178,7 @@ } }, "StructureLargeHangerDoor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLargeHangerDoor", "prefab_hash": -1351081801, @@ -38285,6 +39234,7 @@ } }, "StructureLargeSatelliteDish": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLargeSatelliteDish", "prefab_hash": 1913391845, @@ -38347,6 +39297,7 @@ } }, "StructureLaunchMount": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureLaunchMount", "prefab_hash": -558953231, @@ -38358,6 +39309,7 @@ } }, "StructureLightLong": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLightLong", "prefab_hash": 797794350, @@ -38401,6 +39353,7 @@ } }, "StructureLightLongAngled": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLightLongAngled", "prefab_hash": 1847265835, @@ -38444,6 +39397,7 @@ } }, "StructureLightLongWide": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLightLongWide", "prefab_hash": 555215790, @@ -38487,6 +39441,7 @@ } }, "StructureLightRound": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLightRound", "prefab_hash": 1514476632, @@ -38530,6 +39485,7 @@ } }, "StructureLightRoundAngled": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLightRoundAngled", "prefab_hash": 1592905386, @@ -38573,6 +39529,7 @@ } }, "StructureLightRoundSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLightRoundSmall", "prefab_hash": 1436121888, @@ -38616,6 +39573,7 @@ } }, "StructureLiquidDrain": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidDrain", "prefab_hash": 1687692899, @@ -38671,6 +39629,7 @@ } }, "StructureLiquidPipeAnalyzer": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidPipeAnalyzer", "prefab_hash": -2113838091, @@ -38738,6 +39697,7 @@ } }, "StructureLiquidPipeHeater": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidPipeHeater", "prefab_hash": -287495560, @@ -38786,6 +39746,7 @@ } }, "StructureLiquidPipeOneWayValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidPipeOneWayValve", "prefab_hash": -782453061, @@ -38832,6 +39793,7 @@ } }, "StructureLiquidPipeRadiator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidPipeRadiator", "prefab_hash": 2072805863, @@ -38870,6 +39832,7 @@ } }, "StructureLiquidPressureRegulator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidPressureRegulator", "prefab_hash": 482248766, @@ -38925,6 +39888,7 @@ } }, "StructureLiquidTankBig": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidTankBig", "prefab_hash": 1098900430, @@ -38998,6 +39962,7 @@ } }, "StructureLiquidTankBigInsulated": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidTankBigInsulated", "prefab_hash": -1430440215, @@ -39071,6 +40036,7 @@ } }, "StructureLiquidTankSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidTankSmall", "prefab_hash": 1988118157, @@ -39144,6 +40110,7 @@ } }, "StructureLiquidTankSmallInsulated": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidTankSmallInsulated", "prefab_hash": 608607718, @@ -39217,6 +40184,7 @@ } }, "StructureLiquidTankStorage": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidTankStorage", "prefab_hash": 1691898022, @@ -39291,6 +40259,7 @@ } }, "StructureLiquidTurboVolumePump": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidTurboVolumePump", "prefab_hash": -1051805505, @@ -39355,6 +40324,7 @@ } }, "StructureLiquidUmbilicalFemale": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidUmbilicalFemale", "prefab_hash": 1734723642, @@ -39397,6 +40367,7 @@ } }, "StructureLiquidUmbilicalFemaleSide": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidUmbilicalFemaleSide", "prefab_hash": 1220870319, @@ -39439,6 +40410,7 @@ } }, "StructureLiquidUmbilicalMale": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidUmbilicalMale", "prefab_hash": -1798420047, @@ -39497,6 +40469,7 @@ } }, "StructureLiquidValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidValve", "prefab_hash": 1849974453, @@ -39544,6 +40517,7 @@ } }, "StructureLiquidVolumePump": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLiquidVolumePump", "prefab_hash": -454028979, @@ -39599,6 +40573,7 @@ } }, "StructureLockerSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLockerSmall", "prefab_hash": -647164662, @@ -39697,6 +40672,7 @@ } }, "StructureLogicBatchReader": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicBatchReader", "prefab_hash": 264413729, @@ -39749,6 +40725,7 @@ } }, "StructureLogicBatchSlotReader": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicBatchSlotReader", "prefab_hash": 436888930, @@ -39801,6 +40778,7 @@ } }, "StructureLogicBatchWriter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicBatchWriter", "prefab_hash": 1415443359, @@ -39853,6 +40831,7 @@ } }, "StructureLogicButton": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicButton", "prefab_hash": 491845673, @@ -39899,6 +40878,7 @@ } }, "StructureLogicCompare": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicCompare", "prefab_hash": -1489728908, @@ -39962,6 +40942,7 @@ } }, "StructureLogicDial": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicDial", "prefab_hash": 554524804, @@ -40004,6 +40985,7 @@ } }, "StructureLogicGate": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicGate", "prefab_hash": 1942143074, @@ -40069,6 +41051,7 @@ } }, "StructureLogicHashGen": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicHashGen", "prefab_hash": 2077593121, @@ -40113,6 +41096,7 @@ } }, "StructureLogicMath": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicMath", "prefab_hash": 1657691323, @@ -40180,6 +41164,7 @@ } }, "StructureLogicMathUnary": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicMathUnary", "prefab_hash": -1160020195, @@ -40250,6 +41235,7 @@ } }, "StructureLogicMemory": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicMemory", "prefab_hash": -851746783, @@ -40294,6 +41280,7 @@ } }, "StructureLogicMinMax": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicMinMax", "prefab_hash": 929022276, @@ -40355,6 +41342,7 @@ } }, "StructureLogicMirror": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicMirror", "prefab_hash": 2096189278, @@ -40398,6 +41386,7 @@ } }, "StructureLogicReader": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicReader", "prefab_hash": -345383640, @@ -40450,6 +41439,7 @@ } }, "StructureLogicReagentReader": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicReagentReader", "prefab_hash": -124308857, @@ -40502,6 +41492,7 @@ } }, "StructureLogicRocketDownlink": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicRocketDownlink", "prefab_hash": 876108549, @@ -40543,6 +41534,7 @@ } }, "StructureLogicRocketUplink": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicRocketUplink", "prefab_hash": 546002924, @@ -40590,6 +41582,7 @@ } }, "StructureLogicSelect": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicSelect", "prefab_hash": 1822736084, @@ -40653,6 +41646,7 @@ } }, "StructureLogicSlotReader": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicSlotReader", "prefab_hash": -767867194, @@ -40705,6 +41699,7 @@ } }, "StructureLogicSorter": { + "templateType": "StructureLogicDeviceMemory", "prefab": { "prefab_name": "StructureLogicSorter", "prefab_hash": 873418029, @@ -41090,6 +42085,7 @@ } }, "StructureLogicSwitch": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicSwitch", "prefab_hash": 1220484876, @@ -41136,6 +42132,7 @@ } }, "StructureLogicSwitch2": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicSwitch2", "prefab_hash": 321604921, @@ -41182,6 +42179,7 @@ } }, "StructureLogicTransmitter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicTransmitter", "prefab_hash": -693235651, @@ -41233,6 +42231,7 @@ } }, "StructureLogicWriter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicWriter", "prefab_hash": -1326019434, @@ -41285,6 +42284,7 @@ } }, "StructureLogicWriterSwitch": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureLogicWriterSwitch", "prefab_hash": -1321250424, @@ -41338,6 +42338,7 @@ } }, "StructureManualHatch": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureManualHatch", "prefab_hash": -1808154199, @@ -41384,6 +42385,7 @@ } }, "StructureMediumConvectionRadiator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureMediumConvectionRadiator", "prefab_hash": -1918215845, @@ -41434,6 +42436,7 @@ } }, "StructureMediumConvectionRadiatorLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureMediumConvectionRadiatorLiquid", "prefab_hash": -1169014183, @@ -41484,6 +42487,7 @@ } }, "StructureMediumHangerDoor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureMediumHangerDoor", "prefab_hash": -566348148, @@ -41539,6 +42543,7 @@ } }, "StructureMediumRadiator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureMediumRadiator", "prefab_hash": -975966237, @@ -41589,6 +42594,7 @@ } }, "StructureMediumRadiatorLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureMediumRadiatorLiquid", "prefab_hash": -1141760613, @@ -41639,6 +42645,7 @@ } }, "StructureMediumRocketGasFuelTank": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureMediumRocketGasFuelTank", "prefab_hash": -1093860567, @@ -41712,6 +42719,7 @@ } }, "StructureMediumRocketLiquidFuelTank": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureMediumRocketLiquidFuelTank", "prefab_hash": 1143639539, @@ -41785,6 +42793,7 @@ } }, "StructureMotionSensor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureMotionSensor", "prefab_hash": -1713470563, @@ -41827,6 +42836,7 @@ } }, "StructureNitrolyzer": { + "templateType": "StructureCircuitHolder", "prefab": { "prefab_name": "StructureNitrolyzer", "prefab_hash": 1898243702, @@ -41993,6 +43003,7 @@ } }, "StructureOccupancySensor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureOccupancySensor", "prefab_hash": 322782515, @@ -42034,6 +43045,7 @@ } }, "StructureOverheadShortCornerLocker": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureOverheadShortCornerLocker", "prefab_hash": -1794932560, @@ -42102,6 +43114,7 @@ } }, "StructureOverheadShortLocker": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureOverheadShortLocker", "prefab_hash": 1468249454, @@ -42290,6 +43303,7 @@ } }, "StructurePassiveLargeRadiatorGas": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePassiveLargeRadiatorGas", "prefab_hash": 2066977095, @@ -42340,6 +43354,7 @@ } }, "StructurePassiveLargeRadiatorLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePassiveLargeRadiatorLiquid", "prefab_hash": 24786172, @@ -42390,6 +43405,7 @@ } }, "StructurePassiveLiquidDrain": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePassiveLiquidDrain", "prefab_hash": 1812364811, @@ -42424,6 +43440,7 @@ } }, "StructurePassiveVent": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePassiveVent", "prefab_hash": 335498166, @@ -42439,6 +43456,7 @@ } }, "StructurePassiveVentInsulated": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePassiveVentInsulated", "prefab_hash": 1363077139, @@ -42454,6 +43472,7 @@ } }, "StructurePassthroughHeatExchangerGasToGas": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePassthroughHeatExchangerGasToGas", "prefab_hash": -1674187440, @@ -42508,6 +43527,7 @@ } }, "StructurePassthroughHeatExchangerGasToLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePassthroughHeatExchangerGasToLiquid", "prefab_hash": 1928991265, @@ -42562,6 +43582,7 @@ } }, "StructurePassthroughHeatExchangerLiquidToLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePassthroughHeatExchangerLiquidToLiquid", "prefab_hash": -1472829583, @@ -42616,6 +43637,7 @@ } }, "StructurePictureFrameThickLandscapeLarge": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThickLandscapeLarge", "prefab_hash": -1434523206, @@ -42627,6 +43649,7 @@ } }, "StructurePictureFrameThickLandscapeSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThickLandscapeSmall", "prefab_hash": -2041566697, @@ -42638,6 +43661,7 @@ } }, "StructurePictureFrameThickMountLandscapeLarge": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThickMountLandscapeLarge", "prefab_hash": 950004659, @@ -42649,6 +43673,7 @@ } }, "StructurePictureFrameThickMountLandscapeSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThickMountLandscapeSmall", "prefab_hash": 347154462, @@ -42660,6 +43685,7 @@ } }, "StructurePictureFrameThickMountPortraitLarge": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThickMountPortraitLarge", "prefab_hash": -1459641358, @@ -42671,6 +43697,7 @@ } }, "StructurePictureFrameThickMountPortraitSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThickMountPortraitSmall", "prefab_hash": -2066653089, @@ -42682,6 +43709,7 @@ } }, "StructurePictureFrameThickPortraitLarge": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThickPortraitLarge", "prefab_hash": -1686949570, @@ -42693,6 +43721,7 @@ } }, "StructurePictureFrameThickPortraitSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThickPortraitSmall", "prefab_hash": -1218579821, @@ -42704,6 +43733,7 @@ } }, "StructurePictureFrameThinLandscapeLarge": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThinLandscapeLarge", "prefab_hash": -1418288625, @@ -42715,6 +43745,7 @@ } }, "StructurePictureFrameThinLandscapeSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThinLandscapeSmall", "prefab_hash": -2024250974, @@ -42726,6 +43757,7 @@ } }, "StructurePictureFrameThinMountLandscapeLarge": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThinMountLandscapeLarge", "prefab_hash": -1146760430, @@ -42737,6 +43769,7 @@ } }, "StructurePictureFrameThinMountLandscapeSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThinMountLandscapeSmall", "prefab_hash": -1752493889, @@ -42748,6 +43781,7 @@ } }, "StructurePictureFrameThinMountPortraitLarge": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThinMountPortraitLarge", "prefab_hash": 1094895077, @@ -42759,6 +43793,7 @@ } }, "StructurePictureFrameThinMountPortraitSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThinMountPortraitSmall", "prefab_hash": 1835796040, @@ -42770,6 +43805,7 @@ } }, "StructurePictureFrameThinPortraitLarge": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThinPortraitLarge", "prefab_hash": 1212777087, @@ -42781,6 +43817,7 @@ } }, "StructurePictureFrameThinPortraitSmall": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePictureFrameThinPortraitSmall", "prefab_hash": 1684488658, @@ -42792,6 +43829,7 @@ } }, "StructurePipeAnalysizer": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeAnalysizer", "prefab_hash": 435685051, @@ -42859,6 +43897,7 @@ } }, "StructurePipeCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeCorner", "prefab_hash": -1785673561, @@ -42874,6 +43913,7 @@ } }, "StructurePipeCowl": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeCowl", "prefab_hash": 465816159, @@ -42889,6 +43929,7 @@ } }, "StructurePipeCrossJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeCrossJunction", "prefab_hash": -1405295588, @@ -42904,6 +43945,7 @@ } }, "StructurePipeCrossJunction3": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeCrossJunction3", "prefab_hash": 2038427184, @@ -42919,6 +43961,7 @@ } }, "StructurePipeCrossJunction4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeCrossJunction4", "prefab_hash": -417629293, @@ -42934,6 +43977,7 @@ } }, "StructurePipeCrossJunction5": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeCrossJunction5", "prefab_hash": -1877193979, @@ -42949,6 +43993,7 @@ } }, "StructurePipeCrossJunction6": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeCrossJunction6", "prefab_hash": 152378047, @@ -42964,6 +44009,7 @@ } }, "StructurePipeHeater": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeHeater", "prefab_hash": -419758574, @@ -43012,6 +44058,7 @@ } }, "StructurePipeIgniter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeIgniter", "prefab_hash": 1286441942, @@ -43055,6 +44102,7 @@ } }, "StructurePipeInsulatedLiquidCrossJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeInsulatedLiquidCrossJunction", "prefab_hash": -2068497073, @@ -43070,6 +44118,7 @@ } }, "StructurePipeLabel": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeLabel", "prefab_hash": -999721119, @@ -43104,6 +44153,7 @@ } }, "StructurePipeLiquidCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeLiquidCorner", "prefab_hash": -1856720921, @@ -43119,6 +44169,7 @@ } }, "StructurePipeLiquidCrossJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeLiquidCrossJunction", "prefab_hash": 1848735691, @@ -43134,6 +44185,7 @@ } }, "StructurePipeLiquidCrossJunction3": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeLiquidCrossJunction3", "prefab_hash": 1628087508, @@ -43149,6 +44201,7 @@ } }, "StructurePipeLiquidCrossJunction4": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeLiquidCrossJunction4", "prefab_hash": -9555593, @@ -43164,6 +44217,7 @@ } }, "StructurePipeLiquidCrossJunction5": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeLiquidCrossJunction5", "prefab_hash": -2006384159, @@ -43179,6 +44233,7 @@ } }, "StructurePipeLiquidCrossJunction6": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeLiquidCrossJunction6", "prefab_hash": 291524699, @@ -43194,6 +44249,7 @@ } }, "StructurePipeLiquidStraight": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeLiquidStraight", "prefab_hash": 667597982, @@ -43209,6 +44265,7 @@ } }, "StructurePipeLiquidTJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeLiquidTJunction", "prefab_hash": 262616717, @@ -43224,6 +44281,7 @@ } }, "StructurePipeMeter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeMeter", "prefab_hash": -1798362329, @@ -43258,6 +44316,7 @@ } }, "StructurePipeOneWayValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeOneWayValve", "prefab_hash": 1580412404, @@ -43304,6 +44363,7 @@ } }, "StructurePipeOrgan": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeOrgan", "prefab_hash": 1305252611, @@ -43319,6 +44379,7 @@ } }, "StructurePipeRadiator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeRadiator", "prefab_hash": 1696603168, @@ -43357,6 +44418,7 @@ } }, "StructurePipeRadiatorFlat": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeRadiatorFlat", "prefab_hash": -399883995, @@ -43395,6 +44457,7 @@ } }, "StructurePipeRadiatorFlatLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePipeRadiatorFlatLiquid", "prefab_hash": 2024754523, @@ -43433,6 +44496,7 @@ } }, "StructurePipeStraight": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeStraight", "prefab_hash": 73728932, @@ -43448,6 +44512,7 @@ } }, "StructurePipeTJunction": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePipeTJunction", "prefab_hash": -913817472, @@ -43463,6 +44528,7 @@ } }, "StructurePlanter": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructurePlanter", "prefab_hash": -1125641329, @@ -43488,6 +44554,7 @@ ] }, "StructurePlatformLadderOpen": { + "templateType": "Structure", "prefab": { "prefab_name": "StructurePlatformLadderOpen", "prefab_hash": 1559586682, @@ -43499,6 +44566,7 @@ } }, "StructurePlinth": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructurePlinth", "prefab_hash": 989835703, @@ -43516,6 +44584,7 @@ ] }, "StructurePortablesConnector": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePortablesConnector", "prefab_hash": -899013427, @@ -43580,6 +44649,7 @@ } }, "StructurePowerConnector": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePowerConnector", "prefab_hash": -782951720, @@ -43637,6 +44707,7 @@ } }, "StructurePowerTransmitter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePowerTransmitter", "prefab_hash": -65087121, @@ -43697,6 +44768,7 @@ } }, "StructurePowerTransmitterOmni": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePowerTransmitterOmni", "prefab_hash": -327468845, @@ -43744,6 +44816,7 @@ } }, "StructurePowerTransmitterReceiver": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePowerTransmitterReceiver", "prefab_hash": 1195820278, @@ -43804,6 +44877,7 @@ } }, "StructurePowerUmbilicalFemale": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePowerUmbilicalFemale", "prefab_hash": 101488029, @@ -43843,6 +44917,7 @@ } }, "StructurePowerUmbilicalFemaleSide": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePowerUmbilicalFemaleSide", "prefab_hash": 1922506192, @@ -43882,6 +44957,7 @@ } }, "StructurePowerUmbilicalMale": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePowerUmbilicalMale", "prefab_hash": 1529453938, @@ -43937,6 +45013,7 @@ } }, "StructurePoweredVent": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePoweredVent", "prefab_hash": 938836756, @@ -43995,6 +45072,7 @@ } }, "StructurePoweredVentLarge": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePoweredVentLarge", "prefab_hash": -785498334, @@ -44053,6 +45131,7 @@ } }, "StructurePressurantValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePressurantValve", "prefab_hash": 23052817, @@ -44108,6 +45187,7 @@ } }, "StructurePressureFedGasEngine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePressureFedGasEngine", "prefab_hash": -624011170, @@ -44182,6 +45262,7 @@ } }, "StructurePressureFedLiquidEngine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePressureFedLiquidEngine", "prefab_hash": 379750958, @@ -44259,6 +45340,7 @@ } }, "StructurePressurePlateLarge": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePressurePlateLarge", "prefab_hash": -2008706143, @@ -44303,6 +45385,7 @@ } }, "StructurePressurePlateMedium": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePressurePlateMedium", "prefab_hash": 1269458680, @@ -44347,6 +45430,7 @@ } }, "StructurePressurePlateSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePressurePlateSmall", "prefab_hash": -1536471028, @@ -44391,6 +45475,7 @@ } }, "StructurePressureRegulator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePressureRegulator", "prefab_hash": 209854039, @@ -44446,6 +45531,7 @@ } }, "StructureProximitySensor": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureProximitySensor", "prefab_hash": 568800213, @@ -44488,6 +45574,7 @@ } }, "StructurePumpedLiquidEngine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePumpedLiquidEngine", "prefab_hash": -2031440019, @@ -44565,6 +45652,7 @@ } }, "StructurePurgeValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructurePurgeValve", "prefab_hash": -737232128, @@ -44620,6 +45708,7 @@ } }, "StructureRailing": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureRailing", "prefab_hash": -1756913871, @@ -44631,6 +45720,7 @@ } }, "StructureRecycler": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureRecycler", "prefab_hash": -1633947337, @@ -44723,6 +45813,7 @@ } }, "StructureRefrigeratedVendingMachine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureRefrigeratedVendingMachine", "prefab_hash": -1577831321, @@ -45324,6 +46415,7 @@ } }, "StructureReinforcedCompositeWindow": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureReinforcedCompositeWindow", "prefab_hash": 2027713511, @@ -45335,6 +46427,7 @@ } }, "StructureReinforcedCompositeWindowSteel": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureReinforcedCompositeWindowSteel", "prefab_hash": -816454272, @@ -45346,6 +46439,7 @@ } }, "StructureReinforcedWallPaddedWindow": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureReinforcedWallPaddedWindow", "prefab_hash": 1939061729, @@ -45357,6 +46451,7 @@ } }, "StructureReinforcedWallPaddedWindowThin": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureReinforcedWallPaddedWindowThin", "prefab_hash": 158502707, @@ -45368,6 +46463,7 @@ } }, "StructureRocketAvionics": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureRocketAvionics", "prefab_hash": 808389066, @@ -45469,6 +46565,7 @@ } }, "StructureRocketCelestialTracker": { + "templateType": "StructureLogicDeviceMemory", "prefab": { "prefab_name": "StructureRocketCelestialTracker", "prefab_hash": 997453927, @@ -45576,6 +46673,7 @@ } }, "StructureRocketCircuitHousing": { + "templateType": "StructureCircuitHolder", "prefab": { "prefab_name": "StructureRocketCircuitHousing", "prefab_hash": 150135861, @@ -45640,6 +46738,7 @@ } }, "StructureRocketEngineTiny": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureRocketEngineTiny", "prefab_hash": 178472613, @@ -45716,6 +46815,7 @@ } }, "StructureRocketManufactory": { + "templateType": "StructureLogicDeviceConsumerMemory", "prefab": { "prefab_name": "StructureRocketManufactory", "prefab_hash": 1781051034, @@ -47006,6 +48106,7 @@ } }, "StructureRocketMiner": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureRocketMiner", "prefab_hash": -2087223687, @@ -47071,6 +48172,7 @@ } }, "StructureRocketScanner": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureRocketScanner", "prefab_hash": 2014252591, @@ -47122,6 +48224,7 @@ } }, "StructureRocketTower": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureRocketTower", "prefab_hash": -654619479, @@ -47133,6 +48236,7 @@ } }, "StructureRocketTransformerSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureRocketTransformerSmall", "prefab_hash": 518925193, @@ -47188,6 +48292,7 @@ } }, "StructureRover": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureRover", "prefab_hash": 806513938, @@ -47199,6 +48304,7 @@ } }, "StructureSDBHopper": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSDBHopper", "prefab_hash": -1875856925, @@ -47252,6 +48358,7 @@ } }, "StructureSDBHopperAdvanced": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSDBHopperAdvanced", "prefab_hash": 467225612, @@ -47310,6 +48417,7 @@ } }, "StructureSDBSilo": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSDBSilo", "prefab_hash": 1155865682, @@ -47389,6 +48497,7 @@ } }, "StructureSatelliteDish": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSatelliteDish", "prefab_hash": 439026183, @@ -47451,6 +48560,7 @@ } }, "StructureSecurityPrinter": { + "templateType": "StructureLogicDeviceConsumerMemory", "prefab": { "prefab_name": "StructureSecurityPrinter", "prefab_hash": -641491515, @@ -48531,6 +49641,7 @@ } }, "StructureShelf": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureShelf", "prefab_hash": 1172114950, @@ -48564,6 +49675,7 @@ ] }, "StructureShelfMedium": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureShelfMedium", "prefab_hash": 182006674, @@ -48826,6 +49938,7 @@ } }, "StructureShortCornerLocker": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureShortCornerLocker", "prefab_hash": 1330754486, @@ -48894,6 +50007,7 @@ } }, "StructureShortLocker": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureShortLocker", "prefab_hash": -554553467, @@ -49082,6 +50196,7 @@ } }, "StructureShower": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureShower", "prefab_hash": -775128944, @@ -49130,6 +50245,7 @@ } }, "StructureShowerPowered": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureShowerPowered", "prefab_hash": -1081797501, @@ -49186,6 +50302,7 @@ } }, "StructureSign1x1": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSign1x1", "prefab_hash": 879058460, @@ -49220,6 +50337,7 @@ } }, "StructureSign2x1": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSign2x1", "prefab_hash": 908320837, @@ -49254,6 +50372,7 @@ } }, "StructureSingleBed": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSingleBed", "prefab_hash": -492611, @@ -49305,6 +50424,7 @@ } }, "StructureSleeper": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSleeper", "prefab_hash": -1467449329, @@ -49384,6 +50504,7 @@ } }, "StructureSleeperLeft": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSleeperLeft", "prefab_hash": 1213495833, @@ -49459,6 +50580,7 @@ } }, "StructureSleeperRight": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSleeperRight", "prefab_hash": -1812330717, @@ -49534,6 +50656,7 @@ } }, "StructureSleeperVertical": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSleeperVertical", "prefab_hash": -1300059018, @@ -49609,6 +50732,7 @@ } }, "StructureSleeperVerticalDroid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSleeperVerticalDroid", "prefab_hash": 1382098999, @@ -49666,6 +50790,7 @@ } }, "StructureSmallDirectHeatExchangeGastoGas": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSmallDirectHeatExchangeGastoGas", "prefab_hash": 1310303582, @@ -49712,6 +50837,7 @@ } }, "StructureSmallDirectHeatExchangeLiquidtoGas": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSmallDirectHeatExchangeLiquidtoGas", "prefab_hash": 1825212016, @@ -49758,6 +50884,7 @@ } }, "StructureSmallDirectHeatExchangeLiquidtoLiquid": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSmallDirectHeatExchangeLiquidtoLiquid", "prefab_hash": -507770416, @@ -49804,6 +50931,7 @@ } }, "StructureSmallSatelliteDish": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSmallSatelliteDish", "prefab_hash": -2138748650, @@ -49866,6 +50994,7 @@ } }, "StructureSmallTableBacklessDouble": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureSmallTableBacklessDouble", "prefab_hash": -1633000411, @@ -49877,6 +51006,7 @@ } }, "StructureSmallTableBacklessSingle": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureSmallTableBacklessSingle", "prefab_hash": -1897221677, @@ -49888,6 +51018,7 @@ } }, "StructureSmallTableDinnerSingle": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureSmallTableDinnerSingle", "prefab_hash": 1260651529, @@ -49899,6 +51030,7 @@ } }, "StructureSmallTableRectangleDouble": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureSmallTableRectangleDouble", "prefab_hash": -660451023, @@ -49910,6 +51042,7 @@ } }, "StructureSmallTableRectangleSingle": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureSmallTableRectangleSingle", "prefab_hash": -924678969, @@ -49921,6 +51054,7 @@ } }, "StructureSmallTableThickDouble": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureSmallTableThickDouble", "prefab_hash": -19246131, @@ -49932,6 +51066,7 @@ } }, "StructureSmallTableThickSingle": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureSmallTableThickSingle", "prefab_hash": -291862981, @@ -49943,6 +51078,7 @@ } }, "StructureSolarPanel": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSolarPanel", "prefab_hash": -2045627372, @@ -49987,6 +51123,7 @@ } }, "StructureSolarPanel45": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSolarPanel45", "prefab_hash": -1554349863, @@ -50031,6 +51168,7 @@ } }, "StructureSolarPanel45Reinforced": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSolarPanel45Reinforced", "prefab_hash": 930865127, @@ -50075,6 +51213,7 @@ } }, "StructureSolarPanelDual": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSolarPanelDual", "prefab_hash": -539224550, @@ -50123,6 +51262,7 @@ } }, "StructureSolarPanelDualReinforced": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSolarPanelDualReinforced", "prefab_hash": -1545574413, @@ -50171,6 +51311,7 @@ } }, "StructureSolarPanelFlat": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSolarPanelFlat", "prefab_hash": 1968102968, @@ -50215,6 +51356,7 @@ } }, "StructureSolarPanelFlatReinforced": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSolarPanelFlatReinforced", "prefab_hash": 1697196770, @@ -50259,6 +51401,7 @@ } }, "StructureSolarPanelReinforced": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSolarPanelReinforced", "prefab_hash": -934345724, @@ -50303,6 +51446,7 @@ } }, "StructureSolidFuelGenerator": { + "templateType": "StructureLogicDeviceConsumer", "prefab": { "prefab_name": "StructureSolidFuelGenerator", "prefab_hash": 813146305, @@ -50384,6 +51528,7 @@ } }, "StructureSorter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSorter", "prefab_hash": -1009150565, @@ -50512,6 +51657,7 @@ } }, "StructureStacker": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureStacker", "prefab_hash": -2020231820, @@ -50622,6 +51768,7 @@ } }, "StructureStackerReverse": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureStackerReverse", "prefab_hash": 1585641623, @@ -50732,6 +51879,7 @@ } }, "StructureStairs4x2": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairs4x2", "prefab_hash": 1405018945, @@ -50743,6 +51891,7 @@ } }, "StructureStairs4x2RailL": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairs4x2RailL", "prefab_hash": 155214029, @@ -50754,6 +51903,7 @@ } }, "StructureStairs4x2RailR": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairs4x2RailR", "prefab_hash": -212902482, @@ -50765,6 +51915,7 @@ } }, "StructureStairs4x2Rails": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairs4x2Rails", "prefab_hash": -1088008720, @@ -50776,6 +51927,7 @@ } }, "StructureStairwellBackLeft": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairwellBackLeft", "prefab_hash": 505924160, @@ -50787,6 +51939,7 @@ } }, "StructureStairwellBackPassthrough": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairwellBackPassthrough", "prefab_hash": -862048392, @@ -50798,6 +51951,7 @@ } }, "StructureStairwellBackRight": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairwellBackRight", "prefab_hash": -2128896573, @@ -50809,6 +51963,7 @@ } }, "StructureStairwellFrontLeft": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairwellFrontLeft", "prefab_hash": -37454456, @@ -50820,6 +51975,7 @@ } }, "StructureStairwellFrontPassthrough": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairwellFrontPassthrough", "prefab_hash": -1625452928, @@ -50831,6 +51987,7 @@ } }, "StructureStairwellFrontRight": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairwellFrontRight", "prefab_hash": 340210934, @@ -50842,6 +51999,7 @@ } }, "StructureStairwellNoDoors": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureStairwellNoDoors", "prefab_hash": 2049879875, @@ -50853,6 +52011,7 @@ } }, "StructureStirlingEngine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureStirlingEngine", "prefab_hash": -260316435, @@ -50948,6 +52107,7 @@ } }, "StructureStorageLocker": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureStorageLocker", "prefab_hash": -793623899, @@ -51436,6 +52596,7 @@ } }, "StructureSuitStorage": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureSuitStorage", "prefab_hash": 255034731, @@ -51559,6 +52720,7 @@ } }, "StructureTankBig": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTankBig", "prefab_hash": -1606848156, @@ -51633,6 +52795,7 @@ } }, "StructureTankBigInsulated": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTankBigInsulated", "prefab_hash": 1280378227, @@ -51707,6 +52870,7 @@ } }, "StructureTankConnector": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureTankConnector", "prefab_hash": -1276379454, @@ -51728,6 +52892,7 @@ ] }, "StructureTankConnectorLiquid": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureTankConnectorLiquid", "prefab_hash": 1331802518, @@ -51749,6 +52914,7 @@ ] }, "StructureTankSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTankSmall", "prefab_hash": 1013514688, @@ -51823,6 +52989,7 @@ } }, "StructureTankSmallAir": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTankSmallAir", "prefab_hash": 955744474, @@ -51897,6 +53064,7 @@ } }, "StructureTankSmallFuel": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTankSmallFuel", "prefab_hash": 2102454415, @@ -51971,6 +53139,7 @@ } }, "StructureTankSmallInsulated": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTankSmallInsulated", "prefab_hash": 272136332, @@ -52045,6 +53214,7 @@ } }, "StructureToolManufactory": { + "templateType": "StructureLogicDeviceConsumerMemory", "prefab": { "prefab_name": "StructureToolManufactory", "prefab_hash": -465741100, @@ -55059,6 +56229,7 @@ } }, "StructureTorpedoRack": { + "templateType": "StructureSlots", "prefab": { "prefab_name": "StructureTorpedoRack", "prefab_hash": 1473807953, @@ -55104,6 +56275,7 @@ ] }, "StructureTraderWaypoint": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTraderWaypoint", "prefab_hash": 1570931620, @@ -55147,6 +56319,7 @@ } }, "StructureTransformer": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTransformer", "prefab_hash": -1423212473, @@ -55202,6 +56375,7 @@ } }, "StructureTransformerMedium": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTransformerMedium", "prefab_hash": -1065725831, @@ -55253,6 +56427,7 @@ } }, "StructureTransformerMediumReversed": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTransformerMediumReversed", "prefab_hash": 833912764, @@ -55304,6 +56479,7 @@ } }, "StructureTransformerSmall": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTransformerSmall", "prefab_hash": -890946730, @@ -55355,6 +56531,7 @@ } }, "StructureTransformerSmallReversed": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTransformerSmallReversed", "prefab_hash": 1054059374, @@ -55406,6 +56583,7 @@ } }, "StructureTurbineGenerator": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTurbineGenerator", "prefab_hash": 1282191063, @@ -55450,6 +56628,7 @@ } }, "StructureTurboVolumePump": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureTurboVolumePump", "prefab_hash": 1310794736, @@ -55514,6 +56693,7 @@ } }, "StructureUnloader": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureUnloader", "prefab_hash": 750118160, @@ -55607,6 +56787,7 @@ } }, "StructureUprightWindTurbine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureUprightWindTurbine", "prefab_hash": 1622183451, @@ -55647,6 +56828,7 @@ } }, "StructureValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureValve", "prefab_hash": -692036078, @@ -55694,6 +56876,7 @@ } }, "StructureVendingMachine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureVendingMachine", "prefab_hash": -443130773, @@ -56269,6 +57452,7 @@ } }, "StructureVolumePump": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureVolumePump", "prefab_hash": -321403609, @@ -56324,6 +57508,7 @@ } }, "StructureWallArch": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallArch", "prefab_hash": -858143148, @@ -56335,6 +57520,7 @@ } }, "StructureWallArchArrow": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallArchArrow", "prefab_hash": 1649708822, @@ -56346,6 +57532,7 @@ } }, "StructureWallArchCornerRound": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallArchCornerRound", "prefab_hash": 1794588890, @@ -56357,6 +57544,7 @@ } }, "StructureWallArchCornerSquare": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallArchCornerSquare", "prefab_hash": -1963016580, @@ -56368,6 +57556,7 @@ } }, "StructureWallArchCornerTriangle": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallArchCornerTriangle", "prefab_hash": 1281911841, @@ -56379,6 +57568,7 @@ } }, "StructureWallArchPlating": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallArchPlating", "prefab_hash": 1182510648, @@ -56390,6 +57580,7 @@ } }, "StructureWallArchTwoTone": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallArchTwoTone", "prefab_hash": 782529714, @@ -56401,6 +57592,7 @@ } }, "StructureWallCooler": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWallCooler", "prefab_hash": -739292323, @@ -56469,6 +57661,7 @@ } }, "StructureWallFlat": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallFlat", "prefab_hash": 1635864154, @@ -56480,6 +57673,7 @@ } }, "StructureWallFlatCornerRound": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallFlatCornerRound", "prefab_hash": 898708250, @@ -56491,6 +57685,7 @@ } }, "StructureWallFlatCornerSquare": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallFlatCornerSquare", "prefab_hash": 298130111, @@ -56502,6 +57697,7 @@ } }, "StructureWallFlatCornerTriangle": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallFlatCornerTriangle", "prefab_hash": 2097419366, @@ -56513,6 +57709,7 @@ } }, "StructureWallFlatCornerTriangleFlat": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallFlatCornerTriangleFlat", "prefab_hash": -1161662836, @@ -56524,6 +57721,7 @@ } }, "StructureWallGeometryCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallGeometryCorner", "prefab_hash": 1979212240, @@ -56535,6 +57733,7 @@ } }, "StructureWallGeometryStreight": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallGeometryStreight", "prefab_hash": 1049735537, @@ -56546,6 +57745,7 @@ } }, "StructureWallGeometryT": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallGeometryT", "prefab_hash": 1602758612, @@ -56557,6 +57757,7 @@ } }, "StructureWallGeometryTMirrored": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallGeometryTMirrored", "prefab_hash": -1427845483, @@ -56568,6 +57769,7 @@ } }, "StructureWallHeater": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWallHeater", "prefab_hash": 24258244, @@ -56629,6 +57831,7 @@ } }, "StructureWallIron": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallIron", "prefab_hash": 1287324802, @@ -56640,6 +57843,7 @@ } }, "StructureWallIron02": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallIron02", "prefab_hash": 1485834215, @@ -56651,6 +57855,7 @@ } }, "StructureWallIron03": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallIron03", "prefab_hash": 798439281, @@ -56662,6 +57867,7 @@ } }, "StructureWallIron04": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallIron04", "prefab_hash": -1309433134, @@ -56673,6 +57879,7 @@ } }, "StructureWallLargePanel": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallLargePanel", "prefab_hash": 1492930217, @@ -56684,6 +57891,7 @@ } }, "StructureWallLargePanelArrow": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallLargePanelArrow", "prefab_hash": -776581573, @@ -56695,6 +57903,7 @@ } }, "StructureWallLight": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWallLight", "prefab_hash": -1860064656, @@ -56738,6 +57947,7 @@ } }, "StructureWallLightBattery": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWallLightBattery", "prefab_hash": -1306415132, @@ -56800,6 +58010,7 @@ } }, "StructureWallPaddedArch": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedArch", "prefab_hash": 1590330637, @@ -56811,6 +58022,7 @@ } }, "StructureWallPaddedArchCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedArchCorner", "prefab_hash": -1126688298, @@ -56822,6 +58034,7 @@ } }, "StructureWallPaddedArchLightFittingTop": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedArchLightFittingTop", "prefab_hash": 1171987947, @@ -56833,6 +58046,7 @@ } }, "StructureWallPaddedArchLightsFittings": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedArchLightsFittings", "prefab_hash": -1546743960, @@ -56844,6 +58058,7 @@ } }, "StructureWallPaddedCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedCorner", "prefab_hash": -155945899, @@ -56855,6 +58070,7 @@ } }, "StructureWallPaddedCornerThin": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedCornerThin", "prefab_hash": 1183203913, @@ -56866,6 +58082,7 @@ } }, "StructureWallPaddedNoBorder": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedNoBorder", "prefab_hash": 8846501, @@ -56877,6 +58094,7 @@ } }, "StructureWallPaddedNoBorderCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedNoBorderCorner", "prefab_hash": 179694804, @@ -56888,6 +58106,7 @@ } }, "StructureWallPaddedThinNoBorder": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedThinNoBorder", "prefab_hash": -1611559100, @@ -56899,6 +58118,7 @@ } }, "StructureWallPaddedThinNoBorderCorner": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedThinNoBorderCorner", "prefab_hash": 1769527556, @@ -56910,6 +58130,7 @@ } }, "StructureWallPaddedWindow": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedWindow", "prefab_hash": 2087628940, @@ -56921,6 +58142,7 @@ } }, "StructureWallPaddedWindowThin": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddedWindowThin", "prefab_hash": -37302931, @@ -56932,6 +58154,7 @@ } }, "StructureWallPadding": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPadding", "prefab_hash": 635995024, @@ -56943,6 +58166,7 @@ } }, "StructureWallPaddingArchVent": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddingArchVent", "prefab_hash": -1243329828, @@ -56954,6 +58178,7 @@ } }, "StructureWallPaddingLightFitting": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddingLightFitting", "prefab_hash": 2024882687, @@ -56965,6 +58190,7 @@ } }, "StructureWallPaddingThin": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPaddingThin", "prefab_hash": -1102403554, @@ -56976,6 +58202,7 @@ } }, "StructureWallPlating": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallPlating", "prefab_hash": 26167457, @@ -56987,6 +58214,7 @@ } }, "StructureWallSmallPanelsAndHatch": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallSmallPanelsAndHatch", "prefab_hash": 619828719, @@ -56998,6 +58226,7 @@ } }, "StructureWallSmallPanelsArrow": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallSmallPanelsArrow", "prefab_hash": -639306697, @@ -57009,6 +58238,7 @@ } }, "StructureWallSmallPanelsMonoChrome": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallSmallPanelsMonoChrome", "prefab_hash": 386820253, @@ -57020,6 +58250,7 @@ } }, "StructureWallSmallPanelsOpen": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallSmallPanelsOpen", "prefab_hash": -1407480603, @@ -57031,6 +58262,7 @@ } }, "StructureWallSmallPanelsTwoTone": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallSmallPanelsTwoTone", "prefab_hash": 1709994581, @@ -57042,6 +58274,7 @@ } }, "StructureWallVent": { + "templateType": "Structure", "prefab": { "prefab_name": "StructureWallVent", "prefab_hash": -1177469307, @@ -57053,6 +58286,7 @@ } }, "StructureWaterBottleFiller": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWaterBottleFiller", "prefab_hash": -1178961954, @@ -57134,6 +58368,7 @@ } }, "StructureWaterBottleFillerBottom": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWaterBottleFillerBottom", "prefab_hash": 1433754995, @@ -57215,6 +58450,7 @@ } }, "StructureWaterBottleFillerPowered": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWaterBottleFillerPowered", "prefab_hash": -756587791, @@ -57303,6 +58539,7 @@ } }, "StructureWaterBottleFillerPoweredBottom": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWaterBottleFillerPoweredBottom", "prefab_hash": 1986658780, @@ -57391,6 +58628,7 @@ } }, "StructureWaterDigitalValve": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWaterDigitalValve", "prefab_hash": -517628750, @@ -57446,6 +58684,7 @@ } }, "StructureWaterPipeMeter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWaterPipeMeter", "prefab_hash": 433184168, @@ -57480,6 +58719,7 @@ } }, "StructureWaterPurifier": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWaterPurifier", "prefab_hash": 887383294, @@ -57549,6 +58789,7 @@ } }, "StructureWaterWallCooler": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWaterWallCooler", "prefab_hash": -1369060582, @@ -57617,6 +58858,7 @@ } }, "StructureWeatherStation": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWeatherStation", "prefab_hash": 1997212478, @@ -57673,6 +58915,7 @@ } }, "StructureWindTurbine": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWindTurbine", "prefab_hash": -2082355173, @@ -57717,6 +58960,7 @@ } }, "StructureWindowShutter": { + "templateType": "StructureLogicDevice", "prefab": { "prefab_name": "StructureWindowShutter", "prefab_hash": 2056377335, @@ -57772,6 +59016,7 @@ } }, "ToolPrinterMod": { + "templateType": "Item", "prefab": { "prefab_name": "ToolPrinterMod", "prefab_hash": 1700018136, @@ -57787,6 +59032,7 @@ } }, "ToyLuna": { + "templateType": "Item", "prefab": { "prefab_name": "ToyLuna", "prefab_hash": 94730034, @@ -57802,6 +59048,7 @@ } }, "UniformCommander": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "UniformCommander", "prefab_hash": -2083426457, @@ -57839,6 +59086,7 @@ ] }, "UniformMarine": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "UniformMarine", "prefab_hash": -48342840, @@ -57872,6 +59120,7 @@ ] }, "UniformOrangeJumpSuit": { + "templateType": "ItemSlots", "prefab": { "prefab_name": "UniformOrangeJumpSuit", "prefab_hash": 810053150, @@ -57905,6 +59154,7 @@ ] }, "WeaponEnergy": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "WeaponEnergy", "prefab_hash": 789494694, @@ -57948,6 +59198,7 @@ ] }, "WeaponPistolEnergy": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "WeaponPistolEnergy", "prefab_hash": -385323479, @@ -58000,6 +59251,7 @@ ] }, "WeaponRifleEnergy": { + "templateType": "ItemLogic", "prefab": { "prefab_name": "WeaponRifleEnergy", "prefab_hash": 1154745374, @@ -58052,6 +59304,7 @@ ] }, "WeaponTorpedo": { + "templateType": "Item", "prefab": { "prefab_name": "WeaponTorpedo", "prefab_hash": -1102977898, diff --git a/www/src/ts/app/save.ts b/www/src/ts/app/save.ts index 51c5754..a4fe9ca 100644 --- a/www/src/ts/app/save.ts +++ b/www/src/ts/app/save.ts @@ -1,7 +1,7 @@ import { HTMLTemplateResult, html, css, CSSResultGroup } from "lit"; import { customElement, property, query, state } from "lit/decorators.js"; import { BaseElement, defaultCss } from "components"; -import { VMState } from "session"; +import { SessionDB } from "session"; import SlInput from "@shoelace-style/shoelace/dist/components/input/input.js"; import { repeat } from "lit/directives/repeat.js"; @@ -34,21 +34,21 @@ export class SaveDialog extends BaseElement { `, ]; - private _saves: { name: string; date: Date; session: VMState }[]; + private _saves: { name: string; date: Date; session: SessionDB.CurrentDBVmState }[]; get saves() { return this._saves; } @state() - set saves(val: { name: string; date: Date; session: VMState }[]) { + set saves(val: { name: string; date: Date; session: SessionDB.CurrentDBVmState }[]) { this._saves = val; this.performSearch(); } @state() mode: SaveDialogMode; - private searchResults: { name: string; date: Date; session: VMState }[]; + private searchResults: { name: string; date: Date; session: SessionDB.CurrentDBVmState }[]; constructor() { super(); diff --git a/www/src/ts/presets/demo.ts b/www/src/ts/presets/demo.ts index dd817e4..03aed6f 100644 --- a/www/src/ts/presets/demo.ts +++ b/www/src/ts/presets/demo.ts @@ -1,4 +1,5 @@ -import { VMState } from "../session"; +import { ObjectInfo } from "ic10emu_wasm"; +import { SessionDB } from "../session"; export const demoCode = `# Highlighting Demo @@ -63,92 +64,83 @@ j ra `; -export const demoVMState: VMState = { +export const demoVMState: SessionDB.CurrentDBVmState = { vm: { - ics: [ + objects: [ { - device: 1, - id: 2, - registers: Array(18).fill(0), - ip: 0, - ic: 0, - stack: Array(512).fill(0), - aliases: new Map(), - defines: new Map(), - pins: Array(6).fill(undefined), - state: "Start", - code: demoCode, + obj_info: { + id: 1, + prefab: "StructureCircuitHousing", + socketed_ic: 2, + slots: new Map([[0, { id: 2, quantity: 1 }]]), + connections: new Map([[0, 1]]), + + // unused, provided to make compiler happy + name: undefined, + prefab_hash: undefined, + compile_errors: undefined, + damage: undefined, + device_pins: undefined, + reagents: undefined, + logic_values: undefined, + slot_logic_values: undefined, + entity: undefined, + visible_devices: undefined, + memory: undefined, + source_code: undefined, + circuit: undefined + }, + template: undefined, + database_template: true, }, - ], - devices: [ { - id: 1, - prefab_name: "StructureCircuitHousing", - slots: [ - { - typ: "ProgrammableChip", - occupant: { - id: 2, - fields: { - "PrefabHash": { - field_type: "Read", - value: -744098481, - }, - "Quantity":{ - field_type: "Read", - value: 1 - }, - "MaxQuantity": { - field_type: "Read", - value: 1, - }, - "SortingClass": { - field_type: "Read", - value: 0, - }, - }, - }, - }, - ], - connections: [ - { - CableNetwork: { - net: 1, - typ: "Data", - }, - }, - { - CableNetwork: { - net: undefined, - typ: "Power", - }, + obj_info: { + id: 2, + prefab: "ItemIntegratedCircuit10", + source_code: demoCode, + memory: new Array(512).fill(0), + circuit: { + instruction_pointer: 0, + yield_instruction_count: 0, + state: "Start", + aliases: new Map(), + defines: new Map(), + labels: new Map(), + registers: new Array(18).fill(0) }, - ], - fields: { - "PrefabHash": { - field_type: "Read", - value: -128473777, - }, - "Setting": { - field_type: "ReadWrite", - value: 0, - }, - "RequiredPower": { - field_type: "Read", - value: 0, - } + + // unused, provided to make compiler happy + name: undefined, + prefab_hash: undefined, + compile_errors: undefined, + slots: undefined, + damage: undefined, + device_pins: undefined, + connections: undefined, + reagents: undefined, + logic_values: undefined, + slot_logic_values: undefined, + entity: undefined, + socketed_ic: undefined, + visible_devices: undefined, }, - }, + template: undefined, + database_template: true + } ], networks: [ { id: 1, devices: [1], power_only: [], - channels: Array(8).fill(NaN), - }, + channels: Array(8).fill(NaN) as [number, number, number, number, number, number, number, number], + } ], - default_network: 1, + program_holders: [2], + circuit_holders: [1], + default_network_key: 1, + wireless_receivers: [], + wireless_transmitters: [], }, activeIC: 1, -}; +} diff --git a/www/src/ts/session.ts b/www/src/ts/session.ts index b98a87f..d02f15c 100644 --- a/www/src/ts/session.ts +++ b/www/src/ts/session.ts @@ -1,15 +1,22 @@ -import type { ICError, FrozenVM, Class } from "ic10emu_wasm"; +import type { ICError, FrozenVM, RegisterSpec, DeviceSpec, LogicType, LogicSlotType, LogicField, Class as SlotType, FrozenCableNetwork, FrozenObject, ObjectInfo, ICState, ObjectID } from "ic10emu_wasm"; import { App } from "./app"; -import { openDB, DBSchema } from "idb"; -import { fromJson, toJson } from "./utils"; +import { openDB, DBSchema, IDBPTransaction, IDBPDatabase } from "idb"; +import { TypedEventTarget, crc32, dispatchTypedEvent, fromJson, toJson } from "./utils"; import * as presets from "./presets"; const { demoVMState } = presets; -const LOCAL_DB_VERSION = 1; +export interface SessionEventMap { + "sessions-local-update": CustomEvent, + "session-active-ic": CustomEvent, + "session-id-change": CustomEvent<{ old: ObjectID, new: ObjectID }>, + "session-errors": CustomEvent, + "session-load": CustomEvent, + "active-line": CustomEvent, +} -export class Session extends EventTarget { +export class Session extends TypedEventTarget() { private _programs: Map; private _errors: Map; private _activeIC: number; @@ -51,9 +58,7 @@ export class Session extends EventTarget { set activeIC(val: number) { this._activeIC = val; - this.dispatchEvent( - new CustomEvent("session-active-ic", { detail: this.activeIC }), - ); + this.dispatchCustomEvent("session-active-ic", this.activeIC); } changeID(oldID: number, newID: number) { @@ -61,11 +66,7 @@ export class Session extends EventTarget { this.programs.set(newID, this.programs.get(oldID)); this.programs.delete(oldID); } - this.dispatchEvent( - new CustomEvent("session-id-change", { - detail: { old: oldID, new: newID }, - }), - ); + this.dispatchCustomEvent("session-id-change", { old: oldID, new: newID }) } onIDChange( @@ -108,11 +109,7 @@ export class Session extends EventTarget { } _fireOnErrors(ids: number[]) { - this.dispatchEvent( - new CustomEvent("session-errors", { - detail: ids, - }), - ); + this.dispatchCustomEvent("session-errors", ids); } onErrors(callback: (e: CustomEvent) => any) { @@ -124,11 +121,7 @@ export class Session extends EventTarget { } _fireOnLoad() { - this.dispatchEvent( - new CustomEvent("session-load", { - detail: this, - }), - ); + this.dispatchCustomEvent("session-load", this); } onActiveLine(callback: (e: CustomEvent) => any) { @@ -136,11 +129,7 @@ export class Session extends EventTarget { } _fireOnActiveLine(id: number) { - this.dispatchEvent( - new CustomEvent("active-line", { - detail: id, - }), - ); + this.dispatchCustomEvent("active-line", id); } save() { @@ -164,7 +153,7 @@ export class Session extends EventTarget { } } - async load(data: VMState | OldPrograms | string) { + async load(data: SessionDB.CurrentDBVmState | OldPrograms | string) { if (typeof data === "string") { this._activeIC = 1; this.app.vm.restoreVMState(demoVMState.vm); @@ -207,7 +196,7 @@ export class Session extends EventTarget { this.load(data as OldPrograms); return; } else if ("vm" in data && "activeIC" in data) { - this.load(data as VMState); + this.load(data as SessionDB.CurrentDBVmState); } else { console.log("Bad session data:", data); } @@ -216,40 +205,56 @@ export class Session extends EventTarget { } async openIndexDB() { - return await openDB("ic10-vm-sessions", LOCAL_DB_VERSION, { - upgrade(db, oldVersion, newVersion, transaction, event) { - // only db verison currently known is v1 - if (oldVersion < 1) { + return await openDB("ic10-vm-sessions", SessionDB.LOCAL_DB_VERSION, { + async upgrade(db, oldVersion, newVersion, transaction, event) { + if (oldVersion < SessionDB.DBVersion.V1) { const sessionStore = db.createObjectStore("sessions"); sessionStore.createIndex("by-date", "date"); sessionStore.createIndex("by-name", "name"); } + if (oldVersion < SessionDB.DBVersion.V2) { + const v1Transaction = transaction as unknown as IDBPTransaction; + const v1SessionStore = v1Transaction.objectStore("sessions"); + const v1Sessions = await v1SessionStore.getAll(); + const v2SessionStore = db.createObjectStore("sessionsV2"); + v2SessionStore.createIndex("by-date", "date"); + v2SessionStore.createIndex("by-name", "name"); + for (const v1Session of v1Sessions) { + await v2SessionStore.add({ + name: v1Session.name, + date: v1Session.date, + version: SessionDB.DBVersion.V2, + session: SessionDB.V2.fromV1State(v1Session.session) + }) + } + } }, }); } async saveLocal(name: string) { - const state: VMState = { + const state: SessionDB.CurrentDBVmState = { vm: await (await window.VM.get()).ic10vm.saveVMState(), activeIC: this.activeIC, }; const db = await this.openIndexDB(); - const transaction = db.transaction(["sessions"], "readwrite"); - const sessionStore = transaction.objectStore("sessions"); + const transaction = db.transaction([SessionDB.LOCAL_DB_SESSION_STORE], "readwrite"); + const sessionStore = transaction.objectStore(SessionDB.LOCAL_DB_SESSION_STORE); await sessionStore.put( { name, date: new Date(), + version: SessionDB.LOCAL_DB_VERSION, session: state, }, name, ); - this.dispatchEvent(new CustomEvent("sessions-local-update")); + this.dispatchCustomEvent("sessions-local-update"); } async loadFromLocal(name: string) { const db = await this.openIndexDB(); - const save = await db.get("sessions", name); + const save = await db.get(SessionDB.LOCAL_DB_SESSION_STORE, name); if (typeof save !== "undefined") { const { session } = save; this.load(session); @@ -258,38 +263,324 @@ export class Session extends EventTarget { async deleteLocalSave(name: string) { const db = await this.openIndexDB(); - const transaction = db.transaction(["sessions"], "readwrite"); - const sessionStore = transaction.objectStore("sessions"); + const transaction = db.transaction([SessionDB.LOCAL_DB_SESSION_STORE], "readwrite"); + const sessionStore = transaction.objectStore(SessionDB.LOCAL_DB_SESSION_STORE); await sessionStore.delete(name); - this.dispatchEvent(new CustomEvent("sessions-local-update")); + this.dispatchCustomEvent("sessions-local-update"); } async getLocalSaved() { const db = await this.openIndexDB(); - const sessions = await db.getAll("sessions"); + const sessions = await db.getAll(SessionDB.LOCAL_DB_SESSION_STORE); return sessions; } } -export interface VMState { - activeIC: number; - vm: FrozenVM; -} +export namespace SessionDB { + + export namespace V1 { + + export interface VMState { + activeIC: number; + vm: FrozenVM; + } + + export interface FrozenVM { + ics: FrozenIC[]; + devices: DeviceTemplate[]; + networks: FrozenNetwork[]; + default_network: number; + } + + export interface FrozenNetwork { + id: number; + devices: number[]; + power_only: number[]; + channels: number[]; + } + export type RegisterSpec = { + readonly RegisterSpec: { + readonly indirection: number; + readonly target: number; + }; + }; + export type DeviceSpec = { + readonly DeviceSpec: { + readonly device: + | "Db" + | { readonly Numbered: number } + | { + readonly Indirect: { + readonly indirection: number; + readonly target: number; + }; + }; + readonly connection: number | undefined; + }; + }; + export type Alias = RegisterSpec | DeviceSpec; + + export type Aliases = Map; + + export type Defines = Map; + + export type Pins = (number | undefined)[]; + export interface SlotOccupantTemplate { + id?: number; + fields: { [key in LogicSlotType]?: LogicField }; + } + export interface ConnectionCableNetwork { + CableNetwork: { + net: number | undefined; + typ: string; + }; + } + export type Connection = ConnectionCableNetwork | "Other"; + + export interface SlotTemplate { + typ: SlotType; + occupant?: SlotOccupantTemplate; + } + + export interface DeviceTemplate { + id?: number; + name?: string; + prefab_name?: string; + slots: SlotTemplate[]; + // reagents: { [key: string]: float} + connections: Connection[]; + fields: { [key in LogicType]?: LogicField }; + } + export interface FrozenIC { + device: number; + id: number; + registers: number[]; + ip: number; + ic: number; + stack: number[]; + aliases: Aliases; + defines: Defines; + pins: Pins; + state: string; + code: string; + } + + } + + export namespace V2 { + + export interface VMState { + activeIC: number; + vm: FrozenVM; + } + + function objectFromIC(ic: SessionDB.V1.FrozenIC): FrozenObject { + return { + obj_info: { + name: undefined, + id: ic.id, + prefab: "ItemIntegratedCircuit10", + prefab_hash: crc32("ItemIntegratedCircuit10"), + memory: ic.stack, + source_code: ic.code, + compile_errors: undefined, + circuit: { + instruction_pointer: ic.ip, + yield_instruction_count: ic.ic, + state: ic.state as ICState, + aliases: ic.aliases, + defines: ic.defines, + labels: new Map(), + registers: ic.registers, + }, + + // unused + slots: undefined, + damage: undefined, + device_pins: undefined, + connections: undefined, + reagents: undefined, + logic_values: undefined, + slot_logic_values: undefined, + entity: undefined, + socketed_ic: undefined, + visible_devices: undefined, + }, + database_template: true, + template: undefined, + } + } + function objectsFromV1Template(template: SessionDB.V1.DeviceTemplate, idFn: () => number, socketedIcFn: (id: number) => number | undefined): FrozenObject[] { + const slotOccupantsPairs = new Map(template.slots.flatMap((slot, index) => { + if (typeof slot.occupant !== "undefined") { + return [ + [ + index, + [ + { + obj_info: { + name: undefined, + id: slot.occupant.id ?? idFn(), + prefab: undefined, + prefab_hash: slot.occupant.fields.PrefabHash?.value, + damage: slot.occupant.fields.Damage?.value, + + socketed_ic: undefined, + // unused + memory: undefined, + source_code: undefined, + compile_errors: undefined, + circuit: undefined, + slots: undefined, + device_pins: undefined, + connections: undefined, + reagents: undefined, + logic_values: undefined, + slot_logic_values: undefined, + entity: undefined, + visible_devices: undefined, + }, + database_template: true, + template: undefined + }, + slot.occupant.fields.Quantity ?? 1 + ] + ] + ] as [number, [FrozenObject, number]][]; + } else { + return [] as [number, [FrozenObject, number]][]; + } + })); + return [ + ...Array.from(slotOccupantsPairs.entries()).map(([_index, [obj, _quantity]]) => obj), + { + obj_info: { + name: template.name, + id: template.id, + prefab: template.prefab_name, + prefab_hash: undefined, + slots: new Map( + Array.from(slotOccupantsPairs.entries()) + .map(([index, [obj, quantity]]) => [index, { + quantity, + id: obj.obj_info.id, + }]) + ), + socketed_ic: socketedIcFn(template.id), + + logic_values: new Map(Object.entries(template.fields).map(([key, val]) => { + return [key as LogicType, val.value] + })), + + // unused + memory: undefined, + source_code: undefined, + compile_errors: undefined, + circuit: undefined, + damage: undefined, + device_pins: undefined, + connections: undefined, + reagents: undefined, + slot_logic_values: undefined, + entity: undefined, + visible_devices: undefined, + + }, + database_template: true, + template: undefined, + } + ]; + } -interface AppDBSchemaV1 extends DBSchema { - sessions: { - key: string; - value: { - name: string; - date: Date; - session: VMState; + export function fromV1State(v1State: SessionDB.V1.VMState): VMState { + const highestObjetId = Math.max(... + v1State.vm + .devices + .map(device => device.id ?? -1) + .concat( + v1State.vm + .ics + .map(ic => ic.id ?? -1) + ) + ); + let nextId = highestObjetId + 1; + const deviceIcs = new Map(v1State.vm.ics.map(ic => [ic.device, objectFromIC(ic)])); + const objects = v1State.vm.devices.flatMap(device => { + return objectsFromV1Template(device, () => nextId++, (id) => deviceIcs.get(id)?.obj_info.id ?? undefined) + }) + const vm: FrozenVM = { + objects, + circuit_holders: objects.flatMap(obj => "socketed_ic" in obj.obj_info && typeof obj.obj_info.socketed_ic !== "undefined" ? [obj.obj_info.id] : []), + program_holders: objects.flatMap(obj => "source_code" in obj.obj_info && typeof obj.obj_info.source_code !== "undefined" ? [obj.obj_info.id] : []), + default_network_key: v1State.vm.default_network, + networks: v1State.vm.networks as FrozenCableNetwork[], + wireless_receivers: [], + wireless_transmitters: [], + }; + const v2State: VMState = { + activeIC: v1State.activeIC, + vm, + }; + return v2State; + } + + } + + export enum DBVersion { + V1 = 1, + V2 = 2, + } + + export const LOCAL_DB_VERSION = DBVersion.V2 as const; + export type CurrentDBSchema = AppDBSchemaV2; + export type CurrentDBVmState = V2.VMState; + export const LOCAL_DB_SESSION_STORE = "sessionsV2" as const + + export interface AppDBSchemaV1 extends DBSchema { + sessions: { + key: string; + value: { + name: string; + date: Date; + session: V1.VMState; + }; + indexes: { + "by-date": Date; + "by-name": string; + }; }; - indexes: { - "by-date": Date; - "by-name": string; + } + + export interface AppDBSchemaV2 extends DBSchema { + sessions: { + key: string; + value: { + name: string; + date: Date; + session: V1.VMState; + }; + indexes: { + "by-date": Date; + "by-name": string; + }; + }; + sessionsV2: { + key: string; + value: { + name: string; + date: Date; + version: DBVersion.V2; + session: V2.VMState; + }; + indexes: { + "by-date": Date; + "by-name": string; + }; }; - }; + } } + + export interface OldPrograms { programs: [number, string][]; } diff --git a/www/src/ts/utils.ts b/www/src/ts/utils.ts index 50a176f..514a851 100644 --- a/www/src/ts/utils.ts +++ b/www/src/ts/utils.ts @@ -100,18 +100,18 @@ export function compareMaps(map1: Map, map2: Map): boolean { } for (let [key, val] of map1) { testVal = map2.get(key); - if((testVal === undefined && !map2.has(key)) || !structuralEqual(val, testVal)) { + if ((testVal === undefined && !map2.has(key)) || !structuralEqual(val, testVal)) { return false; } } return true; } -export function compareArrays( array1: any[], array2: any[]): boolean { +export function compareArrays(array1: any[], array2: any[]): boolean { if (array1.length !== array2.length) { return false; } - for ( let i = 0, len = array1.length; i < len; i++) { + for (let i = 0, len = array1.length; i < len; i++) { if (!structuralEqual(array1[i], array2[i])) { return false; } @@ -127,7 +127,7 @@ export function compareStructuralObjects(a: object, b: object): boolean { export function structuralEqual(a: any, b: any): boolean { const aType = typeof a; const bType = typeof b; - if ( aType !== typeof bType) { + if (aType !== typeof bType) { return false; } if (a instanceof Map && b instanceof Map) { @@ -315,9 +315,29 @@ export function clamp(val: number, min: number, max: number) { return Math.min(Math.max(val, min), max); } -export type TypedEventTarget = { - new (): TypedEventTargetInterface; -}; +// export type TypedEventTarget = { +// new(): TypedEventTargetInterface; +// }; + +type Constructor = new (...args: any[]) => T +export const TypedEventTarget = ( +) => { + class TypedEventTargetClass extends EventTarget { + dispatchCustomEvent( + type: K, + data?: EventMap[K] extends CustomEvent ? DetailData : never, + eventInitDict?: EventInit, + ): boolean { + return this.dispatchEvent(new CustomEvent(type as string, { + detail: data, + bubbles: eventInitDict?.bubbles, + cancelable: eventInitDict?.cancelable, + composed: eventInitDict?.composed + })) + } + } + return TypedEventTargetClass as Constructor>; +} interface TypedEventTargetInterface extends EventTarget { addEventListener( @@ -336,15 +356,35 @@ interface TypedEventTargetInterface extends EventTarget { options?: boolean | AddEventListenerOptions, ): void; + /** + * @deprecated This method is untyped because the event name is not present in the event map + */ addEventListener( type: string, callback: EventListenerOrEventListenerObject | null, options?: EventListenerOptions | boolean, ): void; + /** + * @deprecated This method is untyped because the event name is not present in the event map + */ removeEventListener( type: string, callback: EventListenerOrEventListenerObject | null, options?: EventListenerOptions | boolean, ): void; + + dispatchCustomEvent( + type: K, + data?: EventMap[K] extends CustomEvent ? DetailData : never, + eventInitDict?: EventInit, + ): boolean; +} + +export function dispatchTypedEvent( + target: TypedEventTargetInterface, + type: K, + data: EventMap[K] extends CustomEvent ? DetailData : never +): boolean { + return target.dispatchEvent(new CustomEvent(type as string, { detail: data })) } diff --git a/www/src/ts/virtual_machine/base_device.ts b/www/src/ts/virtual_machine/base_device.ts index 27c57ed..6f910bb 100644 --- a/www/src/ts/virtual_machine/base_device.ts +++ b/www/src/ts/virtual_machine/base_device.ts @@ -133,7 +133,7 @@ export const VMObjectMixin = >( const root = super.connectedCallback(); window.VM.get().then((vm) => { vm.addEventListener( - "vm-objects-modified", + "vm-object-modified", this._handleDeviceModified.bind(this), ); vm.addEventListener( @@ -156,7 +156,7 @@ export const VMObjectMixin = >( disconnectedCallback(): void { window.VM.get().then((vm) => { vm.removeEventListener( - "vm-objects-modified", + "vm-object-modified", this._handleDeviceModified.bind(this), ); vm.removeEventListener( @@ -467,7 +467,7 @@ export const VMObjectMixin = >( this.icIP = ip; } const opCount = - this.obj.obj_info.circuit?.yield_instruciton_count ?? null; + this.obj.obj_info.circuit?.yield_instruction_count ?? null; if (this.icOpCount !== opCount) { this.icOpCount = opCount; } diff --git a/www/src/ts/virtual_machine/controls.ts b/www/src/ts/virtual_machine/controls.ts index 2e3d63c..27ef8a3 100644 --- a/www/src/ts/virtual_machine/controls.ts +++ b/www/src/ts/virtual_machine/controls.ts @@ -154,7 +154,7 @@ export class VMICControls extends VMActiveICMixin(BaseElement) {
Errors - ${this.errors.map( + ${this.errors?.map( (err) => typeof err === "object" && "ParseError" in err diff --git a/www/src/ts/virtual_machine/index.ts b/www/src/ts/virtual_machine/index.ts index 185e9c7..acd1c6e 100644 --- a/www/src/ts/virtual_machine/index.ts +++ b/www/src/ts/virtual_machine/index.ts @@ -23,18 +23,19 @@ export interface ToastMessage { id: string; } -export interface VirtualMachinEventMap { +export interface VirtualMachineEventMap { "vm-template-db-loaded": CustomEvent; "vm-objects-update": CustomEvent; "vm-objects-removed": CustomEvent; - "vm-objects-modified": CustomEvent; + "vm-object-modified": CustomEvent; "vm-run-ic": CustomEvent; "vm-object-id-change": CustomEvent<{ old: number; new: number }>; "vm-networks-update": CustomEvent; "vm-networks-removed": CustomEvent; + "vm-message": CustomEvent; } -class VirtualMachine extends (EventTarget as TypedEventTarget) { +class VirtualMachine extends TypedEventTarget() { ic10vm: Comlink.Remote; templateDBPromise: Promise; templateDB: TemplateDatabase; @@ -51,7 +52,7 @@ class VirtualMachine extends (EventTarget as TypedEventTarget(this.vm_worker); this.ic10vm = vm; window.VM.set(this); @@ -155,17 +156,9 @@ class VirtualMachine extends (EventTarget as TypedEventTarget 0) { - this.dispatchEvent( - new CustomEvent("vm-networks-removed", { - detail: removedNetworks, - }), - ); + this.dispatchCustomEvent("vm-networks-removed", removedNetworks); } this.app.session.save(); } @@ -240,17 +233,9 @@ class VirtualMachine extends (EventTarget as TypedEventTarget 0) { - this.dispatchEvent( - new CustomEvent("vm-objects-removed", { - detail: removedObjects, - }), - ); + this.dispatchCustomEvent("vm-objects-removed", removedObjects); } this.app.session.save(); } @@ -272,9 +257,7 @@ class VirtualMachine extends (EventTarget as TypedEventTarget { @@ -533,11 +504,7 @@ class VirtualMachine extends (EventTarget as TypedEventTarget String { - let color_regex = Regex::with_options( - r#"((:?(?!).)+?)"#, - RegexOptions::REGEX_OPTION_MULTILINE | RegexOptions::REGEX_OPTION_CAPTURE_GROUP, - Syntax::default(), - ) - .unwrap(); - let mut new = s.to_owned(); - loop { - new = color_regex.replace_all(&new, |caps: &Captures| caps.at(2).unwrap_or("").to_string()); - if !color_regex.is_match(&new) { - break; - } - } - new + let color_re = Regex::new(r"|").unwrap(); + color_re.replace_all(s, "").to_string() } #[allow(dead_code)] -pub fn color_to_heml(s: &str) -> String { - let color_regex = Regex::with_options( - r#"((:?(?!).)+?)"#, - RegexOptions::REGEX_OPTION_MULTILINE | RegexOptions::REGEX_OPTION_CAPTURE_GROUP, - Syntax::default(), - ) - .unwrap(); - let mut new = s.to_owned(); - loop { - new = color_regex.replace_all(&new, |caps: &Captures| { - format!( - r#"
{}
"#, - caps.at(1).unwrap_or(""), - caps.at(2).unwrap_or("") - ) - }); - if !color_regex.is_match(&new) { - break; - } - } - new +pub fn color_to_html(s: &str) -> String { + // not currently used + // onig regex: r#"((:?(?!).)+?)"# + let color_re_start = Regex::new(r#"#?\w+)>"#).unwrap(); + let color_re_end = Regex::new("").unwrap(); + let start_replaced = color_re_start.replace_all(s, |caps: &Captures| { + format!( + r#"
"#, + caps.name("color").unwrap().as_str() + ) + }); + let replaced = color_re_end.replace_all(&start_replaced, "
"); + replaced.to_string() } #[allow(dead_code)] pub fn strip_link(s: &str) -> String { - let link_regex = Regex::with_options( - r#"(.+?)"#, - RegexOptions::REGEX_OPTION_MULTILINE | RegexOptions::REGEX_OPTION_CAPTURE_GROUP, - Syntax::default(), - ) - .unwrap(); - let mut new = s.to_owned(); - loop { - new = link_regex.replace_all(&new, |caps: &Captures| caps.at(2).unwrap_or("").to_string()); - if !link_regex.is_match(&new) { - break; - } - } - new + let link_re = Regex::new(r"|").unwrap(); + link_re.replace_all(s, "").to_string() }