Decompiled source of Biome Flora v1.0.12

Biome_Flora.dll

Decompiled 2 months ago
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using BepInEx;
using BepInEx.Configuration;
using Jotunn;
using Jotunn.Configs;
using Jotunn.Entities;
using Jotunn.Managers;
using Jotunn.Utils;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("Biome_Flora")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Biome_Flora")]
[assembly: AssemblyCopyright("Copyright ©  2023")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("c0e3dd3a-8a7f-4a5e-864e-5250653205ad")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace Biome_Flora;

[BepInPlugin("horemvore.BiomeFlora", "Biome Flora", "1.0.12")]
[BepInIncompatibility("Azumatt.AzuDevMod")]
[NetworkCompatibility(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
internal class biomeFlora_Plugin : BaseUnityPlugin
{
	public const string PluginGUID = "horemvore.BiomeFlora";

	public const string PluginName = "Biome Flora";

	public const string PluginVersion = "1.0.12";

	public AssetBundle floraAssets;

	public CustomLocalization LocalFlora;

	public ConfigEntry<bool> ModEnable;

	public ConfigEntry<bool> ClutterEnabled;

	public ConfigEntry<bool> FlowersEnabled;

	public ConfigEntry<bool> OresEnabled;

	public ConfigEntry<bool> TreesEnabled;

	public ConfigEntry<bool> RocksEnabled;

	public ConfigEntry<bool> BushesEnabled;

	public ConfigEntry<bool> HostilePlantsEnabled;

	public ConfigEntry<bool> ConversionsEnabled;

	public ConfigEntry<bool> AlloysEnabled;

	public ConfigEntry<bool> VegetablesEnabled;

	public ConfigEntry<bool> UseEnglishJson;

	public ConfigEntry<bool> LoggingEnable;

	public ConfigEntry<bool> VanillaClutterChange;

	public string[] sfxList = new string[1] { "SFX_Crystal_Hit_BF" };

	public string[] prefabList = new string[50]
	{
		"Gympie_AoE_BF", "Nettle_AoE_BF", "DesertTree_Log_BF", "DesertTree_Log_Half_BF", "DesertTree_Stump_BF", "Mushroom_Log_BF", "Mushroom_Log_Half_BF", "Mushroom_Stump_BF", "Oak_Log_BF", "Oak_Log_Half_BF",
		"Oak_Stump_BF", "Willow_Log_BF", "Willow_Log_Half_BF", "Willow_Stump_BF", "Ponderossa_Log_BF", "Ponderossa_Log_Half_BF", "Ponderossa_Stump_BF", "Palm_Log_BF", "Palm_Log_Half_BF", "Palm_Stump_BF",
		"EasternPine_Log_BF", "EasternPine_Log_Half_BF", "Eastern_Stump_BF", "Aspen_Log_BF", "Aspen_Log_Half_BF", "AspenStump_BF", "Cherry_Log_BF", "Cherry_Log_Half_BF", "CherryStump_BF", "Crimean_Log_BF",
		"Crimean_Log_Half_BF", "CrimeanStump_BF", "Linden_Log_BF", "Linden_Log_Half_BF", "LindenStump_BF", "Maple_Log_BF", "Maple_Log_Half_BF", "MapleStump_BF", "Poplar_Log_BF", "Poplar_Log_Half_BF",
		"PoplarStump_BF", "Redwood_Log_BF", "Redwood_Log_Half_BF", "RedwoodStump_BF", "Sakura_Log_BF", "Sakura_Log_Half_BF", "SakuraStump_BF", "Stankevich_Log_BF", "Stankevich_Log_Half_BF", "StankevichStump_BF"
	};

	public string[] itemList = new string[89]
	{
		"Item_IceCrystal_BF", "Item_IceBlock_BF", "Item_Rubber_BF", "Item_PlantFibers_BF", "Item_CactusNeedle_BF", "Item_MushroomFlesh_BF", "Item_MushroomFragment_BF", "Item_SeaMineral_BF", "Item_SeaPearl_BF", "PickaxeBloodMetal_BF",
		"PickaxeNetherite_BF", "PickaxeVibranium_BF", "Item_Beetroot_BF", "Item_Cabbage_BF", "Item_Corn_BF", "Item_Cucumber_BF", "Item_Garlic_BF", "Item_Potato_BF", "Item_Pumpkin_BF", "Item_Radish_BF",
		"Item_Sunflower_BF", "Item_Tomato_BF", "Item_Watermelon_BF", "Item_Wheat_BF", "Seed_Beetroot_BF", "Seed_Cabbage_BF", "Seed_Corn_BF", "Seed_Cucumber_BF", "Seed_Garlic_BF", "Seed_Potato_BF",
		"Seed_Pumpkin_BF", "Seed_Radish_BF", "Seed_Sunflower_BF", "Seed_Tomato_BF", "Seed_Watermelon_BF", "Seed_Wheat_BF", "Item_Sandstone_BF", "Item_IgneousStone_BF", "Item_VolcanicStone_BF", "Item_BasaltStone_BF",
		"Item_CrystalBlue_BF", "Item_CrystalGreen_BF", "Item_CrystalOrange_BF", "Item_CrystalPurple_BF", "Item_CrystalRed_BF", "Item_CrystalTeal_BF", "Item_BloodironBar_BF", "Item_GoldBar_BF", "Item_MoonironBar_BF", "Item_OrichalcumBar_BF",
		"Item_MithrilBar_BF", "Item_VibraniumBar_BF", "Item_ZincBar_BF", "Item_QuicksilverBar_BF", "Item_BrassBar_BF", "Item_CelestialBronzeBar_BF", "Item_BrightsteelBar_BF", "Item_NetheriteBar_BF", "Item_BouncingBet_BF", "Item_BrownrayKnapweed_BF",
		"Item_Chamomile_BF", "Item_CommonChickory_BF", "Item_Cornflower_BF", "Item_GoldenRod_BF", "Item_Poppy_BF", "Item_SaintJohnWort_BF", "Item_Sunroot_BF", "Item_BloodironOre_BF", "Item_VibraniumOre_BF", "Item_ZincOre_BF",
		"Item_GoldOre_BF", "Item_MoonironOre_BF", "Item_OrichalcumOre_BF", "Item_QuicksilverOre_BF", "Item_DesertTreeWood_BF", "Item_OakWood_BF", "Item_WillowWood_BF", "Item_PonderossaPineWood_BF", "Item_PalmWood_BF", "Item_EasternPineWood_BF",
		"Item_AspenWood_BF", "Item_CrimeanWood_BF", "Item_LindenWood_BF", "Item_PoplarWood_BF", "Item_RedwoodWood_BF", "Item_CherryWood_BF", "Item_MapleWood_BF", "Item_SakuraWood_BF", "Item_StankevichWood_BF"
	};

	public string[] staticObjectList = new string[8] { "Ice_Large_1_BF", "Ice_Large_2_BF", "Ice_Large_3_BF", "Ice_Large_4_BF", "Ice_1_BF", "Ice_2_BF", "Ice_3_BF", "Ice_4_BF" };

	public string[] iceFloesList = new string[8] { "IceFloating_Large_1_BF", "IceFloating_Large_2_BF", "IceFloating_Large_3_BF", "IceFloating_Large_4_BF", "IceFloating_1_BF", "IceFloating_2_BF", "IceFloating_3_BF", "IceFloating_4_BF" };

	public string[] noBiomeClutterList = new string[68]
	{
		"Chrysanthemum_Single_BF", "Chrysanthemum_Group_BF", "Daisy_Single_BF", "Daisy_Group_BF", "Dahlia_Single_BF", "Dahlia_Group_BF", "GerberaDaisy_Single_BF", "GerberaDaisy_Group_BF", "Verbena_BF", "ClutterJungle_1_BF",
		"ClutterJungle_1L_BF", "ClutterJungle_2_BF", "ClutterJungle_3_BF", "ClutterJungle_4_BF", "ClutterJungle_5_BF", "ClutterJungle_6_BF", "ClutterJungle_6F_BF", "ClutterJungle_7_BF", "ClutterJungle_7F_BF", "GrassJungle_1_BF",
		"GrassJungle_2_BF", "GrassJungle_3_BF", "FieldGrass_1_BF", "FieldGrass_2_BF", "FieldGrass_3_BF", "FieldGrass_4_BF", "Grass_Plains_1_BF", "Grass_Plains_2_BF", "Grass_Plains_3_BF", "Grass_Plains_4_BF",
		"DesertSage_BF", "Fern_01_BF", "Fern_02_BF", "Fern_03_BF", "Ivy_01_BF", "Ivy_02_BF", "Ivy_03_BF", "LillyValley_01_BF", "LillyValley_02_BF", "Plant_Forest_1_01_BF",
		"Plant_Forest_1_02_BF", "Plant_Forest_1_03_BF", "Plant_Forest_1_04_BF", "Plant_Forest_2_01_BF", "Plant_Forest_2_02_BF", "Plant_Forest_3_01_BF", "ShaggySoldier_01_BF", "ShaggySoldier_02_BF", "ShaggySoldier_03_BF", "Grass_Forest_01_BF",
		"Grass_Forest_02_BF", "Grass_Forest_03_BF", "Grass_Meadow_1_01_BF", "Grass_Meadow_1_02_BF", "Grass_Meadow_1_03_BF", "Grass_Meadow_1_04_BF", "Grass_Meadow_1_05_BF", "Grass_Meadow_1_06_BF", "Grass_Meadow_2_01_BF", "Grass_Meadow_2_02_BF",
		"Grass_Meadow_2_03_BF", "Grass_Meadow_2_04_BF", "Grass_Meadow_2_05_BF", "Grass_Meadow_2_06_BF", "Grass_Meadow_3_01_BF", "Grass_Meadow_3_02_BF", "Grass_Meadow_3_03_BF", "Grass_Meadow_3_04_BF"
	};

	public string[] noBiomeClutterDetailedList = new string[4] { "Grass_Meadow_1_01_Detailed_BF", "Grass_Meadow_1_02_Detailed_BF", "Grass_Meadow_2_01_Detailed_BF", "Grass_Meadow_2_02_Detailed_BF" };

	public string[] noBiomeClutterCrossList = new string[6] { "Grass_Meadow_1_01_Cross_BF", "Grass_Meadow_1_02_Cross_BF", "Grass_Meadow_1_03_Cross_BF", "Grass_Meadow_2_01_Cross_BF", "Grass_Meadow_2_02_Cross_BF", "Grass_Meadow_2_03_Cross_BF" };

	public string[] noBiomeClutterSeaList = new string[7] { "Seaweed_1_BF", "Seaweed_2_BF", "RedSeaFern_1_BF", "RedSeaFern_2_BF", "SeaGrass_1_BF", "SeaGrass_2_BF", "SeaGrass_3_BF" };

	public string[] noBiomeSmallTreeList = new string[6] { "RedMapleSmall_BF", "MapleSmall_BF", "RedWoodSmall_BF", "CrimeanSmall_BF", "LindenSmall_BF", "AspenSmall_BF" };

	public string[] noBiomeYoungTreeList = new string[10] { "RedMapleYoung_BF", "MapleYoung_BF", "WillowYoung_BF", "PonderossaYoung_BF", "PoplarYoung_BF", "EasternYoung_BF", "PalmYoung_BF", "LindenYoung_BF", "AspenYoung_BF", "CrimeanYoung_BF" };

	public string[] noBiomeTreeList = new string[13]
	{
		"DesertTree_Dead_BF", "DesertTree_BF", "RedMapleTree_BF", "MapleTree_BF", "WillowTree_BF", "PonderossaPine_BF", "PoplarTree_BF", "EasternPine_BF", "PalmTree_BF", "AspenTree_BF",
		"CrimeanPine_BF", "RedWood_BF", "LindenTree_BF"
	};

	public string[] noBiomeMatureTreeList = new string[11]
	{
		"RedMapleMature_BF", "MapleMature_BF", "WillowMature_BF", "PonderossaMature_BF", "PoplarMature_BF", "EasternMature_BF", "PalmMature_BF", "RedWoodMature_BF", "CrimeanMature_BF", "LindenMature_BF",
		"AspenMature_BF"
	};

	public string[] noBiomeOldTreeList = new string[13]
	{
		"RedOakOld_BF", "OakOld_BF", "RedMapleOld_BF", "MapleOld_BF", "WillowOld_BF", "PonderossaOld_BF", "PoplarOld_BF", "EasternOld_BF", "PalmOld_BF", "CrimeanOld_BF",
		"RedWoodOld_BF", "LindenOld_BF", "AspenOld_BF"
	};

	public string[] noBiomeAgedTreeList = new string[12]
	{
		"RedOakAged_BF", "OakAged_BF", "RedMapleAged_BF", "MapleAged_BF", "WillowAged_BF", "PonderossaAged_BF", "PoplarAged_BF", "EasternAged_BF", "PalmAged_BF", "CrimeanAged_BF",
		"AspenAged_BF", "LindenAged_BF"
	};

	public string[] noBiomeAncinetTreeList = new string[12]
	{
		"RedOakAncient_BF", "OakAncient_BF", "RedMapleAncient_BF", "MapleAncient_BF", "WillowAncient_BF", "PonderossaAncient_BF", "PoplarAncient_BF", "EasternAncient_BF", "PalmAncient_BF", "LindenAncient_BF",
		"CrimeanAncient_BF", "AspenAncient_BF"
	};

	public string[] noBiomeMushroomTreeList = new string[35]
	{
		"GiantTubeMushroom_Blue_1_BF", "GiantTubeMushroom_Blue_2_BF", "GiantTubeMushroom_Blue_3_BF", "GiantTubeMushroom_Blue_4_BF", "GiantTubeMushroom_Green_1_BF", "GiantTubeMushroom_Green_2_BF", "GiantTubeMushroom_Green_3_BF", "GiantTubeMushroom_Green_4_BF", "GiantTubeMushroom_Purple_1_BF", "GiantTubeMushroom_Purple_2_BF",
		"GiantTubeMushroom_Purple_3_BF", "GiantTubeMushroom_Purple_4_BF", "GiantTubeMushroom_Red_1_BF", "GiantTubeMushroom_Red_2_BF", "GiantTubeMushroom_Red_3_BF", "GiantTubeMushroom_Red_4_BF", "GiantTubeMushroom_Yellow_1_BF", "GiantTubeMushroom_Yellow_2_BF", "GiantTubeMushroom_Yellow_3_BF", "GiantTubeMushroom_Yellow_4_BF",
		"GiantMushroom_Yellow_1_BF", "GiantMushroom_Yellow_2_BF", "GiantMushroom_Yellow_3_BF", "GiantMushroom_Blue_1_BF", "GiantMushroom_Blue_2_BF", "GiantMushroom_Blue_3_BF", "GiantMushroom_Purple_1_BF", "GiantMushroom_Purple_2_BF", "GiantMushroom_Purple_3_BF", "GiantMushroom_Red_1_BF",
		"GiantMushroom_Red_2_BF", "GiantMushroom_Red_3_BF", "GiantMushroom_Green_1_BF", "GiantMushroom_Green_2_BF", "GiantMushroom_Green_3_BF"
	};

	public string[] noBiomeCrystalList = new string[44]
	{
		"CrystalRock_1_BF", "CrystalRock_2_BF", "IceCrystal_Group_1_BF", "IceCrystal_Group_2_BF", "IceCrystal_Group_3_BF", "IceCrystal_1_BF", "IceCrystal_2_BF", "IceCrystal_3_BF", "Crystal_Blue_1_BF", "Crystal_Blue_2_BF",
		"Crystal_Blue_3_BF", "Crystal_Blue_4_BF", "Crystal_Blue_5_BF", "Crystal_Blue_6_BF", "Crystal_Green_1_BF", "Crystal_Green_2_BF", "Crystal_Green_3_BF", "Crystal_Green_4_BF", "Crystal_Green_5_BF", "Crystal_Green_6_BF",
		"Crystal_Orange_1_BF", "Crystal_Orange_2_BF", "Crystal_Orange_3_BF", "Crystal_Orange_4_BF", "Crystal_Orange_5_BF", "Crystal_Orange_6_BF", "Crystal_Purple_1_BF", "Crystal_Purple_2_BF", "Crystal_Purple_3_BF", "Crystal_Purple_4_BF",
		"Crystal_Purple_5_BF", "Crystal_Purple_6_BF", "Crystal_Red_1_BF", "Crystal_Red_2_BF", "Crystal_Red_3_BF", "Crystal_Red_4_BF", "Crystal_Red_5_BF", "Crystal_Red_6_BF", "Crystal_Teal_1_BF", "Crystal_Teal_2_BF",
		"Crystal_Teal_3_BF", "Crystal_Teal_4_BF", "Crystal_Teal_5_BF", "Crystal_Teal_6_BF"
	};

	public string[] noBiomeGlowingMushroomList = new string[40]
	{
		"GlowingMushroom_White_1_BF", "GlowingMushroom_White_2_BF", "GlowingMushroom_White_3_BF", "GlowingMushroom_White_4_BF", "GlowingMushroom_Red_1_BF", "GlowingMushroom_Red_2_BF", "GlowingMushroom_Red_3_BF", "GlowingMushroom_Red_4_BF", "GlowingMushroom_Orange_1_BF", "GlowingMushroom_Orange_2_BF",
		"GlowingMushroom_Orange_3_BF", "GlowingMushroom_Orange_4_BF", "GlowingMushroom_Yellow_1_BF", "GlowingMushroom_Yellow_2_BF", "GlowingMushroom_Yellow_3_BF", "GlowingMushroom_Yellow_4_BF", "GlowingMushroom_Chartreuse_1_BF", "GlowingMushroom_Chartreuse_2_BF", "GlowingMushroom_Chartreuse_3_BF", "GlowingMushroom_Chartreuse_4_BF",
		"GlowingMushroom_Green_1_BF", "GlowingMushroom_Green_2_BF", "GlowingMushroom_Green_3_BF", "GlowingMushroom_Green_4_BF", "GlowingMushroom_Teal_1_BF", "GlowingMushroom_Teal_2_BF", "GlowingMushroom_Teal_3_BF", "GlowingMushroom_Teal_4_BF", "GlowingMushroom_Blue_1_BF", "GlowingMushroom_Blue_2_BF",
		"GlowingMushroom_Blue_3_BF", "GlowingMushroom_Blue_4_BF", "GlowingMushroom_Purple_1_BF", "GlowingMushroom_Purple_2_BF", "GlowingMushroom_Purple_3_BF", "GlowingMushroom_Purple_4_BF", "GlowingMushroom_Pink_1_BF", "GlowingMushroom_Pink_2_BF", "GlowingMushroom_Pink_3_BF", "GlowingMushroom_Pink_4_BF"
	};

	public string[] noBiomeBlockList = new string[18]
	{
		"ObsidianSmallBlock_1_BF", "ObsidianSmallBlock_2_BF", "ObsidianBlock_1_BF", "ObsidianBlock_2_BF", "ObsidianBlock_3_BF", "LavaBlock_1_BF", "LavaBlock_2_BF", "LavaBlock_3_BF", "LavaBlock_4_BF", "LavaBlock_5_BF",
		"Prop_SandBlock_1_BF", "Prop_SandBlock_2_BF", "Prop_SandBlock_3_BF", "Prop_SandBlock_4_BF", "Prop_SandBlock_5_BF", "Prop_SandBlock_6_BF", "Prop_SandBlock_7_BF", "Prop_SandBlock_8_BF"
	};

	public string[] noBiomeFinList = new string[6] { "ClawCrackedRock_1_BF", "ClawCrackedRock_2_BF", "Prop_SandFin_1_BF", "Prop_SandFin_2_BF", "Prop_SandFin_3_BF", "Prop_SandFin_4_BF" };

	public string[] noBiomePlateList = new string[24]
	{
		"ClawRockBase_1_BF", "ClawRockBase_2_BF", "ClawRockBase_3_BF", "ClawRockBase_4_BF", "LavaPlate_1_BF", "LavaPlate_2_BF", "LavaPlate_3_BF", "LavaPlate_4_BF", "LavaPlate_5_BF", "Prop_SandPlate_1_BF",
		"Prop_SandPlate_2_BF", "Prop_SandPlate_3_BF", "Prop_SandPlate_4_BF", "Prop_SandPlate_5_BF", "Prop_SandPlate_6_BF", "Prop_SandPlate_7_BF", "Prop_SandPlate_8_BF", "Prop_SandPlate_9_BF", "Prop_SandPlate_10_BF", "Prop_SandPlate_11_BF",
		"Prop_SandPlate_12_BF", "Prop_SandPlate_13_BF", "Prop_SandPlate_14_BF", "Prop_SandPlate_15_BF"
	};

	public string[] noBiomeRockList = new string[31]
	{
		"ClawRockSmall_1_BF", "ClawRockSmall_2_BF", "ClawRockSmall_3_BF", "ClawRockSmall_4_BF", "ClawRockS_1_BF", "ClawRockS_2_BF", "ClawRockS_3_BF", "ObsidianRockTiny_1_BF", "ObsidianRockTiny_2_BF", "ObsidianRockSmall_1_BF",
		"ObsidianRockSmall_2_BF", "ObsidianRockSmall_3_BF", "LavaRock_1_BF", "LavaRock_2_BF", "LavaRock_3_BF", "LavaRock_4_BF", "Prop_SandRock_1_BF", "Prop_SandRock_2_BF", "Prop_SandRock_3_BF", "Prop_SandRock_4_BF",
		"Prop_SandRock_5_BF", "Prop_SandRock_6_BF", "Prop_SandRock_7_BF", "Prop_SandRock_8_BF", "Prop_SandRock_9_BF", "Prop_SandRock_10_BF", "Prop_SandRock_11_BF", "Prop_SandRock_12_BF", "Prop_SandRock_13_BF", "Prop_SandRock_14_BF",
		"Prop_SandRock_15_BF"
	};

	public string[] noBiomeSedimentList = new string[27]
	{
		"ClawRock_1_BF", "ClawRock_2_BF", "ClawRock_3_BF", "ClawRock_4_BF", "ClawRock_5_BF", "ClawRock_6_BF", "ClawRock_7_BF", "ClawRock_8_BF", "ClawRock_9_BF", "ClawRock_10_BF",
		"ClawRock_11_BF", "ClawRock_12_BF", "ClawRock_13_BF", "Prop_SandSediment_1_BF", "Prop_SandSediment_2_BF", "Prop_SandSediment_3_BF", "Prop_SandSediment_4_BF", "Prop_SandSediment_5_BF", "Prop_SandSediment_6_BF", "Prop_SandSediment_7_BF",
		"Prop_SandSediment_8_BF", "Prop_SandSediment_9_BF", "Prop_SandSediment_10_BF", "Prop_SandSediment_11_BF", "Prop_SandSediment_12_BF", "Prop_SandSediment_13_BF", "Prop_SandSediment_14_BF"
	};

	public string[] noBiomeSpireList = new string[29]
	{
		"ObsidianPillar_1_BF", "ObsidianPillarSmall_1_BF", "ObsidianPillarSmall_2_BF", "ObsidianPillarSmall_3_BF", "LavaPillar_1_BF", "LavaPillar_2_BF", "LavaPillar_3_BF", "LavaPillar_4_BF", "LavaPillar_5_BF", "LavaPillar_6_BF",
		"Prop_SandSpire_1_BF", "Prop_SandSpire_2_BF", "Prop_SandSpire_3_BF", "Prop_SandSpire_4_BF", "Prop_SandSpire_5_BF", "Prop_SandSpire_6_BF", "Prop_SandSpire_7_BF", "Prop_SandSpire_8_BF", "Prop_SandSpire_9_BF", "Prop_SandSpire_10_BF",
		"Prop_SandSpire_11_BF", "Prop_SandSpire_12_BF", "Prop_SandSpire_13_BF", "Prop_SandSpire_14_BF", "Prop_SandSpire_15_BF", "Prop_SandSpire_16_BF", "Prop_SandSpire_17_BF", "Prop_SandSpire_18_BF", "Prop_SandSpire_19_BF"
	};

	public string[] noBiomeCoralList = new string[27]
	{
		"Coral_1_1_BF", "Coral_1_2_BF", "Coral_2_1_BF", "Coral_3_1_BF", "Coral_3_2_BF", "Coral_4_1_BF", "Coral_4_2_BF", "Coral_5_1_BF", "Coral_5_2_BF", "Coral_6_1_BF",
		"Coral_7_1_BF", "Coral_7_2_BF", "Coral_9_1_BF", "Coral_9_2_BF", "Coral_9_3_BF", "Coral_13_1_BF", "Coral_13_2_BF", "Coral_13_3_BF", "Coral_14_1_BF", "Coral_14_2_BF",
		"Coral_14_3_BF", "Coral_14_4_BF", "Coral_15_1_BF", "Coral_15_2_BF", "Coral_15_3_BF", "Coral_16_1_BF", "Coral_16_2_BF"
	};

	public string[] noBiomeDepositList = new string[8] { "MineRock_Bloodiron_BF", "MineRock_Coal_BF", "MineRock_Gold_BF", "MineRock_MoonIron_BF", "MineRock_Orichalcum_BF", "MineRock_Quicksilver_BF", "MineRock_Vibranium_BF", "MineRock_Zinc_BF" };

	public string[] noBiomeSmallDepositList = new string[8] { "MineRock_Bloodiron_Small_BF", "MineRock_Coal_Small_BF", "MineRock_Gold_Small_BF", "MineRock_MoonIron_Small_BF", "MineRock_Orichalcum_Small_BF", "MineRock_Quicksilver_Small_BF", "MineRock_Vibranium_Small_BF", "MineRock_Zinc_Small_BF" };

	public string[] noBiomeTinyDepositList = new string[8] { "MineRock_Bloodiron_Tiny_BF", "MineRock_Coal_Tiny_BF", "MineRock_Gold_Tiny_BF", "MineRock_MoonIron_Tiny_BF", "MineRock_Orichalcum_Tiny_BF", "MineRock_Quicksilver_Tiny_BF", "MineRock_Vibranium_Tiny_BF", "MineRock_Zinc_Tiny_BF" };

	public string[] noBiomePickableSmallList = new string[7] { "Pickable_BrownrayKnapweed_Small_BF", "Pickable_Chamomile_Small_BF", "Pickable_Chicory_Small_BF", "Pickable_Cornflower_Small_BF", "Pickable_Goldenrod_Small_BF", "Pickable_Poppy_Small_BF", "Pickable_Sunroot_Small_BF" };

	public string[] noBiomePickableList = new string[27]
	{
		"Pickable_Beetroot_BF", "Pickable_Cabbage_BF", "Pickable_Corn_BF", "Pickable_Cucumber_BF", "Pickable_Garlic_BF", "Pickable_Potato_BF", "Pickable_Pumpkin_BF", "Pickable_Radish_BF", "Pickable_Sunflower_BF", "Pickable_Tomato_BF",
		"Pickable_Watermelon_BF", "Pickable_Wheat_BF", "Pickable_Crystal_Teal_BF", "Pickable_Crystal_Red_BF", "Pickable_Crystal_Purple_BF", "Pickable_Crystal_Orange_BF", "Pickable_Crystal_Green_BF", "Pickable_Crystal_Blue_BF", "Pickable_BouncingBet_BF", "Pickable_BrownrayKnapweed_BF",
		"Pickable_Chamomile_BF", "Pickable_Chicory_BF", "Pickable_Cornflower_BF", "Pickable_Goldenrod_BF", "Pickable_Poppy_BF", "Pickable_SaintJohnsWort_BF", "Pickable_Sunroot_BF"
	};

	public string[] noBiomeBushList = new string[74]
	{
		"BushJungle_1_BF", "BushJungle_2_BF", "BushJungle_3_BF", "BushJungle_4_BF", "BushJungle_5_BF", "BushJungle_6_BF", "BushJungle_7_BF", "LargeBushJungle_1_BF", "LargeBushJungle_1S_BF", "LargeBushJungle_2_BF",
		"LargeBushJungle_3_BF", "LargeBushJungle_4_BF", "WhompingLotus_1_BF", "WhompingLotus_2_BF", "TangledRibwort_1_BF", "TangledRibwort_2_BF", "GraveGilliflower_1_BF", "GraveGilliflower_2_BF", "DwarfWildRose_1_BF", "DwarfWildRose_2_BF",
		"DwarfWildRose_3_BF", "MercysMoss_BF", "TauntingPoppy_BF", "DevilsDuscle_BF", "GrimPoke_BF", "TwistedCollard_BF", "Phriscus_1_BF", "Phriscus_2_BF", "Shosie_1_BF", "Shosie_2_BF",
		"Shosie_3_BF", "Vaisy_1_BF", "Vaisy_2_BF", "Vaisy_3_BF", "Vaisy_4_BF", "Vaisy_5_BF", "Ekage_1_BF", "Ekage_2_BF", "Ekage_3_BF", "Astrubrac_1_BF",
		"Astrubrac_2_BF", "Astrubrac_3_BF", "Astrubrac_1_Large_BF", "Astrubrac_2_Large_BF", "Astrubrac_3_Large_BF", "Astrubrac_4_Large_BF", "Aloe_1_BF", "Aloe_2_BF", "Aloe_3_BF", "Yucca_1_BF",
		"Yucca_2_BF", "DeadPlant_Desert_BF", "BushGreen_1_BF", "BushGreen_2_BF", "BushGreen_3_BF", "BushGreen_4_BF", "BushGreen_5_BF", "BushYellow_1_BF", "DeadBush_1_BF", "DeadBush_2_BF",
		"DeadBush_3_BF", "SmallPine_1_BF", "BlackCherryBush_1_BF", "BlackCherryBush_2_BF", "BlackCherryBush_3_BF", "BlackCherryBush_4_BF", "BlackCherryBush_5_BF", "WillowBush_1_BF", "WillowBush_2_BF", "WillowBush_3_BF",
		"WillowBush_4_BF", "MapleBush_1_BF", "MapleBush_2_BF", "MapleBush_3_BF"
	};

	public string[] noBiomeHostilePlantList = new string[18]
	{
		"Cactus_1_BF", "Cactus_2_BF", "Cactus_3_BF", "Cactus_4_BF", "Cactus_5_BF", "Cactus_6_BF", "Cactus_7_BF", "Cactus_8_BF", "SmallCactus_1_BF", "SmallCactus_2_BF",
		"DesertThistle_1_BF", "DesertThistle_2_BF", "DesertThistle_3_BF", "GympieHostile_BF", "PoisonIvyHostile_BF", "NettlesGroupHostile_BF", "NettlesHostile_BF", "WildRoseHostile_BF"
	};

	public static VegetationConfig blockRockConfig = new VegetationConfig
	{
		Min = 100f,
		Max = 100f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig finRockConfig = new VegetationConfig
	{
		Min = 40f,
		Max = 40f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig plateRockConfig = new VegetationConfig
	{
		Min = 30f,
		Max = 30f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig rockConfig = new VegetationConfig
	{
		Min = 20f,
		Max = 20f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig sedimentRockConfig = new VegetationConfig
	{
		Min = 10f,
		Max = 10f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig spireRockConfig = new VegetationConfig
	{
		Min = 10f,
		Max = 10f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig staticConfig = new VegetationConfig
	{
		Min = 20f,
		Max = 20f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = -1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1
	};

	public static VegetationConfig floatingIceConfig = new VegetationConfig
	{
		Min = 20f,
		Max = 20f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MaxAltitude = 0f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1
	};

	public static VegetationConfig crystalConfig = new VegetationConfig
	{
		Min = 20f,
		Max = 20f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig glowingMushroomConfig = new VegetationConfig
	{
		Min = 20f,
		Max = 20f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig coralRockConfig = new VegetationConfig
	{
		Min = 10f,
		Max = 10f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		MinAltitude = -1000f,
		MaxAltitude = -1f
	};

	public static VegetationConfig tinyOreConfig = new VegetationConfig
	{
		Min = 20f,
		Max = 20f,
		ScaleMin = 0.9f,
		ScaleMax = 1.3f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig smallOreConfig = new VegetationConfig
	{
		Min = 15f,
		Max = 15f,
		ScaleMin = 0.9f,
		ScaleMax = 1.2f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1
	};

	public static VegetationConfig normOreConfig = new VegetationConfig
	{
		Min = 10f,
		Max = 10f,
		ScaleMin = 0.9f,
		ScaleMax = 1.1f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1
	};

	public static VegetationConfig smallTreeConfig = new VegetationConfig
	{
		Min = 100f,
		Max = 100f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig youngTreeConfig = new VegetationConfig
	{
		Min = 35f,
		Max = 35f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig normTreeConfig = new VegetationConfig
	{
		Min = 30f,
		Max = 30f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig matureTreeConfig = new VegetationConfig
	{
		Min = 25f,
		Max = 25f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig oldTreeConfig = new VegetationConfig
	{
		Min = 20f,
		Max = 20f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig agedTreeConfig = new VegetationConfig
	{
		Min = 15f,
		Max = 15f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig ancientTreeConfig = new VegetationConfig
	{
		Min = 10f,
		Max = 10f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 1,
		InForest = true,
		ForestThresholdMin = 1.1f,
		ForestThresholdMax = 1.15f
	};

	public static VegetationConfig smallPickableConfig = new VegetationConfig
	{
		Min = 2f,
		Max = 5f,
		ScaleMin = 0.75f,
		ScaleMax = 1f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 4,
		InForest = false
	};

	public static VegetationConfig normPickableConfig = new VegetationConfig
	{
		Min = 1f,
		Max = 3f,
		ScaleMin = 0.75f,
		ScaleMax = 1f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 3,
		InForest = false
	};

	public static ClutterConfig seaGrassConfig = new ClutterConfig
	{
		Enabled = true,
		Biome = (Biome)0,
		Instanced = true,
		Amount = 5,
		OnUncleared = true,
		OnCleared = false,
		ScaleMin = 0.5f,
		ScaleMax = 1f,
		MaxTilt = 10f,
		MinAltitude = -1000f,
		MaxAltitude = -1f,
		TerrainTilt = true
	};

	public static ClutterConfig grassSingleConfig = new ClutterConfig
	{
		Enabled = true,
		Biome = (Biome)0,
		Instanced = true,
		Amount = 5,
		OnUncleared = true,
		OnCleared = false,
		ScaleMin = 0.5f,
		ScaleMax = 1f,
		MaxTilt = 10f,
		TerrainTilt = true
	};

	public static ClutterConfig grassDetailedConfig = new ClutterConfig
	{
		Enabled = true,
		Biome = (Biome)0,
		Instanced = true,
		Amount = 25,
		OnUncleared = true,
		OnCleared = false,
		ScaleMin = 0.75f,
		ScaleMax = 1f,
		MaxTilt = 30f,
		TerrainTilt = true
	};

	public static ClutterConfig grassCrossConfig = new ClutterConfig
	{
		Enabled = true,
		Biome = (Biome)0,
		Instanced = true,
		Amount = 25,
		OnUncleared = true,
		OnCleared = false,
		ScaleMin = 0.75f,
		ScaleMax = 1f,
		MaxTilt = 20f,
		TerrainTilt = true
	};

	public static VegetationConfig bushConfig = new VegetationConfig
	{
		Min = 5f,
		Max = 10f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 4,
		InForest = false
	};

	public static VegetationConfig seaVegSingleConfig = new VegetationConfig
	{
		Min = 5f,
		Max = 10f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 4,
		MinAltitude = -1000f,
		MaxAltitude = -1f
	};

	public static VegetationConfig hostilePlantConfig = new VegetationConfig
	{
		Min = 2f,
		Max = 5f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 4,
		InForest = false
	};

	public static VegetationConfig giantMushroomConfig = new VegetationConfig
	{
		Min = 2f,
		Max = 5f,
		ScaleMin = 0.75f,
		ScaleMax = 1.25f,
		MinAltitude = 1f,
		Biome = (Biome)0,
		BiomeArea = (BiomeArea)3,
		BlockCheck = true,
		MaxTilt = 30f,
		MaxTerrainDelta = 2f,
		GroupSizeMin = 1,
		GroupSizeMax = 4,
		InForest = false
	};

	public void CreateConfigurationValues()
	{
		//IL_002f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0034: Unknown result type (might be due to invalid IL or missing references)
		//IL_003c: Unknown result type (might be due to invalid IL or missing references)
		//IL_004a: Expected O, but got Unknown
		//IL_004a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0054: Expected O, but got Unknown
		//IL_0079: Unknown result type (might be due to invalid IL or missing references)
		//IL_007e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0086: Unknown result type (might be due to invalid IL or missing references)
		//IL_0094: Expected O, but got Unknown
		//IL_0094: Unknown result type (might be due to invalid IL or missing references)
		//IL_009e: Expected O, but got Unknown
		//IL_00c3: Unknown result type (might be due to invalid IL or missing references)
		//IL_00c8: Unknown result type (might be due to invalid IL or missing references)
		//IL_00d0: Unknown result type (might be due to invalid IL or missing references)
		//IL_00de: Expected O, but got Unknown
		//IL_00de: Unknown result type (might be due to invalid IL or missing references)
		//IL_00e8: Expected O, but got Unknown
		//IL_010d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0112: Unknown result type (might be due to invalid IL or missing references)
		//IL_011a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0128: Expected O, but got Unknown
		//IL_0128: Unknown result type (might be due to invalid IL or missing references)
		//IL_0132: Expected O, but got Unknown
		//IL_0157: Unknown result type (might be due to invalid IL or missing references)
		//IL_015c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0164: Unknown result type (might be due to invalid IL or missing references)
		//IL_0172: Expected O, but got Unknown
		//IL_0172: Unknown result type (might be due to invalid IL or missing references)
		//IL_017c: Expected O, but got Unknown
		//IL_01a1: Unknown result type (might be due to invalid IL or missing references)
		//IL_01a6: Unknown result type (might be due to invalid IL or missing references)
		//IL_01ae: Unknown result type (might be due to invalid IL or missing references)
		//IL_01bc: Expected O, but got Unknown
		//IL_01bc: Unknown result type (might be due to invalid IL or missing references)
		//IL_01c6: Expected O, but got Unknown
		//IL_01eb: Unknown result type (might be due to invalid IL or missing references)
		//IL_01f0: Unknown result type (might be due to invalid IL or missing references)
		//IL_01f8: Unknown result type (might be due to invalid IL or missing references)
		//IL_0206: Expected O, but got Unknown
		//IL_0206: Unknown result type (might be due to invalid IL or missing references)
		//IL_0210: Expected O, but got Unknown
		//IL_0235: Unknown result type (might be due to invalid IL or missing references)
		//IL_023a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0242: Unknown result type (might be due to invalid IL or missing references)
		//IL_0250: Expected O, but got Unknown
		//IL_0250: Unknown result type (might be due to invalid IL or missing references)
		//IL_025a: Expected O, but got Unknown
		//IL_027f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0284: Unknown result type (might be due to invalid IL or missing references)
		//IL_028c: Unknown result type (might be due to invalid IL or missing references)
		//IL_029a: Expected O, but got Unknown
		//IL_029a: Unknown result type (might be due to invalid IL or missing references)
		//IL_02a4: Expected O, but got Unknown
		//IL_02c9: Unknown result type (might be due to invalid IL or missing references)
		//IL_02ce: Unknown result type (might be due to invalid IL or missing references)
		//IL_02d6: Unknown result type (might be due to invalid IL or missing references)
		//IL_02e4: Expected O, but got Unknown
		//IL_02e4: Unknown result type (might be due to invalid IL or missing references)
		//IL_02ee: Expected O, but got Unknown
		//IL_0313: Unknown result type (might be due to invalid IL or missing references)
		//IL_0318: Unknown result type (might be due to invalid IL or missing references)
		//IL_0320: Unknown result type (might be due to invalid IL or missing references)
		//IL_032e: Expected O, but got Unknown
		//IL_032e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0338: Expected O, but got Unknown
		//IL_035d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0362: Unknown result type (might be due to invalid IL or missing references)
		//IL_036a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0378: Expected O, but got Unknown
		//IL_0378: Unknown result type (might be due to invalid IL or missing references)
		//IL_0382: Expected O, but got Unknown
		//IL_03a7: Unknown result type (might be due to invalid IL or missing references)
		//IL_03ac: Unknown result type (might be due to invalid IL or missing references)
		//IL_03b4: Unknown result type (might be due to invalid IL or missing references)
		//IL_03c2: Expected O, but got Unknown
		//IL_03c2: Unknown result type (might be due to invalid IL or missing references)
		//IL_03cc: Expected O, but got Unknown
		//IL_03f1: Unknown result type (might be due to invalid IL or missing references)
		//IL_03f6: Unknown result type (might be due to invalid IL or missing references)
		//IL_03fe: Unknown result type (might be due to invalid IL or missing references)
		//IL_040c: Expected O, but got Unknown
		//IL_040c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0416: Expected O, but got Unknown
		try
		{
			((BaseUnityPlugin)this).Config.SaveOnConfigSet = true;
			ModEnable = ((BaseUnityPlugin)this).Config.Bind<bool>("0 Biome Flora", "Enable", true, new ConfigDescription("Admin only, Enable or disable this mod. All prefabs have a default Biome of None.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 100
			} }));
			ClutterEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("1 Clutter", "Enable", true, new ConfigDescription("Enable or disable Clutter.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 95
			} }));
			FlowersEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("2 Pickables", "Enable", true, new ConfigDescription("Enable or disable Vegetable, Crystal and Flower Pickables.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 90
			} }));
			OresEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("3 Ores and Crystals", "Enable", true, new ConfigDescription("Enable or disable Meteor Ores and giant Crystals.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 85
			} }));
			TreesEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("4 Trees", "Enable", true, new ConfigDescription("Enable or disable Trees.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 80
			} }));
			RocksEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("5 Rocks", "Enable", true, new ConfigDescription("Enable or disable Rocks.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 75
			} }));
			BushesEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("6 Bushes", "Enable", true, new ConfigDescription("Enable or disable Bushes.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 70
			} }));
			HostilePlantsEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("7 Hostile Plants", "Enable", true, new ConfigDescription("Enable or disable Hostile Plants.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 65
			} }));
			ConversionsEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("8 Conversions", "Enable", true, new ConfigDescription("Enable or disable conversions for the ores into metals at the Smelter or Blast Furnace.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 60
			} }));
			AlloysEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("9 Alloys", "Enable", true, new ConfigDescription("Enable or disable Alloy recipes.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 55
			} }));
			VegetablesEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("91 Vegetables", "Enable", true, new ConfigDescription("Enable or disable Cultivated Vegetables.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 50
			} }));
			UseEnglishJson = ((BaseUnityPlugin)this).Config.Bind<bool>("98 English Translation", "Disable", false, new ConfigDescription("Disable hardcoded English translation and load from the json file instead.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 45
			} }));
			LoggingEnable = ((BaseUnityPlugin)this).Config.Bind<bool>("99 Logging", "Enable", false, new ConfigDescription("Enables logging.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 40
			} }));
			VanillaClutterChange = ((BaseUnityPlugin)this).Config.Bind<bool>("99.1 Testing - Clutter", "Enable", false, new ConfigDescription("Enables or Disable's all registered clutter not added by this mod at time of load. Does not effect mods registering prefabs after this mod. Set to true to disable clutter and false to re-enable it. Requires reboot.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes
			{
				IsAdminOnly = true,
				Order = 35
			} }));
			SynchronizationManager.OnConfigurationSynchronized += delegate(object obj, ConfigurationSynchronizationEventArgs attr)
			{
				if (attr.InitialSynchronization)
				{
					Logger.LogMessage((object)"Initial Config sync event received for Biome Flora");
				}
				else
				{
					Logger.LogMessage((object)"Config sync event received for Biome Flora");
				}
			};
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding configuration values: {arg}");
		}
	}

	private void Awake()
	{
		try
		{
			CreateConfigurationValues();
			if (ModEnable.Value)
			{
				if (!UseEnglishJson.Value)
				{
					AddLocalization();
				}
				AddTranslationsFromJson();
				LoadBundle();
				AddSFX();
				AddPrefabs();
				AddItems();
				AddRecipesFromJson();
				if (ClutterEnabled.Value)
				{
					AddClutterGrassSingleNoBiome();
					AddClutterGrassDetailedNoBiome();
					AddClutterGrassCrossNoBiome();
					AddClutterSeaGrassNoBiome();
				}
				if (RocksEnabled.Value)
				{
					AddRocksBlockNoBiome();
					AddRocksFinNoBiome();
					AddRocksPlateNoBiome();
					AddRocksNoBiome();
					AddRocksSedimentNoBiome();
					AddRocksSpireNoBiome();
					AddCoralsNoBiome();
					AddIceFloeNoBiome();
					AddStaticObjectsNoBiome();
				}
				if (TreesEnabled.Value)
				{
					AddTreesSmallNoBiome();
					AddTreesYoungNoBiome();
					AddTreesNoBiome();
					AddTreesMatureNoBiome();
					AddTreesOldNoBiome();
					AddTreesAgedNoBiome();
					AddTreesAcientNoBiome();
					AddGiantMushroomsNoBiome();
				}
				if (OresEnabled.Value)
				{
					AddDepositsTinyNoBiome();
					AddDepositsSmallNoBiome();
					AddDepositsNoBiome();
					AddCrystalsNoBiome();
				}
				if (FlowersEnabled.Value)
				{
					AddSmallPickablesNoBiome();
					AddPickablesNoBiome();
				}
				if (BushesEnabled.Value)
				{
					AddBushesNoBiome();
					AddGlowingMushroomsNoBiome();
				}
				if (HostilePlantsEnabled.Value)
				{
					AddHostilePlantsNoBiome();
				}
				if (ConversionsEnabled.Value)
				{
					UpdateSmelter();
					UpdateBlastFurnace();
				}
				if (AlloysEnabled.Value)
				{
					AddAlloyRecipes();
				}
				if (VegetablesEnabled.Value)
				{
					AddVegetableSaplings();
				}
				ZoneManager.OnVanillaClutterAvailable += DisableOrEnableAllVanillaClutter;
				PrefabManager.OnVanillaPrefabsAvailable += AddSFX;
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while initalizing plugin: {arg}");
		}
	}

	public void AddLocalization()
	{
		try
		{
			LocalFlora = LocalizationManager.Instance.GetLocalization();
			CustomLocalization localFlora = LocalFlora;
			string text = "English";
			localFlora.AddTranslation(ref text, new Dictionary<string, string>
			{
				{ "item_icecrystal_bf", "Ice Crystal" },
				{ "item_icecrystal_desc_bf", "Cold to the touch" },
				{ "item_iceblock_bf", "Block of Ice" },
				{ "item_iceblock_desc_bf", "It is wet, cold and heavy" },
				{ "prop_icecrystal_bf", "Crystalized Ice" },
				{ "prop_glowingmushroom_bf", "Glowing Mushroom" },
				{ "prop_tangledribwort_bf", "Tangled Ribwort" },
				{ "prop_whompinglotus_bf", "Whomping Lotus" },
				{ "prop_grimpoke_bf", "Grim Poke" },
				{ "prop_devilsduscle_bf", "Devil's Duscle" },
				{ "prop_mercysmoss_bf", "Mercy's Moss" },
				{ "prop_tauntingpoppy_bf", "Taunting Poppy" },
				{ "prop_gravegilliflower_bf", "Grave Gilliflower" },
				{ "prop_dwarfwildrose_bf", "Dwarf Wild Rose" },
				{ "prop_twistedcollard_bf", "Twisted Collard" },
				{ "item_rubber_bf", "Goo" },
				{ "item_rubber_desc_bf", "Sticky white goo from a jungle plant" },
				{ "item_plantfibers_bf", "Plant Fibers" },
				{ "item_plantfibers_desc_bf", "Tough fibers from a desert plant" },
				{ "item_cactusneedle_bf", "Cactus Needle" },
				{ "item_cactusneedle_desc_bf", "A small sharp needle from a cactus" },
				{ "prop_desertthistle_bf", "Desert Thistle" },
				{ "prop_vaisy_bf", "Vaisy" },
				{ "prop_shosie_bf", "Shosie" },
				{ "prop_phriscus_bf", "Phriscus" },
				{ "prop_ekage_bf", "Ekage" },
				{ "prop_astrubrac_bf", "Astrubrac" },
				{ "prop_deadplant_bf", "Dead Plant" },
				{ "prop_aloe_bf", "Aloe" },
				{ "prop_yucca_bf", "Yucca" },
				{ "prop_cactus_bf", "Cactus" },
				{ "prop_crystal_bf", "Mysterious Crystal" },
				{ "item_mushroomfragment_bf", "Mushroom Fragment" },
				{ "item_mushroomfragment_desc_bf", "Fragment of mushroom flesh" },
				{ "item_mushroomflesh_bf", "Mushroom Flesh" },
				{ "item_mushroomflesh_desc_bf", "Flesh from a giant mushroom" },
				{ "item_seamineral_bf", "Mysterious Mineral" },
				{ "item_seamineral_desc_bf", "A mysterious mineral" },
				{ "item_seapearl_bf", "Giant Pearl" },
				{ "item_seapearl_desc_bf", "A large gemstone" },
				{ "item_pickaxe_bloodmetal_bf", "Bloodmetal Pickaxe" },
				{ "item_pickaxe_bloodmetal_desc_bf", "Mistlands tier pickaxe" },
				{ "item_pickaxe_netherite_bf", "Netherite Pickaxe" },
				{ "item_pickaxe_netherite_desc_bf", "Ash Lands tier pickaxe" },
				{ "item_pickaxe_vibranium_bf", "Vibranium Pickaxe" },
				{ "item_pickaxe_vibranium_desc_bf", "Deep North tier pickaxe" },
				{ "prop_gianttubemushroom_bf", "Giant Tube Mushroom" },
				{ "prop_giantmushroom_bf", "Giant Mushroom" },
				{ "prop_mushroomstump_bf", "Mushroom Stump" },
				{ "prop_bush_bf", "Bush" },
				{ "prop_deadbush_bf", "Dead Bush" },
				{ "prop_smallpine_bf", "Dwarf Pine" },
				{ "plant_sapling_beetroot_bf", "Wild Beet" },
				{ "plant_sapling_beetroot_desc_bf", "Can be found in Black Forest" },
				{ "item_beetroot_bf", "Beet" },
				{ "item_beetroot_desc_bf", "Root Vegetable" },
				{ "item_beetrootseeds_bf", "Beet Seeds" },
				{ "item_beetrootseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_cabbage_bf", "Cabbage" },
				{ "plant_sapling_cabbage_desc_bf", "Can be found in Mistlands" },
				{ "item_cabbage_bf", "Cabbage" },
				{ "item_cabbage_desc_bf", "A Vegetable" },
				{ "item_cabbageseeds_bf", "Cabbage Seeds" },
				{ "item_cabbageseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_corn_bf", "Wild Corn" },
				{ "plant_sapling_corn_desc_bf", "Can be found in Plains" },
				{ "item_corn_bf", "Corn" },
				{ "item_corn_desc_bf", "A Vegetable" },
				{ "item_cornseeds_bf", "Corn Seeds" },
				{ "item_cornseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_cucumber_bf", "Wild Cucumber" },
				{ "plant_sapling_cucumber_desc_bf", "Can be found in Meadows" },
				{ "item_cucumber_bf", "Cucumber" },
				{ "item_cucumber_desc_bf", "A Vegetable" },
				{ "item_cucumberseeds_bf", "Cucumber Seeds" },
				{ "item_cucumberseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_garlic_bf", "Wild Garlic" },
				{ "plant_sapling_garlic_desc_bf", "Can be found in Black Forest" },
				{ "item_garlic_bf", "Garlic" },
				{ "item_garlic_desc_bf", "A Herb" },
				{ "item_garlicseeds_bf", "Garlic Seeds" },
				{ "item_garlicseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_potato_bf", "Wild Potato" },
				{ "plant_sapling_potato_desc_bf", "Can be found in Meadows" },
				{ "item_potato_bf", "Potato" },
				{ "item_potato_desc_bf", "Root Vegetable" },
				{ "item_potatoseeds_bf", "Potato Seeds" },
				{ "item_potatoseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_pumpkin_bf", "Wild Pumpkin" },
				{ "plant_sapling_pumpkin_desc_bf", "Can be found in Swamp" },
				{ "item_pumpkin_bf", "Pumpkin" },
				{ "item_pumpkin_desc_bf", "A Vegetable" },
				{ "item_pumpkinseeds_bf", "Pumpkin Seeds" },
				{ "item_pumpkinseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_radish_bf", "Wild Radish" },
				{ "plant_sapling_radish_desc_bf", "Can be found in Swamp" },
				{ "item_radish_bf", "Radish" },
				{ "item_radish_desc_bf", "Root Vegetable" },
				{ "item_radishseeds_bf", "Radish Seeds" },
				{ "item_radishseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_sunflower_bf", "Wild Sunflower" },
				{ "plant_sapling_sunflower_desc_bf", "Can be found in Plains" },
				{ "item_sunflower_bf", "Sunflower" },
				{ "item_sunflower_desc_bf", "A Flower" },
				{ "item_sunflowerseeds_bf", "Sunflower Seeds" },
				{ "item_sunflowerseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_tomato_bf", "Wild Tomato" },
				{ "plant_sapling_tomato_desc_bf", "Can be found in Meadows" },
				{ "item_tomato_bf", "Tomato" },
				{ "item_tomato_desc_bf", "A  Vegetable" },
				{ "item_tomatoseeds_bf", "Tomato Seeds" },
				{ "item_tomatoseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_watermelon_bf", "Wild Watermelon" },
				{ "plant_sapling_watermelon_desc_bf", "Can be found in Mistlands" },
				{ "item_watermelon_bf", "Watermelon" },
				{ "item_watermelon_desc_bf", "A Fruit" },
				{ "item_watermelonseeds_bf", "Watermelon Seeds" },
				{ "item_watermelonseeds_desc_bf", "A seed for planting" },
				{ "plant_sapling_wheat_bf", "Wild Wheat" },
				{ "plant_sapling_wheat_desc_bf", "Can be found in Plains" },
				{ "item_wheat_bf", "Wheat" },
				{ "item_wheat_desc_bf", "Root Vegetable" },
				{ "item_wheatseeds_bf", "Wheat Seeds" },
				{ "item_wheatseeds_desc_bf", "A seed for planting" },
				{ "prop_blackcherrybush_bf", "Black Cherry Bush" },
				{ "prop_maplebush_bf", "Maple Sapling" },
				{ "prop_willowbush_bf", "Grey Willow Bush" },
				{ "prop_nettles_bf", "Nettles" },
				{ "prop_wildrose_bf", "Wild Rose" },
				{ "prop_bloodiron_deposit_bf", "Bloodiron" },
				{ "prop_coal_deposit_bf", "Coal" },
				{ "prop_gold_deposit_bf", "Gold" },
				{ "prop_mooniron_deposit_bf", "Mooniron" },
				{ "prop_quciksilver_deposit_bf", "Mithril" },
				{ "prop_zinc_deposit_bf", "Zinc" },
				{ "prop_orichalcum_deposit_bf", "Orichalcum" },
				{ "prop_vibranium_deposit_bf", "Vibranium" },
				{ "prop_deserttree_bf", "Palo Verde" },
				{ "prop_eastern_bf", "Eastern Pine" },
				{ "prop_palm_bf", "Palm Tree" },
				{ "prop_ponderossa_bf", "Ponderossa Pine" },
				{ "prop_willow_bf", "Willow" },
				{ "prop_cherry_bf", "Cherry" },
				{ "prop_crimean_bf", "Crimean Pine" },
				{ "prop_linden_bf", "Linden" },
				{ "prop_redwood_bf", "Redwood" },
				{ "prop_sakura_bf", "Sakura" },
				{ "prop_stankevich_bf", "Stankevich Pine" },
				{ "prop_aspen_bf", "Aspen" },
				{ "prop_maple_bf", "Maple" },
				{ "prop_poplar_bf", "Poplar" },
				{ "prop_blackjackoak_bf", "Blackjack Oak" },
				{ "prop_redoak_bf", "Northern Red Oak" },
				{ "item_sand_stone_bf", "Sandstone" },
				{ "item_sand_stone_desc_bf", "A yellow coloured stone" },
				{ "item_volcanic_stone_bf", "Volcanic Stone" },
				{ "item_volcanic_stone_desc_bf", "A hot, dark stone" },
				{ "item_igneous_stone_bf", "Igneous Stone" },
				{ "item_igneous_stone_desc_bf", "A dark coloured stone" },
				{ "item_basalt_stone_bf", "Basalt" },
				{ "item_basalt_stone_desc_bf", "A grey coloured stone" },
				{ "item_bloodsteelbar_bf", "Bloodiron Ingot" },
				{ "item_bloodsteelbar_desc_bf", "A red coloured metal ingot" },
				{ "item_goldbar_bf", "Gold Ingot" },
				{ "item_goldbar_desc_bf", "A yellow coloured metal ingot" },
				{ "item_moonironbar_bf", "Mooniron Ingot" },
				{ "item_moonironbar_desc_bf", "A blue coloured metal ingot" },
				{ "item_quicksilverbar_bf", "Quicksilver Ingot" },
				{ "item_quicksilverbar_desc_bf", "A shiny silver coloured metal ingot" },
				{ "item_zincbar_bf", "Zinc Ingot" },
				{ "item_zincbar_desc_bf", "A dull silver coloured metal ingot" },
				{ "item_orichalcumbar_bf", "Orichalcum Ingot" },
				{ "item_orichalcumbar_desc_bf", "A green coloured metal ingot" },
				{ "item_vibraniumbar_bf", "Vibranium Ingot" },
				{ "item_vibraniumbar_desc_bf", "A teal coloured metal ingot" },
				{ "item_brightsteelbar_bf", "Brightsteel Ingot" },
				{ "item_brightsteelbar_desc_bf", "A yellow alloy ingot" },
				{ "item_celestialbronzebar_bf", "Celestial Bronze Ingot" },
				{ "item_celestialbronzebar_desc_bf", "A orange alloy ingot" },
				{ "item_netheritebar_bf", "Netherite Ingot" },
				{ "item_netheritebar_desc_bf", "A purple alloy ingot" },
				{ "item_mithrilbar_bf", "Mithril Ingot" },
				{ "item_mithrilbar_desc_bf", "A purple alloy ingot" },
				{ "item_brass_bf", "Brass Ingot" },
				{ "item_brass_desc_bf", "A dark orange ingot" },
				{ "item_crystalblue_bf", "Blue Crystal" },
				{ "item_crystalblue_desc_bf", "A valuable crystal" },
				{ "item_crystalred_bf", "Red Crystal" },
				{ "item_crystalred_desc_bf", "A valuable crystal" },
				{ "item_crystalorange_bf", "Orange Crystal" },
				{ "item_crystalorange_desc_bf", "A valuable crystal" },
				{ "item_crystalteal_bf", "Teal Crystal" },
				{ "item_crystalteal_desc_bf", "A valuable crystal" },
				{ "item_crystalpurple_bf", "Purple Crystal" },
				{ "item_crystalpurple_desc_bf", "A valuable crystal" },
				{ "item_crystalgreen_bf", "Green Crystal" },
				{ "item_crystalgreen_desc_bf", "A valuable crystal" },
				{ "item_bouncingbet_bf", "Soapwort" },
				{ "item_bouncingbet_desc_bf", "A pretty flower" },
				{ "item_knapweed_bf", "Knapweed" },
				{ "item_knapweed_desc_bf", "A pretty flower" },
				{ "item_chamomile_bf", "Chamomile" },
				{ "item_chamomile_desc_bf", "A pretty flower" },
				{ "item_chickory_bf", "Common Chickory" },
				{ "item_chickory_desc_bf", "A pretty flower" },
				{ "item_cornflower_bf", "Common Cornflower" },
				{ "item_cornflower_desc_bf", "A pretty flower" },
				{ "item_goldenrod_bf", "Goldenrod" },
				{ "item_goldenrod_desc_bf", "A pretty flower" },
				{ "item_poppy_bf", "Poppy" },
				{ "item_poppy_desc_bf", "A pretty flower" },
				{ "item_saintjohn_bf", "Saint John Wort" },
				{ "item_saintjohn_desc_bf", "A pretty flower" },
				{ "item_sunroot_bf", "Sunroot" },
				{ "item_sunroot_desc_bf", "A pretty flower" },
				{ "item_bloodironore_bf", "Bloodiron Ore" },
				{ "item_bloodironore_desc_bf", "A red coloured ore" },
				{ "item_goldore_bf", "Gold Ore" },
				{ "item_goldore_desc_bf", "A yellow coloured ore" },
				{ "item_moonironore_bf", "Moon Iron Ore" },
				{ "item_moonironore_desc_bf", "A blue coloured ore" },
				{ "item_quicksilverore_bf", "Mithril Ore" },
				{ "item_quicksilverore_desc_bf", "A shiny silver coloured ore" },
				{ "item_zincore_bf", "Zinc Ore" },
				{ "item_zincore_desc_bf", "A dull silver coloured ore" },
				{ "item_orichalcumore_bf", "Orichalcum Ore" },
				{ "item_orichalcumore_desc_bf", "A green coloured ore" },
				{ "item_vibraniumore_bf", "Vibranium Ore" },
				{ "item_vibraniumore_desc_bf", "A teal coloured ore" },
				{ "item_brightsteel_bf", "Brightsteel" },
				{ "item_wood_desert_bf", "Palo Verde Wood" },
				{ "item_wood_desert_desc_bf", "Wood from a Palo Verde" },
				{ "item_wood_blackjack_bf", "Blackjack Wood" },
				{ "item_wood_blackjack_desc_bf", "Wood from a Blackjack Oak" },
				{ "item_wood_palm_bf", "Palm Wood" },
				{ "item_wood_palm_desc_bf", "Wood from a Palm Tree" },
				{ "item_wood_eastern_bf", "Eastern Pine" },
				{ "item_wood_eastern_desc_bf", "Wood from a Eastern Pine" },
				{ "item_wood_ponderossa_bf", "Ponderossa Pine" },
				{ "item_wood_ponderossa_desc_bf", "Wood from a Ponderossa Pine" },
				{ "item_wood_willow_bf", "Willow Wood" },
				{ "item_wood_willow_desc_bf", "Wood from a Willow Tree" },
				{ "item_wood_cherry_bf", "Cherry Wood" },
				{ "item_wood_cherry_desc_bf", "Wood from a Cherry Tree" },
				{ "item_wood_crimean_bf", "Crimean Pine" },
				{ "item_wood_crimean_desc_bf", "Wood from a Crimean Pine" },
				{ "item_wood_linden_bf", "Linden Wood" },
				{ "item_wood_linden_desc_bf", "Wood from a Linden Tree" },
				{ "item_wood_redwood_bf", "Redwood" },
				{ "item_wood_redwood_desc_bf", "Wood from a Redwood" },
				{ "item_wood_sakura_bf", "Sakura Wood" },
				{ "item_wood_sakura_desc_bf", "Wood from a Sakura Tree" },
				{ "item_wood_stankevich_bf", "Stankevich Pine" },
				{ "item_wood_stankevich_desc_bf", "Wood from a Stankevich Pine" },
				{ "item_wood_aspen_bf", "Aspen Wood" },
				{ "item_wood_aspen_desc_bf", "Wood from a Aspen Tree" },
				{ "item_wood_maple_bf", "Maple Wood" },
				{ "item_wood_maple_desc_bf", "Wood from a Maple Tree" },
				{ "item_wood_poplar_bf", "Poplar Wood" },
				{ "item_wood_poplar_desc_bf", "Wood from a Poplar Tree" }
			});
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Localication: {arg}");
		}
	}

	public void AddTranslationsFromJson()
	{
		try
		{
			LocalFlora = LocalizationManager.Instance.GetLocalization();
			string[] files = Directory.GetFiles(Path.Combine(Paths.ConfigPath, "Horem/BiomeFlora/Translations"), "*.json", SearchOption.AllDirectories);
			foreach (string text in files)
			{
				LocalFlora.AddJsonFile(Path.GetFileNameWithoutExtension(text), AssetUtils.LoadText(text));
				if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Added Translation from: " + text));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding translations from json files: {arg}");
		}
	}

	public void LoadBundle()
	{
		try
		{
			floraAssets = AssetUtils.LoadAssetBundleFromResources("biomeflora", Assembly.GetExecutingAssembly());
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while loading Bundle: {arg}");
		}
	}

	public void AddSFX()
	{
		//IL_0033: Unknown result type (might be due to invalid IL or missing references)
		//IL_003a: Expected O, but got Unknown
		try
		{
			string[] array = sfxList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomPrefab val2 = new CustomPrefab(val, true);
					PrefabManager.Instance.AddPrefab(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Object database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to add: " + text + " to the Object database."));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Prefabs: {arg}");
		}
	}

	public void AddPrefabs()
	{
		//IL_0033: Unknown result type (might be due to invalid IL or missing references)
		//IL_003a: Expected O, but got Unknown
		try
		{
			string[] array = prefabList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomPrefab val2 = new CustomPrefab(val, true);
					PrefabManager.Instance.AddPrefab(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Object database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to add: " + text + " to the Object database."));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Prefabs: {arg}");
		}
	}

	public void AddItems()
	{
		//IL_0033: Unknown result type (might be due to invalid IL or missing references)
		//IL_003a: Expected O, but got Unknown
		try
		{
			string[] array = itemList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomItem val2 = new CustomItem(val, true);
					ItemManager.Instance.AddItem(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Item database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to add: " + text + " to the Item database."));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding class items: {arg}");
		}
	}

	public void AddClutterSeaGrassNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeClutterSeaList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomClutter val2 = new CustomClutter(val, true, seaGrassConfig);
					ZoneManager.Instance.AddCustomClutter(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Clutter database"));
					}
				}
				else
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Clutter database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Sea Clutter: {arg}");
		}
	}

	public void AddClutterGrassSingleNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeClutterList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomClutter val2 = new CustomClutter(val, true, grassSingleConfig);
					ZoneManager.Instance.AddCustomClutter(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Clutter database"));
					}
				}
				else
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Clutter database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Clutter Single: {arg}");
		}
	}

	public void AddClutterGrassDetailedNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeClutterList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomClutter val2 = new CustomClutter(val, true, grassDetailedConfig);
					ZoneManager.Instance.AddCustomClutter(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Clutter database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Clutter database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Clutter Detailed: {arg}");
		}
	}

	public void AddClutterGrassCrossNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeClutterList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomClutter val2 = new CustomClutter(val, true, grassCrossConfig);
					ZoneManager.Instance.AddCustomClutter(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Clutter database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Clutter database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Clutter Cross: {arg}");
		}
	}

	public void AddStaticObjectsNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = staticObjectList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, staticConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Ice Floe's: {arg}");
		}
	}

	public void AddIceFloeNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = iceFloesList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, floatingIceConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Ice Floe's: {arg}");
		}
	}

	public void AddRocksBlockNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeBlockList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, blockRockConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Rock Block: {arg}");
		}
	}

	public void AddRocksFinNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeFinList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, finRockConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Rock Fin: {arg}");
		}
	}

	public void AddRocksPlateNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomePlateList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, plateRockConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Rock Plate: {arg}");
		}
	}

	public void AddRocksNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeRockList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, rockConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Rocks: {arg}");
		}
	}

	public void AddRocksSedimentNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeSedimentList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, sedimentRockConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Rock Sediment: {arg}");
		}
	}

	public void AddRocksSpireNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeSpireList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, spireRockConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Rock Spire: {arg}");
		}
	}

	public void AddCrystalsNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeCrystalList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, crystalConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Rocks: {arg}");
		}
	}

	public void AddGlowingMushroomsNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeGlowingMushroomList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, glowingMushroomConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Glowing Mushrooms: {arg}");
		}
	}

	public void AddGiantMushroomsNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeMushroomTreeList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, giantMushroomConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Giant Mushrooms: {arg}");
		}
	}

	public void AddTreesSmallNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeSmallTreeList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, smallTreeConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Small Trees: {arg}");
		}
	}

	public void AddTreesYoungNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeYoungTreeList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, youngTreeConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Young Trees: {arg}");
		}
	}

	public void AddTreesNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeTreeList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, normTreeConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding trees: {arg}");
		}
	}

	public void AddTreesMatureNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeMatureTreeList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, matureTreeConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Mature Trees: {arg}");
		}
	}

	public void AddTreesOldNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeOldTreeList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, oldTreeConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Old Trees: {arg}");
		}
	}

	public void AddTreesAgedNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeAgedTreeList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, agedTreeConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Aged Trees: {arg}");
		}
	}

	public void AddTreesAcientNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeAncinetTreeList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, ancientTreeConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogWarning((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Ancient Trees: {arg}");
		}
	}

	public void AddDepositsTinyNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeTinyDepositList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, tinyOreConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Tiny Ores: {arg}");
		}
	}

	public void AddDepositsSmallNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeSmallDepositList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, smallOreConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Small Ores: {arg}");
		}
	}

	public void AddDepositsNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeDepositList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, normOreConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Ores: {arg}");
		}
	}

	public void AddSmallPickablesNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomePickableSmallList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, smallPickableConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Small Pickables: {arg}");
		}
	}

	public void AddPickablesNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomePickableList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, normPickableConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Pickables: {arg}");
		}
	}

	public void AddBushesNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeBushList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, bushConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Bushes: {arg}");
		}
	}

	public void AddCoralsNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeCoralList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, coralRockConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Corals: {arg}");
		}
	}

	public void AddSeaVegSingleNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeCoralList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, seaVegSingleConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Bushes: {arg}");
		}
	}

	public void AddHostilePlantsNoBiome()
	{
		//IL_0038: Unknown result type (might be due to invalid IL or missing references)
		//IL_003f: Expected O, but got Unknown
		try
		{
			string[] array = noBiomeHostilePlantList;
			foreach (string text in array)
			{
				GameObject val = floraAssets.LoadAsset<GameObject>(text);
				if ((Object)(object)val != (Object)null)
				{
					CustomVegetation val2 = new CustomVegetation(val, true, hostilePlantConfig);
					ZoneManager.Instance.AddCustomVegetation(val2);
					if (LoggingEnable.Value)
					{
						((BaseUnityPlugin)this).Logger.LogMessage((object)("Added: " + text + " to the Vegetation database"));
					}
				}
				else if (LoggingEnable.Value)
				{
					((BaseUnityPlugin)this).Logger.LogMessage((object)("Failed to Add: " + text + " to the Vegetation database"));
				}
			}
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Hostile Plants: {arg}");
		}
	}

	public void UpdateSmelter()
	{
		//IL_0002: Unknown result type (might be due to invalid IL or missing references)
		//IL_0007: Unknown result type (might be due to invalid IL or missing references)
		//IL_0013: Unknown result type (might be due to invalid IL or missing references)
		//IL_001f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0030: Expected O, but got Unknown
		//IL_002b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0031: Expected O, but got Unknown
		//IL_003d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0042: Unknown result type (might be due to invalid IL or missing references)
		//IL_004e: Unknown result type (might be due to invalid IL or missing references)
		//IL_005a: Unknown result type (might be due to invalid IL or missing references)
		//IL_006b: Expected O, but got Unknown
		//IL_0066: Unknown result type (might be due to invalid IL or missing references)
		//IL_006c: Expected O, but got Unknown
		//IL_0078: Unknown result type (might be due to invalid IL or missing references)
		//IL_007d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0089: Unknown result type (might be due to invalid IL or missing references)
		//IL_0095: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a6: Expected O, but got Unknown
		//IL_00a1: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a7: Expected O, but got Unknown
		//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
		//IL_00b8: Unknown result type (might be due to invalid IL or missing references)
		//IL_00c4: Unknown result type (might be due to invalid IL or missing references)
		//IL_00d0: Unknown result type (might be due to invalid IL or missing references)
		//IL_00e1: Expected O, but got Unknown
		//IL_00dc: Unknown result type (might be due to invalid IL or missing references)
		//IL_00e2: Expected O, but got Unknown
		try
		{
			CustomItemConversion val = new CustomItemConversion((ConversionConfig)new SmelterConversionConfig
			{
				Station = "smelter",
				FromItem = "Item_ZincOre_BF",
				ToItem = "Item_ZincBar_BF"
			});
			ItemManager.Instance.AddItemConversion(val);
			CustomItemConversion val2 = new CustomItemConversion((ConversionConfig)new SmelterConversionConfig
			{
				Station = "smelter",
				FromItem = "Item_GoldOre_BF",
				ToItem = "Item_GoldBar_BF"
			});
			ItemManager.Instance.AddItemConversion(val2);
			CustomItemConversion val3 = new CustomItemConversion((ConversionConfig)new SmelterConversionConfig
			{
				Station = "smelter",
				FromItem = "Item_MoonironOre_BF",
				ToItem = "Item_MoonironBar_BF"
			});
			ItemManager.Instance.AddItemConversion(val3);
			CustomItemConversion val4 = new CustomItemConversion((ConversionConfig)new SmelterConversionConfig
			{
				Station = "smelter",
				FromItem = "Item_QuicksilverOre_BF",
				ToItem = "Item_MithrilBar_BF"
			});
			ItemManager.Instance.AddItemConversion(val4);
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while updating Smelter: {arg}");
		}
	}

	public void UpdateBlastFurnace()
	{
		//IL_0002: Unknown result type (might be due to invalid IL or missing references)
		//IL_0007: Unknown result type (might be due to invalid IL or missing references)
		//IL_0013: Unknown result type (might be due to invalid IL or missing references)
		//IL_001f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0030: Expected O, but got Unknown
		//IL_002b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0031: Expected O, but got Unknown
		//IL_003d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0042: Unknown result type (might be due to invalid IL or missing references)
		//IL_004e: Unknown result type (might be due to invalid IL or missing references)
		//IL_005a: Unknown result type (might be due to invalid IL or missing references)
		//IL_006b: Expected O, but got Unknown
		//IL_0066: Unknown result type (might be due to invalid IL or missing references)
		//IL_006c: Expected O, but got Unknown
		//IL_0078: Unknown result type (might be due to invalid IL or missing references)
		//IL_007d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0089: Unknown result type (might be due to invalid IL or missing references)
		//IL_0095: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a6: Expected O, but got Unknown
		//IL_00a1: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a7: Expected O, but got Unknown
		try
		{
			CustomItemConversion val = new CustomItemConversion((ConversionConfig)new SmelterConversionConfig
			{
				Station = "blastfurnace",
				FromItem = "Item_BloodironOre_BF",
				ToItem = "Item_BloodironBar_BF"
			});
			ItemManager.Instance.AddItemConversion(val);
			CustomItemConversion val2 = new CustomItemConversion((ConversionConfig)new SmelterConversionConfig
			{
				Station = "blastfurnace",
				FromItem = "Item_OrichalcumOre_BF",
				ToItem = "Item_OrichalcumBar_BF"
			});
			ItemManager.Instance.AddItemConversion(val2);
			CustomItemConversion val3 = new CustomItemConversion((ConversionConfig)new SmelterConversionConfig
			{
				Station = "blastfurnace",
				FromItem = "Item_VibraniumOre_BF",
				ToItem = "Item_VibraniumBar_BF"
			});
			ItemManager.Instance.AddItemConversion(val3);
		}
		catch (Exception arg)
		{
			((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while updating Blast Furnace: {arg}");
		}
	}

	public void AddAlloyRecipes()
	{
		//IL_0002: Unknown result type (might be due to invalid IL or missing references)
		//IL_0009: Expected O, but got Unknown
		//IL_0043: Unknown result type (might be due to invalid IL or missing references)
		//IL_0048: Unknown result type (might be due to invalid IL or missing references)
		//IL_0054: Unknown result type (might be due to invalid IL or missing references)
		//IL_005d: Expected O, but got Unknown
		//IL_005f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0064: Unknown result type (might be due to invalid IL or missing references)
		//IL_0070: Unknown result type (might be due to invalid IL or missing references)
		//IL_0079: Expected O, but got Unknown
		//IL_0081: Unknown result type (might be due to invalid IL or missing references)
		//IL_0087: Expected O, but got Unknown
		//IL_0093: Unknown result type (might be due to invalid IL or missing references)
		//IL_009a: Expected O, but got Unknown
		//IL_00d4: Unknown result type (might be due to invalid IL or missing references)
		//IL_00d9: Unknown result type (might be due to invalid IL or missing references)
		//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
		//IL_00ee: Expected O, but got Unknown
		//IL_00f0: Unknown result type (might be due to invalid IL or missing references)
		//IL_00f5: Unknown result type (might be due to invalid IL or missing references)
		//IL_0101: Unknown result type (might be due to invalid IL or missing references)
		//IL_010a: Expected O, but got Unknown
		//IL_010c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0111: Unknown result type (might be due to invalid IL or missing references)
		//IL_011d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0126: Expected O, but got Unknown
		//IL_012e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0134: Expected O, but got Unknown
		//IL_0140: Unknown result type (might be due to invalid IL or missing references)
		//IL_0147: Expected O, but got Unknown
		//IL_0181: Unknown result type (might be due to invalid IL or missing references)
		//IL_0186: Unknown result type (might be due to invalid IL or missing references)
		//IL_0192: Unknown result type (might be due to invalid IL or missing references)
		//IL_019b: Expected O, but got Unknown
		//IL_019d: Unknown result type (might be due to invalid IL or missing references)
		//IL_01a2: Unknown result type (might be due to invalid IL or missing references)
		//IL_01ae: Unknown result type (might be due to invalid IL or missing references)
		//IL_01b7: Expected O, but got Unknown
		//IL_01b9: Unknown result type (might be due to invalid IL or missing references)
		//IL_01be: Unknown result type (might be due to invalid IL or missing references)
		//IL_01ca: Unknown result type (might be due to invalid IL or missing references)
		//IL_01d3: Expected O, but got Unknown
		//IL_01db: Unknown result type (might be due to invalid IL or missing references)
		//IL_01e1: Expected O, but got Unknown
		//IL_01ed: Unknown result type (might be due to invalid IL or missing references)
		//IL_01f4: Expected O, but got Unknown
		//IL_022e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0233: Unknown result type (might be due to invalid IL or missing references)
		//IL_023f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0248: Expected O, but got Unknown
		//IL_024a: Unknown result type (might be due to invalid IL or missing references)
		//IL_024f: Unknown result type (might be due to invalid IL or missing references)
		//IL_025b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0264: Expected O, but got Unknown
		//IL_0266: Unknown result type (might be due to invalid IL or missing references)
		//IL_026b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0277: Unknown result type (might be due to invalid IL or missing references)
		//IL_0280: Expected O, but got Unknown