nike / Kamihime Project R - Display weapon skill percentages

// ==UserScript==
// @name         Kamihime Project R - Display weapon skill percentages
// @description  Displays weapon skill percentages in Equipement tab and Party. Only SSR weapons (Most of them). Will require update when new weapons are introduced.
// @license      MIT
// @updateURL    https://openuserjs.org/meta/nike/Kamihime_Project_R_-_Display_weapon_skill_percentages.meta.js
// @match        https://cf.r.kamihimeproject.dmmgames.com/front/cocos2d-proj/components-pc/game/app.html
// @run-at       document-start
// ==/UserScript==
(function() {

	var interval = setInterval(function() {
			if (typeof kh !== 'undefined' && kh.CoreCardWeaponUI && kh.pc && kh.pc.party && kh.pc.party.par_001_002_003 && kh.pc.party.par_001_002_003.SceneDelegate) {
				clearInterval(interval);
			
				kh.weapon_skills = {
					ASCENSION: {
						SMALL: {
							icon: 46,
							base: 4.0,
							level: 1,
							guardEffect: true,
							cap: 200.0,
							score: 0.5
						},
						MEDIUM: {
							icon: 46,
							base: 7.0,
							level: 1,
							guardEffect: true,
							cap: 200.0,
							score: 0.5
						},
						LARGE: {
							icon: 46,
							base: 10.0,
							level: 1,
							guardEffect: true,
							cap: 200.0,
							score: 0.5
						},
					},
					ASSAULT: {
						SMALL: {
							icon: 13,
							base: 0.0,
							level: 0.5,
							guardEffect: true,
							score: 0.8
						},
						MEDIUM: {
							icon: 13,
							base: 3.0,
							level: 0.5,
							guardEffect: true,
							score: 0.8
						},
						LARGE: {
							icon: 13,
							base: 6.0,
							level: 0.5,
							guardEffect: true,
							score: 0.8
						},
						XLARGE: {
							icon: 13,
							base: 9.0,
							level: 0.7,
							guardEffect: true,
							score: 0.8
						},
						MAX: {
							icon: 13,
							base: 10.0,
							level: 1.0,
							guardEffect: true,
							score: 0.8
						}
					},
					BARRAGE: {
						SMALL: {
							icon: 15,
							base: 1.0,
							level: 0.05,
							guardEffect: true,
							cap: 15.0,
							capReduction: 0.5,
							score: 1.0
						},
						MEDIUM: {
							icon: 15,
							base: 1.0,
							level: 0.1,
							guardEffect: true,
							cap: 15.0,
							capReduction: 0.5,
							score: 1.0
						},
						LARGE: {
							icon: 15,
							base: 1.0,
							level: 0.15,
							guardEffect: true,
							cap: 15.0,
							capReduction: 0.5,
							score: 1.0
						},
						XLARGE: {
							icon: 15,
							base: 1.0,
							level: 0.2,
							guardEffect: true,
							cap: 15.0,
							capReduction: 0.5,
							score: 1.0
						},
					},
					CRITICA: {
						SMALL: {
							icon: 171,
							base: 4.8,
							level: 0.13,
							guardEffect: true,
							cap: 100.0,
							score: 1.25,
							bracketsMultiplier: 0.5
						},
						MEDIUM: {
							icon: 171,
							base: 7.4,
							level: 0.19,
							guardEffect: true,
							cap: 100.0,
							score: 1.25,
							bracketsMultiplier: 0.5
						},
						LARGE: {
							icon: 171,
							base: 10.0,
							level: 0.25,
							guardEffect: true,
							cap: 100.0,
							score: 1.25,
							bracketsMultiplier: 0.5
						},
					},
					CONNECT: {
						SMALL: {
							icon: 149,
							base: 1.2 * 5,
							level: 0.02 * 5,
							subBase: 2 * 5,
							subLevel: 0,
							guardEffect: true,
							subGuardEffect: true,
							subCap: 100.0,
							subScore: 1.0
						},
						LARGE: {
							icon: 149,
							base: 3.2 * 5,
							level: 0.02 * 5,
							subBase: 4 * 5,
							subLevel: 0,
							guardEffect: true,
							subGuardEffect: true,
							subCap: 100.0,
							subScore: 1.0
						},
					},
					DEFENDER: {
						SMALL: {
							icon: 25,
							base: 0.0,
							level: 0.5,
							guardEffect: true,
							score: 0.8
						},
						MEDIUM: {
							icon: 25,
							base: 3.0,
							level: 0.5,
							guardEffect: true,
							score: 0.8
						},
						LARGE: {
							icon: 25,
							base: 6.0,
							level: 0.5,
							guardEffect: true,
							score: 0.8
						},
						XLARGE: {
							icon: 25,
							base: 9.0,
							level: 0.7,
							guardEffect: true,
							score: 0.8
						},
						MAX: {
							icon: 25,
							base: 10.0,
							level: 1.0,
							guardEffect: true,
							score: 0.8
						}
					},
					ELABORATE: {
						SMALL: {
							icon: 69,
							base: 10.0,
							level: 1.0,
							subBase: 0.0,
							subLevel: 0.5,
							guardEffect: true,
							subGuardEffect: true,
							subCap: 50.0,
							subCapReduction: 0.2,
							subScore: 0.5
						},
						MEDIUM: {
							icon: 69,
							base: 10.0,
							level: 1.0,
							subBase: 5.0,
							subLevel: 0.5,
							guardEffect: true,
							subGuardEffect: true,
							subCap: 50.0,
							subCapReduction: 0.2,
							subScore: 0.5
						},
						LARGE: {
							icon: 69,
							base: 10.0,
							level: 1.0,
							subBase: 10.0,
							subLevel: 0.5,
							guardEffect: true,
							subGuardEffect: true,
							subCap: 50.0,
							subCapReduction: 0.2,
							subScore: 0.5
						},
						XLARGE: {
							icon: 69,
							base: 10.0,
							level: 1.0,
							subBase: 15.0,
							subLevel: 0.5,
							guardEffect: true,
							subGuardEffect: true,
							subCap: 50.0,
							subCapReduction: 0.2,
							subScore: 0.5
						},
					},
					EXCEED: {
						SMALL: {
							icon: 52,
							base: 10.0,
							level: 1.0,
							subBase: 0.0,
							subLevel: 1.0,
							guardEffect: true,
							subGuardEffect: true,
							cap: 500.0,
							subCap: 100.0,
							subCapReduction: 0.1,
							subScore: 0.5
						},
						MEDIUM: {
							icon: 52,
							base: 25.0,
							level: 1.0,
							subBase: 10.0,
							subLevel: 1.0,
							guardEffect: true,
							subGuardEffect: true,
							cap: 500.0,
							subCap: 100.0,
							subCapReduction: 0.1,
							subScore: 0.5
						},
						LARGE: {
							icon: 52,
							base: 40.0,
							level: 1.0,
							subBase: 20.0,
							subLevel: 1.0,
							guardEffect: true,
							subGuardEffect: true,
							cap: 500.0,
							subCap: 100.0,
							subCapReduction: 0.1,
							subScore: 0.5
						},
						XLARGE: {
							icon: 52,
							base: 55.0,
							level: 1.0,
							subBase: 30.0,
							subLevel: 1.0,
							guardEffect: true,
							subGuardEffect: true,
							cap: 500.0,
							subCap: 100.0,
							subCapReduction: 0.1,
							subScore: 0.5
						}
					},
					PRIDE: {
						SMALL: {
							icon: 29,
							base: 0.0,
							level: 0.35,
							subBase: 12.0,
							subLevel: 0.0,
							guardEffect: true,
							subGuardEffect: true,
							score: 0.8,
							subScore: 0.25
						},
						MEDIUM: {
							icon: 29,
							base: 0.0,
							level: 0.5,
							subBase: 12.0,
							subLevel: 0.0,
							guardEffect: true,
							subGuardEffect: true,
							score: 0.8,
							subScore: 0.25
						},
						LARGE: {
							icon: 29,
							base: 0.0,
							level: 0.5,
							subBase: 20.0,
							subLevel: 0.0,
							guardEffect: true,
							subGuardEffect: true,
							score: 0.8,
							subScore: 0.25
						},
					},
					REBELLION: {
						SMALL: {
							icon: 40,
							base: 12.0,
							level: 0.25,
							guardEffect: true,
							cap: 150.0,
							score: 1.0
						},
						MEDIUM: {
							icon: 40,
							base: 14.2,
							level: 0.4,
							guardEffect: true,
							cap: 150.0,
							score: 1.0
						},
						LARGE: {
							icon: 40,
							base: 18.0,
							level: 0.5,
							guardEffect: true,
							cap: 150.0,
							score: 1.0
						},
					},
					RUSH: {
						SMALL: {
							icon: 51,
							base: 2.0,
							level: 0.1,
							guardEffect: true,
							cap: 25.0,
							capReduction: 0.5,
							score: 0.6
						},
						MEDIUM: {
							icon: 51,
							base: 3.5,
							level: 0.1,
							guardEffect: true,
							cap: 25.0,
							capReduction: 0.5,
							score: 0.6
						},
						LARGE: {
							icon: 51,
							base: 5.0,
							level: 0.1,
							guardEffect: true,
							cap: 25.0,
							capReduction: 0.5,
							score: 0.6
						},
					},
					STINGER: {
						SMALL: {
							icon: 61,
							base: 0.0,
							level: 0.5,
							guardEffect: true,
							score: 0.5,
							monoCap: 100,
							bracketsMultiplier: 0.2
						},
						MEDIUM: {
							icon: 61,
							base: 0.0,
							level: 1.0,
							guardEffect: true,
							score: 0.5,
							monoCap: 100,
							bracketsMultiplier: 0.2
						},
						LARGE: {
							icon: 61,
							base: 0.0,
							level: 1.5,
							guardEffect: true,
							score: 0.5,
							monoCap: 100,
							bracketsMultiplier: 0.2
						},
					},
					TECHNICA: {
						SMALL: {
							icon: 204,
							base: 2.0,
							level: 0.4,
							subBase: 5.0,
							subLevel: 0.0,
							guardEffect: true,
							subGuardEffect: true,
							cap: 300.0,
							subCap: 100.0,
							score: 1.2,
							subScore: 0.75
						},
						MEDIUM: {
							icon: 204,
							base: 6.0,
							level: 0.4,
							subBase: 7.5,
							subLevel: 0.0,
							guardEffect: true,
							subGuardEffect: true,
							cap: 300.0,
							subCap: 100.0,
							score: 1.2,
							subScore: 0.75
						},
						LARGE: {
							icon: 204,
							base: 10.0,
							level: 0.4,
							subBase: 10.0,
							subLevel: 0.0,
							guardEffect: true,
							subGuardEffect: true,
							cap: 300.0,
							subCap: 100.0,
							score: 1.2,
							subScore: 0.75
						},
					},
					FORCE: {
						SMALL: {
							icon: 88,
							base: 30.0,
							level: 0.0,
							guardEffect: true,
							score: 1.2
						},
						MEDIUM: {
							icon: 88,
							base: 30.0,
							level: 0.0,
							guardEffect: true,
							score: 1.2
						},
						LARGE: {
							icon: 88,
							base: 30.0,
							level: 0.0,
							guardEffect: true,
							score: 1.2
						},
					},
					VIGORAS: {
						SMALL: {
							icon: 31,
							base: 5.17,
							level: 0.17,
							guardEffect: true,
							cap: 100.0,
							score: 1.5
						},
						MEDIUM: {
							icon: 31,
							base: 8.54,
							level: 0.174,
							guardEffect: true,
							cap: 100.0,
							score: 1.5
						},
						LARGE: {
							icon: 31,
							base: 12,
							level: (19.1 - 12) / 40,
							guardEffect: true,
							cap: 100.0,
							score: 1.5
						},
						XLARGE: {
							icon: 31,
							base: 15.22,
							level: (20.9 - 15.22) / 30,
							guardEffect: true,
							cap: 100.0,
							score: 1.5
						},
					},
					ELEMENTAL: {
						FIRE: {
							icon: 1,
							base: 10.0,
							level: 1.0,
							guardEffect: false,
							mainOnly: true,
							score: 1.0
						},
						WATER: {
							icon: 3,
							base: 10.0,
							level: 1.0,
							guardEffect: false,
							mainOnly: true,
							score: 1.0
						},
						WIND: {
							icon: 5,
							base: 10.0,
							level: 1.0,
							guardEffect: false,
							mainOnly: true,
							score: 1.0
						},
						THUNDER: {
							icon: 7,
							base: 10.0,
							level: 1.0,
							guardEffect: false,
							mainOnly: true,
							score: 1.0
						},
						LIGHT: {
							icon: 9,
							base: 10.0,
							level: 1.0,
							guardEffect: false,
							mainOnly: true,
							score: 1.0
						},
						DARK: {
							icon: 11,
							base: 10.0,
							level: 1.0,
							guardEffect: false,
							mainOnly: true,
							score: 1.0
						},
					},
					CUSTOM: {
						icon: 162
					}
				}
				
				function cloneApply(object, func) {
				  var cloned = _.cloneDeep(object)
				  func(cloned)
				  return cloned;
				}

				kh.weapon_database = new Map();

				// Eye Weapons
				kh.weapon_database.set("1-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.MEDIUM])
				kh.weapon_database.set("1-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("2-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])
				kh.weapon_database.set("2-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.STINGER.LARGE])
				kh.weapon_database.set("3-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])
				kh.weapon_database.set("3-true", [kh.weapon_skills.DEFENDER.XLARGE, kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("4-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.RUSH.MEDIUM])
				kh.weapon_database.set("4-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.RUSH.LARGE])
				kh.weapon_database.set("5-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.MEDIUM])
				kh.weapon_database.set("5-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.EXCEED.LARGE])
				kh.weapon_database.set("6-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])
				kh.weapon_database.set("6-true", [kh.weapon_skills.DEFENDER.XLARGE, kh.weapon_skills.ASCENSION.LARGE])
				kh.weapon_database.set("8-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.MEDIUM])
				kh.weapon_database.set("8-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.EXCEED.LARGE])
				kh.weapon_database.set("9-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("9-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.BARRAGE.LARGE])
				kh.weapon_database.set("10-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.MEDIUM])
				kh.weapon_database.set("10-true", [kh.weapon_skills.DEFENDER.XLARGE, kh.weapon_skills.RUSH.LARGE])
				kh.weapon_database.set("11-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])
				kh.weapon_database.set("11-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.STINGER.LARGE])
				kh.weapon_database.set("12-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.MEDIUM])
				kh.weapon_database.set("12-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.EXCEED.LARGE])
				kh.weapon_database.set("13-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.PRIDE.MEDIUM])
				kh.weapon_database.set("13-true", [kh.weapon_skills.DEFENDER.XLARGE, kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("14-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.RUSH.MEDIUM])
				kh.weapon_database.set("14-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.RUSH.LARGE])
				kh.weapon_database.set("15-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])
				kh.weapon_database.set("15-true", [kh.weapon_skills.DEFENDER.XLARGE, kh.weapon_skills.ASCENSION.LARGE])
				kh.weapon_database.set("18-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])
				kh.weapon_database.set("18-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.STINGER.LARGE])
				kh.weapon_database.set("19-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("19-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.BARRAGE.LARGE])

				// First SSR hime weapons
				kh.weapon_database.set("7-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("7-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("16-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("16-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("17-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("17-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.RUSH.SMALL])
				kh.weapon_database.set("20-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("20-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("187-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("187-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("189-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("189-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("191-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("191-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.EXCEED.MEDIUM])

				// 50 eye weapons
				kh.weapon_database.set("411-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("411-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.VIGORAS.XLARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("412-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("412-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("413-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("413-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("414-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("414-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.VIGORAS.XLARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("415-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("415-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("416-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("416-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.VIGORAS.XLARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("417-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("417-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("418-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("418-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.VIGORAS.XLARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("419-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("419-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.VIGORAS.XLARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("420-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("420-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("421-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("421-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.VIGORAS.XLARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("422-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("422-true", [kh.weapon_skills.ASSAULT.XLARGE, kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.CUSTOM])

				// Cata Weapons
				kh.weapon_database.set("441-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("441-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("442-false", [kh.weapon_skills.ELABORATE.LARGE])
				kh.weapon_database.set("442-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("443-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("443-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("446-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("446-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("444-false", [kh.weapon_skills.ELABORATE.LARGE])
				kh.weapon_database.set("444-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("445-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("445-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("448-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("448-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("447-false", [kh.weapon_skills.ELABORATE.LARGE])
				kh.weapon_database.set("447-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("449-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("449-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("451-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("451-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("452-false", [kh.weapon_skills.ELABORATE.LARGE])
				kh.weapon_database.set("452-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("450-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("450-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("454-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("454-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("453-false", [kh.weapon_skills.ELABORATE.LARGE])
				kh.weapon_database.set("453-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("455-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("455-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("456-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("456-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("457-false", [kh.weapon_skills.ELABORATE.LARGE])
				kh.weapon_database.set("457-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("458-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("458-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				// Zodiac weapons
				// Zodiac vigor
				kh.weapon_database.set("461-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("461-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("463-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("463-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("465-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("465-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("467-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("467-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("469-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("469-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("471-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("471-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				// Zodiac rebellion
				kh.weapon_database.set("462-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("462-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("464-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("464-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("466-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("466-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("468-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("468-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("470-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("470-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("472-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("472-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])


				// SSR Hime weapons
				kh.weapon_database.set("1001-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1001-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1002-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1002-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("1003-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1003-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.STINGER.MEDIUM])

				kh.weapon_database.set("1004-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1004-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("1005-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1005-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])

				kh.weapon_database.set("1006-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1006-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1007-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1007-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.MEDIUM])

				kh.weapon_database.set("1008-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1008-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.PRIDE.MEDIUM])

				kh.weapon_database.set("1009-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1009-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.MEDIUM])

				kh.weapon_database.set("1010-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1010-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.LARGE])

				kh.weapon_database.set("1011-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1011-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.EXCEED.MEDIUM])

				kh.weapon_database.set("1012-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1012-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ELABORATE.MEDIUM])

				kh.weapon_database.set("1013-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1014-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1014-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.EXCEED.MEDIUM])

				kh.weapon_database.set("1015-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1015-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.SMALL])

				kh.weapon_database.set("1016-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1016-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.STINGER.MEDIUM])

				kh.weapon_database.set("1017-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1017-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1018-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1018-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.EXCEED.MEDIUM])

				kh.weapon_database.set("1019-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1019-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1020-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1020-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.STINGER.MEDIUM])

				kh.weapon_database.set("1021-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1021-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.STINGER.MEDIUM])

				kh.weapon_database.set("1022-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("1022-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ELABORATE.MEDIUM])

				kh.weapon_database.set("1023-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1023-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1024-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1025-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1025-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1026-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1027-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("1028-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("1028-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("1029-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("1029-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("1030-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1030-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1031-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1031-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1032-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1033-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1033-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1034-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.SMALL])
				kh.weapon_database.set("1034-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])

				kh.weapon_database.set("1034-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.SMALL])
				kh.weapon_database.set("1034-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])

				kh.weapon_database.set("1035-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1035-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("1036-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1036-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("1037-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1037-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ELABORATE.SMALL])

				kh.weapon_database.set("1038-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1038-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("1039-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1039-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("1040-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1040-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1041-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1041-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1042-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1042-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1043-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1044-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1044-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.PRIDE.SMALL])

				kh.weapon_database.set("1045-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1045-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1046-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("1046-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("1047-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1047-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("1048-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1048-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("1049-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.SMALL])
				kh.weapon_database.set("1049-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.SMALL, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1050-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.SMALL])
				kh.weapon_database.set("1050-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("1051-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1051-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1052-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1053-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1053-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1054-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.RUSH.MEDIUM])
				kh.weapon_database.set("1054-true", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("1055-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("1056-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1056-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("1057-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("1058-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1058-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.RUSH.SMALL, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1059-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1059-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1060-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.MEDIUM])
				kh.weapon_database.set("1060-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.RUSH.MEDIUM])

				kh.weapon_database.set("1061-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("1061-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("1062-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1062-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1063-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("1064-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.EXCEED.SMALL])
				kh.weapon_database.set("1064-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("1065-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.EXCEED.MEDIUM])

				kh.weapon_database.set("1066-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("1066-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("1067-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.EXCEED.SMALL])
				kh.weapon_database.set("1067-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("1068-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1069-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("1070-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("1071-false", [kh.weapon_skills.VIGORAS.LARGE])
				kh.weapon_database.set("1071-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1072-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("1072-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("1073-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1074-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1074-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1075-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("1075-true", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM, kh.weapon_skills.VIGORAS.MEDIUM])

				kh.weapon_database.set("1076-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.STINGER.SMALL])
				kh.weapon_database.set("1076-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.STINGER.MEDIUM])

				kh.weapon_database.set("1077-false", [kh.weapon_skills.PRIDE.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("1077-true", [kh.weapon_skills.PRIDE.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])

				kh.weapon_database.set("1078-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("1078-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("1079-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1079-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1080-false", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1080-true", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1081-false", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.RUSH.SMALL])
				kh.weapon_database.set("1081-true", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("1082-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.EXCEED.SMALL])
				kh.weapon_database.set("1082-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("1083-false", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1083-true", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1084-false", [kh.weapon_skills.PRIDE.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("1084-true", [kh.weapon_skills.PRIDE.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])

				kh.weapon_database.set("1085-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1085-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1086-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1086-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("1087-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ELABORATE.SMALL])
				kh.weapon_database.set("1087-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ELABORATE.MEDIUM])

				kh.weapon_database.set("1088-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.MEDIUM])

				kh.weapon_database.set("1089-false", [kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("1089-true", [kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1090-false", [kh.weapon_skills.VIGORAS.LARGE])
				kh.weapon_database.set("1090-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1091-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1092-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1092-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("1093-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1094-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.SMALL])
				kh.weapon_database.set("1094-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("1095-false", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1095-true", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1096-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1096-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1097-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("1098-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1099-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ELABORATE.SMALL])

				kh.weapon_database.set("1100-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1100-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])

				kh.weapon_database.set("1101-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("1102-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				kh.weapon_database.set("1102-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("1103-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("1104-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("1105-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1105-true", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("1106-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("1107-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ELABORATE.SMALL])
				kh.weapon_database.set("1107-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ELABORATE.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1108-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1108-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1109-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.MEDIUM])
				kh.weapon_database.set("1109-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("1110-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("1110-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])

				kh.weapon_database.set("1111-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.STINGER.MEDIUM])
				kh.weapon_database.set("1111-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.STINGER.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1112-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("1112-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])

				kh.weapon_database.set("1113-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.PRIDE.SMALL])
				kh.weapon_database.set("1113-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.PRIDE.SMALL])

				kh.weapon_database.set("1114-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1115-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1115-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1116-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.EXCEED.SMALL])

				// kh.weapon_database.set("1117-false", [])

				kh.weapon_database.set("1118-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.BARRAGE.MEDIUM])

				kh.weapon_database.set("1119-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("1120-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("1120-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.TECHNICA.MEDIUM])

				kh.weapon_database.set("1121-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ELABORATE.MEDIUM])
				kh.weapon_database.set("1121-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ELABORATE.MEDIUM])

				kh.weapon_database.set("1122-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1122-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1123-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.MEDIUM])

				kh.weapon_database.set("1124-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.MEDIUM])
				kh.weapon_database.set("1124-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("1125-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])

				// kh.weapon_database.set("1126-false", [])

				kh.weapon_database.set("1127-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])

				kh.weapon_database.set("1128-false", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1128-true", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1129-false", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1130-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("1131-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("1131-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])

				kh.weapon_database.set("1132-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1133-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1133-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1134-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1134-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1135-false", [kh.weapon_skills.BARRAGE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1135-true", [kh.weapon_skills.BARRAGE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("1136-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1136-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1137-false", [kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("1137-true", [kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1138-false", [kh.weapon_skills.PRIDE.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM])
				kh.weapon_database.set("1138-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.PRIDE.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1139-false", [kh.weapon_skills.REBELLION.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1139-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1140-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("1141-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1141-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("1142-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("1143-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ELABORATE.MEDIUM])

				kh.weapon_database.set("1144-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1145-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.RUSH.SMALL])
				
				kh.weapon_database.set("1146-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1146-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.RUSH.SMALL])
				
				kh.weapon_database.set("1147-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1147-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1148-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1149-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ELABORATE.SMALL])
				kh.weapon_database.set("1149-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ELABORATE.MEDIUM])
				
				kh.weapon_database.set("1150-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1151-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1151-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1152-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1153-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1153-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1154-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1155-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1156-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1157-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1157-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1158-false", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1158-true", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1159-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1160-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1161-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1161-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1162-false", [kh.weapon_skills.ELABORATE.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1162-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.REBELLION.SMALL])
				
				kh.weapon_database.set("1163-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1163-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("1164-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1164-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1165-false", [kh.weapon_skills.REBELLION.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1165-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("1166-false", [kh.weapon_skills.VIGORAS.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1166-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("1167-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1168-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1169-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1169-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1170-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.CRITICA.SMALL])
				kh.weapon_database.set("1170-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.CRITICA.MEDIUM])
				
				kh.weapon_database.set("1171-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.CRITICA.SMALL])
				kh.weapon_database.set("1171-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.CRITICA.MEDIUM])
				
				kh.weapon_database.set("1172-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1172-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
								
				kh.weapon_database.set("1173-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.CRITICA.SMALL])
				kh.weapon_database.set("1173-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.CRITICA.MEDIUM])
				
				kh.weapon_database.set("1174-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1174-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1175-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM,  kh.weapon_skills.VIGORAS.MEDIUM])
				
				kh.weapon_database.set("1176-false", [kh.weapon_skills.BARRAGE.LARGE, kh.weapon_skills.ASCENSION.SMALL,  kh.weapon_skills.VIGORAS.MEDIUM])
				
				kh.weapon_database.set("1177-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM,  kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("1177-true", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM,  kh.weapon_skills.ASCENSION.MEDIUM])
				
				kh.weapon_database.set("1178-false", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.STINGER.SMALL])
				kh.weapon_database.set("1178-true", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.DEFENDER.SMALL,  kh.weapon_skills.STINGER.SMALL])
				
				kh.weapon_database.set("1179-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.RUSH.MEDIUM])
				
				kh.weapon_database.set("1180-false", [kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM, kh.weapon_skills.VIGORAS.MEDIUM])
				
				kh.weapon_database.set("1181-false", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1181-true", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ELABORATE.SMALL])
				
				kh.weapon_database.set("1182-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("1182-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("1183-false", [kh.weapon_skills.BARRAGE.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("1184-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASCENSION.MEDIUM])
				
				kh.weapon_database.set("1185-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM])
				
				kh.weapon_database.set("1186-false", [kh.weapon_skills.ELABORATE.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.STINGER.MEDIUM])
				
				kh.weapon_database.set("1187-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1187-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.RUSH.SMALL])
				
				kh.weapon_database.set("1188-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1188-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("1189-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("1189-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1190-false", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1190-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1191-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.VIGORAS.MEDIUM ])
				
				kh.weapon_database.set("1192-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.RUSH.MEDIUM ])
				
				kh.weapon_database.set("1193-false", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1193-true", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1194-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("1194-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1195-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1196-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				
				kh.weapon_database.set("1197-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.FORCE.SMALL])
				kh.weapon_database.set("1197-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.FORCE.SMALL])
				
				kh.weapon_database.set("1198-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1198-true", [kh.weapon_skills.EXCEED.XLARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("1199-false", [kh.weapon_skills.ASCENSION.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.VIGORAS.MEDIUM])
				
				kh.weapon_database.set("1200-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1201-false", [kh.weapon_skills.BARRAGE.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("1202-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ELABORATE.MEDIUM])
				
				kh.weapon_database.set("1203-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ASCENSION.ASCENSION])
				
				kh.weapon_database.set("1204-false", [kh.weapon_skills.CRITICA.MEDIUM, kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])
				
				kh.weapon_database.set("1205-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.VIGORAS.MEDIUM])
				
				kh.weapon_database.set("1206-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("1206-true", [kh.weapon_skills.EXCEED.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1207-false", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1207-true", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.STINGER.SMALL])
				
				kh.weapon_database.set("1208-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1208-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1209-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1209-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.RUSH.SMALL])
				
				kh.weapon_database.set("1210-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1210-true", [kh.weapon_skills.EXCEED.XLARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("1211-false", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1211-true", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1212-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.CRITICA.SMALL])
				kh.weapon_database.set("1212-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.CRITICA.MEDIUM])
				
				kh.weapon_database.set("1213-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1213-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1214-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1214-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1215-false", [kh.weapon_skills.BARRAGE.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1215-true", [kh.weapon_skills.BARRAGE.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1216-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1216-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.REBELLION.SMALL])
				
				kh.weapon_database.set("1217-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1217-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("1218-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("1218-true", [kh.weapon_skills.ELABORATE.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1219-false", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1219-true", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("1220-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1220-true", [kh.weapon_skills.ELABORATE.XLARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1221-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1221-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("1222-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1222-true", [kh.weapon_skills.ELABORATE.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1223-false", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1223-true", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1224-false", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1224-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1225-false", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1225-true", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ELABORATE.SMALL])
				
				kh.weapon_database.set("1226-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("1226-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("1227-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("1227-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1228-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1228-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1229-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.MEDIUM])
				kh.weapon_database.set("1229-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])
				
				kh.weapon_database.set("1230-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1230-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1231-false", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1231-true", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ELABORATE.SMALL ])
				
				kh.weapon_database.set("1232-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1232-true", [kh.weapon_skills.EXCEED.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1233-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1233-true", [kh.weapon_skills.ELABORATE.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1234-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1234-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("1235-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("1235-true", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1236-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1236-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1237-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1237-true", [kh.weapon_skills.ELABORATE.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1238-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ELABORATE.SMALL])
				kh.weapon_database.set("1238-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ELABORATE.SMALL, kh.weapon_skills.EXCEED.SMALL])
				
				kh.weapon_database.set("1239-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1239-true", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("1240-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.CRITICA.SMALL])
				kh.weapon_database.set("1240-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.CRITICA.SMALL])
				
				kh.weapon_database.set("1241-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1241-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.EXCEED.SMALL])
				
				kh.weapon_database.set("1242-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.CRITICA.SMALL])
				kh.weapon_database.set("1242-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.CRITICA.SMALL])
				
				kh.weapon_database.set("1243-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1243-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.EXCEED.SMALL])
				
				kh.weapon_database.set("1244-false", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("1244-true", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("1245-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1245-true", [kh.weapon_skills.EXCEED.XLARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("1246-false", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.CRITICA.SMALL])
				kh.weapon_database.set("1246-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.CRITICA.SMALL])
				
				kh.weapon_database.set("1247-false", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.ELABORATE.SMALL])
				kh.weapon_database.set("1247-true", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.ELABORATE.SMALL, kh.weapon_skills.EXCEED.SMALL])
				
				kh.weapon_database.set("1248-false", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1248-true", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.STINGER.SMALL])
				
				kh.weapon_database.set("1249-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("1249-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1250-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1250-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.EXCEED.SMALL])
				
				kh.weapon_database.set("1251-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ELABORATE.SMALL])
				kh.weapon_database.set("1251-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ELABORATE.SMALL, kh.weapon_skills.EXCEED.SMALL])
				
				kh.weapon_database.set("1252-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1252-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.EXCEED.SMALL])
				
				kh.weapon_database.set("1253-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1253-true", [kh.weapon_skills.ELABORATE.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				
				kh.weapon_database.set("1254-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1254-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
					
				kh.weapon_database.set("1255-false", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1255-true", [kh.weapon_skills.TECHNICA.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
						
				kh.weapon_database.set("1256-false", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1256-true", [kh.weapon_skills.CRITICA.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.EXCEED.SMALL])
							
				kh.weapon_database.set("1257-false", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("1257-true", [kh.weapon_skills.STINGER.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.TECHNICA.SMALL])
							
				kh.weapon_database.set("1258-false", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1258-true", [kh.weapon_skills.CONNECT.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.BARRAGE.SMALL])
							
				kh.weapon_database.set("1259-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1259-true", [kh.weapon_skills.EXCEED.XLARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.CRITICA.SMALL])
								
				kh.weapon_database.set("1260-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("1260-true", [kh.weapon_skills.ELABORATE.XLARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.VIGORAS.SMALL])
								
				kh.weapon_database.set("1261-false", [kh.weapon_skills.RUSH.SMALL, kh.weapon_skills.BARRAGE.SMALL, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("1261-true", [kh.weapon_skills.RUSH.LARGE, kh.weapon_skills.BARRAGE.LARGE, kh.weapon_skills.TECHNICA.SMALL])
								
				kh.weapon_database.set("1262-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("1262-true", [kh.weapon_skills.ELABORATE.XLARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.VIGORAS.SMALL])
																																																													
				// Event Weapons
				kh.weapon_database.set("2001-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2001-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2002-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2002-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2003-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2004-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2004-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2005-false", [kh.weapon_skills.DEFENDER.LARGE])

				kh.weapon_database.set("2006-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2006-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2007-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2007-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("2008-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2008-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2009-false", [kh.weapon_skills.DEFENDER.LARGE])

				kh.weapon_database.set("2010-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2010-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2011-false", [kh.weapon_skills.DEFENDER.LARGE])

				kh.weapon_database.set("2012-false", [kh.weapon_skills.DEFENDER.LARGE])

				kh.weapon_database.set("2013-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2013-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2014-false", [kh.weapon_skills.DEFENDER.LARGE])

				kh.weapon_database.set("2015-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2015-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("2016-false", [kh.weapon_skills.DEFENDER.LARGE])

				kh.weapon_database.set("2017-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2017-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("2018-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2019-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("2019-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("2020-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2020-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2021-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2022-false", [kh.weapon_skills.PRIDE.LARGE])

				kh.weapon_database.set("2023-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2023-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("2024-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("2024-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("2025-false", [kh.weapon_skills.DEFENDER.LARGE])

				kh.weapon_database.set("2026-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("2026-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("2027-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("2028-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("2029-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("2029-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("2030-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("2030-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("2031-false", [kh.weapon_skills.PRIDE.LARGE])
				kh.weapon_database.set("2031-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("2032-false", [kh.weapon_skills.PRIDE.LARGE])

				kh.weapon_database.set("2033-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2034-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2035-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2036-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2037-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2038-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.RUSH.SMALL])
				kh.weapon_database.set("2038-true", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("2039-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2040-false", [kh.weapon_skills.RUSH.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2041-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("2042-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("2043-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2043-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2044-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("2045-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("2046-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2046-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("2047-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2047-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("2048-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2048-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("2049-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2049-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("2050-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2050-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("2051-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2051-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])

				kh.weapon_database.set("2052-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.RUSH.SMALL])

				kh.weapon_database.set("2053-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2053-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("2054-false", [kh.weapon_skills.PRIDE.LARGE])

				kh.weapon_database.set("2055-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("2056-false", [kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.RUSH.MEDIUM])

				kh.weapon_database.set("2058-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2059-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2060-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2060-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2061-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.RUSH.MEDIUM])

				kh.weapon_database.set("2062-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.STINGER.MEDIUM])

				kh.weapon_database.set("2063-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("2064-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.LARGE])

				kh.weapon_database.set("2065-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("2066-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("2067-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("2068-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])

				kh.weapon_database.set("2069-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.PRIDE.SMALL])
				kh.weapon_database.set("2069-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.PRIDE.SMALL])

				kh.weapon_database.set("2070-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("2071-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])

				kh.weapon_database.set("2072-false", [kh.weapon_skills.ELABORATE.MEDIUM, kh.weapon_skills.STINGER.SMALL])

				kh.weapon_database.set("2073-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ELABORATE.SMALL])
				kh.weapon_database.set("2073-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ELABORATE.SMALL])

				kh.weapon_database.set("2074-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("2075-false", [kh.weapon_skills.ASSAULT.LARGE])

				// Phantom weapons
				kh.weapon_database.set("2076-false", [cloneApply(kh.weapon_skills.RUSH.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), cloneApply(kh.weapon_skills.BARRAGE.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("2077-false", [cloneApply(kh.weapon_skills.ASSAULT.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), cloneApply(kh.weapon_skills.BARRAGE.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("2078-false", [cloneApply(kh.weapon_skills.ASSAULT.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), cloneApply(kh.weapon_skills.DEFENDER.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("2079-false", [cloneApply(kh.weapon_skills.ELABORATE.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), cloneApply(kh.weapon_skills.EXCEED.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("2080-false", [cloneApply(kh.weapon_skills.ASSAULT.MAX, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("2081-false", [cloneApply(kh.weapon_skills.DEFENDER.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), cloneApply(kh.weapon_skills.ASCENSION.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("2082-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("2083-false", [cloneApply(kh.weapon_skills.ASSAULT.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), cloneApply(kh.weapon_skills.STINGER.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])
				kh.weapon_database.set("2084-false", [cloneApply(kh.weapon_skills.DEFENDER.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), cloneApply(kh.weapon_skills.VIGORAS.LARGE, obj => { obj.guardEffect = false; obj.subGuardEffect = false }), kh.weapon_skills.CUSTOM])

				// More event weapons
				kh.weapon_database.set("2085-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("2086-false", [kh.weapon_skills.VIGORAS.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2086-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2087-false", [kh.weapon_skills.DEFENDER.LARGE])

				kh.weapon_database.set("2088-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2089-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2090-false", [kh.weapon_skills.EXCEED.LARGE])
				kh.weapon_database.set("2090-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.PRIDE.SMALL])

				kh.weapon_database.set("2091-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("2092-false", [kh.weapon_skills.STINGER.LARGE])

				kh.weapon_database.set("2093-false", [kh.weapon_skills.VIGORAS.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2094-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2095-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2096-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.ASSAULT.SMALL])

				kh.weapon_database.set("2097-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("2098-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2099-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2100-false", [kh.weapon_skills.ELABORATE.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("2101-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2102-false", [kh.weapon_skills.DEFENDER.LARGE])

				// Guardian Weapons
				kh.weapon_database.set("2103-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.EXCEED.MEDIUM])
				kh.weapon_database.set("2103-true",  [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.EXCEED.MEDIUM])
				kh.weapon_database.set("2104-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2104-true",  [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2105-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.VIGORAS.MEDIUM])
				kh.weapon_database.set("2105-true",  [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.VIGORAS.MEDIUM])
				kh.weapon_database.set("2106-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("2106-true",  [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("2107-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2107-true",  [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2108-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("2108-true",  [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.BARRAGE.MEDIUM])
				kh.weapon_database.set("2109-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.PRIDE.SMALL])
				kh.weapon_database.set("2110-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.MEDIUM])
				kh.weapon_database.set("2110-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.MEDIUM])
				kh.weapon_database.set("2111-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])
				kh.weapon_database.set("2111-true", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASCENSION.MEDIUM])
				kh.weapon_database.set("2112-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.RUSH.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("2112-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.RUSH.SMALL, kh.weapon_skills.BARRAGE.SMALL])
				kh.weapon_database.set("2113-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.STINGER.SMALL])
				kh.weapon_database.set("2113-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.STINGER.SMALL])
				kh.weapon_database.set("2114-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("2114-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL, kh.weapon_skills.VIGORAS.SMALL])
				kh.weapon_database.set("2115-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])
				kh.weapon_database.set("2115-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])
				kh.weapon_database.set("2116-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])
				kh.weapon_database.set("2116-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.MEDIUM])
				kh.weapon_database.set("2117-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASCENSION.MEDIUM, kh.weapon_skills.VIGORAS.MEDIUM])
				kh.weapon_database.set("2117-true", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASCENSION.MEDIUM, kh.weapon_skills.VIGORAS.MEDIUM])
				kh.weapon_database.set("2118-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])
				kh.weapon_database.set("2118-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.STINGER.MEDIUM])
				kh.weapon_database.set("2119-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2119-true", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2120-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2120-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.ASCENSION.SMALL])

				// Even more event weapons
				kh.weapon_database.set("2121-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2122-false", [kh.weapon_skills.STINGER.MEDIUM, kh.weapon_skills.DEFENDER.MEDIUM])

				kh.weapon_database.set("2123-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2123-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2124-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.MEDIUM])

				kh.weapon_database.set("2125-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2126-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2127-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("2128-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2128-true", [kh.weapon_skills.ASSAULT.XLARGE])

				kh.weapon_database.set("2129-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2129-true", [kh.weapon_skills.DEFENDER.XLARGE])

				kh.weapon_database.set("2130-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2130-true", [kh.weapon_skills.ASSAULT.XLARGE])

				kh.weapon_database.set("2131-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2131-true", [kh.weapon_skills.DEFENDER.XLARGE])

				kh.weapon_database.set("2132-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2132-true", [kh.weapon_skills.ASSAULT.XLARGE])

				kh.weapon_database.set("2133-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2133-true", [kh.weapon_skills.DEFENDER.XLARGE])

				kh.weapon_database.set("2134-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2134-true", [kh.weapon_skills.ASSAULT.XLARGE])

				kh.weapon_database.set("2135-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2135-true", [kh.weapon_skills.DEFENDER.XLARGE])

				kh.weapon_database.set("2136-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2136-true", [kh.weapon_skills.ASSAULT.XLARGE])

				kh.weapon_database.set("2137-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2137-true", [kh.weapon_skills.DEFENDER.XLARGE])

				kh.weapon_database.set("2138-false", [kh.weapon_skills.ASSAULT.LARGE])
				kh.weapon_database.set("2138-true", [kh.weapon_skills.ASSAULT.XLARGE])

				kh.weapon_database.set("2139-false", [kh.weapon_skills.DEFENDER.LARGE])
				kh.weapon_database.set("2139-true", [kh.weapon_skills.DEFENDER.XLARGE])

				kh.weapon_database.set("2140-false", [kh.weapon_skills.STINGER.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2140-true", [kh.weapon_skills.STINGER.MEDIUM, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2141-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2142-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2143-false", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2143-true", [kh.weapon_skills.ASCENSION.LARGE, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2144-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2145-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2146-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2146-true", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2147-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2148-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2149-false", [kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2149-true", [kh.weapon_skills.RUSH.MEDIUM, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2150-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2151-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2152-false", [kh.weapon_skills.BARRAGE.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2152-true", [kh.weapon_skills.BARRAGE.MEDIUM, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2153-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2154-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2155-false", [kh.weapon_skills.ELABORATE.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2155-true", [kh.weapon_skills.ELABORATE.MEDIUM, kh.weapon_skills.ASSAULT.SMALL, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2156-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2157-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.CUSTOM])

				kh.weapon_database.set("2158-false", [kh.weapon_skills.PRIDE.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2159-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.RUSH.SMALL, kh.weapon_skills.BARRAGE.SMALL])

				kh.weapon_database.set("2160-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])

				kh.weapon_database.set("2161-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.VIGORAS.SMALL])

				kh.weapon_database.set("2162-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2163-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2163-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2164-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2165-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2166-false", [kh.weapon_skills.ASSAULT.LARGE])

				kh.weapon_database.set("2167-false", [kh.weapon_skills.ASSAULT.LARGE])
				
				kh.weapon_database.set("2168-false", [kh.weapon_skills.ASSAULT.LARGE])
				
				kh.weapon_database.set("2169-false", [kh.weapon_skills.ASSAULT.LARGE])
				
				kh.weapon_database.set("2170-false", [kh.weapon_skills.ASSAULT.LARGE])
				
				kh.weapon_database.set("2171-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2172-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				
				kh.weapon_database.set("2173-false", [kh.weapon_skills.ASSAULT.LARGE])
				
				// missing on EN
				// kh.weapon_database.set("2174-false", [])
				// kh.weapon_database.set("2175-false", [])
				
				kh.weapon_database.set("2176-false", [kh.weapon_skills.ASSAULT.LARGE])
				
				kh.weapon_database.set("2177-false", [kh.weapon_skills.ASSAULT.LARGE])
				
				kh.weapon_database.set("2178-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("2179-false", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2180-false", [kh.weapon_skills.ASSAULT.LARGE])
				
				kh.weapon_database.set("2181-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ELABORATE.SMALL])
				
				kh.weapon_database.set("2182-false", [kh.weapon_skills.PRIDE.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2183-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2184-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.BARRAGE.SMALL])
				
				kh.weapon_database.set("2185-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2186-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2187-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2188-false", [kh.weapon_skills.ELABORATE.LARGE, kh.weapon_skills.STINGER.SMALL])
				
				kh.weapon_database.set("2189-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2190-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				
				kh.weapon_database.set("2191-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2192-false", [kh.weapon_skills.VIGORAS.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2193-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2194-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2195-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ELABORATE.SMALL])
				
				kh.weapon_database.set("2196-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.REBELLION.SMALL])
				
				kh.weapon_database.set("2198-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2199-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2200-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2200-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.STINGER.SMALL])
				
				kh.weapon_database.set("2201-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2202-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2203-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2204-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2204-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL, kh.weapon_skills.RUSH.SMALL])
				
				kh.weapon_database.set("2205-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2206-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2207-false", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				
				kh.weapon_database.set("2208-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.EXCEED.SMALL])
				
				kh.weapon_database.set("2209-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2210-false", [kh.weapon_skills.REBELLION.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				
				kh.weapon_database.set("2211-false", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.SMALL])
				kh.weapon_database.set("2211-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.DEFENDER.MEDIUM])
				
				kh.weapon_database.set("2212-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2212-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2213-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("2213-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("2214-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2214-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2215-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("2215-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("2216-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2216-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2217-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("2217-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("2218-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("2218-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("2219-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2219-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2220-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("2220-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				
				kh.weapon_database.set("2221-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2221-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2222-false", [kh.weapon_skills.ASSAULT.MEDIUM, kh.weapon_skills.ASCENSION.SMALL])
				kh.weapon_database.set("2222-true", [kh.weapon_skills.ASSAULT.LARGE, kh.weapon_skills.ASCENSION.SMALL])
				
				kh.weapon_database.set("2223-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.TECHNICA.SMALL])
				kh.weapon_database.set("2223-true", [kh.weapon_skills.DEFENDER.LARGE, kh.weapon_skills.TECHNICA.SMALL])
				
				// UE L exceed weapons
				kh.weapon_database.set("2250-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2250-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2251-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2251-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2252-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2252-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2253-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2253-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2254-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2254-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2255-false", [kh.weapon_skills.EXCEED.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				kh.weapon_database.set("2255-true", [kh.weapon_skills.EXCEED.LARGE, kh.weapon_skills.ASSAULT.SMALL])
			
				// Soul weapons (A)
				kh.weapon_database.set("2501-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2502-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2503-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2504-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2505-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2506-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2507-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2508-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2509-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2510-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2511-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2512-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2513-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2514-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2515-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2516-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2517-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2518-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2519-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2520-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2521-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2522-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2523-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2524-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2525-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2526-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2527-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2528-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2529-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2530-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2531-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2532-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2533-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2534-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2535-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2536-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2537-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2538-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2539-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2540-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2541-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2542-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2543-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2544-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2545-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2546-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2547-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2548-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2549-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2550-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2551-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2552-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2553-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2554-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2555-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2556-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2557-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2558-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2559-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2560-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2561-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2562-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2563-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2564-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2565-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2566-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2567-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2568-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2569-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2570-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2571-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2572-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2585-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2586-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2587-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2588-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2589-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2590-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2591-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2592-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2593-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2594-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2595-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2596-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2597-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2598-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2599-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2600-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2601-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2602-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2603-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2604-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2605-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2606-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2607-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2608-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2609-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2610-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2611-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2612-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2613-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2614-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2615-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2616-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2617-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2618-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2619-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2620-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2621-false", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2622-false", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2623-false", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2624-false", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2625-false", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2626-false", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2627-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2628-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2629-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2630-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2631-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2632-false", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				// Soul weapons (S)
				kh.weapon_database.set("2633-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2634-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2635-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2636-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2637-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2638-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2639-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2640-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2641-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2642-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2643-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2644-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2645-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2646-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2647-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2648-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2649-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2650-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2651-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2652-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2653-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2654-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2655-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2656-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2657-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2658-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2659-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2660-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2661-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2662-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2663-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2664-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2665-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2666-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2667-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2668-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2669-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2670-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2671-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2672-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2673-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2674-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2675-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2676-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2677-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2678-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2679-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2680-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2681-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2682-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2683-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2684-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2685-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2686-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2687-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2688-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2689-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2690-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2691-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2692-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2693-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2694-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2695-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2696-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2697-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2698-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2699-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2700-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2701-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2702-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2703-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2704-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2705-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2706-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2707-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2708-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2709-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2710-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2711-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2712-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2713-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2714-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2715-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2716-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2717-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2718-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2719-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2720-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2721-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2722-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2723-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2724-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2725-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2726-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2727-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2728-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2729-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2730-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2731-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2732-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2733-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2734-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2735-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2736-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2737-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2738-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2739-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2740-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2741-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2742-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2743-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2744-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2745-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2746-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])

				kh.weapon_database.set("2747-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2748-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2749-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2750-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2751-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2752-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2753-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2754-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2755-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2756-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2757-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2758-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2759-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2760-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2761-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2762-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2763-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2764-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2765-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2766-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2767-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2768-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2769-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2770-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2771-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2772-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2773-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2774-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2775-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2776-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2777-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2778-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2779-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2780-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2781-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2782-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2783-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2784-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2785-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2786-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2787-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2788-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2789-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2790-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2791-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2792-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2793-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2794-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2795-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2796-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2797-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2798-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2799-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2800-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2801-true", [kh.weapon_skills.ELEMENTAL.FIRE, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2802-true", [kh.weapon_skills.ELEMENTAL.WATER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2803-true", [kh.weapon_skills.ELEMENTAL.WIND, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2804-true", [kh.weapon_skills.ELEMENTAL.THUNDER, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2805-true", [kh.weapon_skills.ELEMENTAL.LIGHT, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2806-true", [kh.weapon_skills.ELEMENTAL.DARK, cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("2807-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2808-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2809-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2810-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2811-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				kh.weapon_database.set("2812-true", [cloneApply(kh.weapon_skills.DEFENDER.MAX, obj => { obj.mainOnly = true; obj.guardEffect = false }), cloneApply(kh.weapon_skills.CUSTOM, obj => { obj.mainOnly = true })])
				
				kh.weapon_database.set("3128-false", [kh.weapon_skills.TECHNICA.MEDIUM, kh.weapon_skills.STINGER.SMALL])
				
				kh.weapon_database.set("7001-false", [kh.weapon_skills.DEFENDER.LARGE])
				
				kh.weapon_database.set("7002-false", [kh.weapon_skills.DEFENDER.MEDIUM, kh.weapon_skills.ASSAULT.SMALL])
				
				kh.weapon_database.set("7003-false", [kh.weapon_skills.ASSAULT.MEDIUM])
								
				kh.vigor_buff_weapons = [411, 414, 416, 418, 419, 421]
				kh.pride_buff_weapons = [412, 413, 415, 417, 420, 422]

				var _orig_weapon_card_set_data = kh.CoreCardWeaponUI.prototype.setData

				let formatFloat = function(value) {
					return Math.round(value * 100) / 100
				}

				kh.CoreCardWeaponUI.prototype.setData = function(record, sortCondition, componentName) {
					_orig_weapon_card_set_data.apply(this, arguments)

					switch (this._currentActionName) {
						case this.ACTION_NAME_FULL:
						    this.updateSkills = () => {
								var nodeNameExp = /^skill_label_/;
								this.uiNode.seekWidgets(function(node) {
									if (nodeNameExp.test(node.getName())) {
										node.setText("");
									}
								});
								var nodeNameExp2 = /^skill_icon_/;
								this.uiNode.seekWidgets(function(node) {
									if (nodeNameExp2.test(node.getName())) {
										node.setVisible(false);
									}
								});
								var nodeNameExp3 = /^skill_score/;
								this.uiNode.seekWidgets(function(node) {
									if (nodeNameExp3.test(node.getName())) {
										node.setText("");
									}
								});
								var skill_info
								var newRecord
								let displayModeNode = this.uiNode.seekWidgetByName("display_mode")
								var record = displayModeNode.record
								var currentMode = displayModeNode.string
								if(currentMode == "CUR") {
								    var key = record.weapon_id + "-" + record.is_aroused
									skill_info = kh.weapon_database.get(key)
									newRecord = record
								} else if(currentMode == "MLB") { 
									var key = record.weapon_id + "-false"
									skill_info = kh.weapon_database.get(key)
									newRecord = cloneApply(record, obj => { obj.skill_level = 20 })
								} else if (currentMode == "FLB") {
									var key = record.weapon_id + "-true"
									skill_info = kh.weapon_database.get(key)
									newRecord = cloneApply(record, obj => { obj.skill_level = 30 })
								} else if (currentMode == "ULB") {
									var key = record.weapon_id + "-true"
									skill_info = kh.weapon_database.get(key)
									newRecord = cloneApply(record, obj => { obj.skill_level = 40 })
								}
								if (skill_info) {
								
									var skillScoreNode = this.uiNode.seekWidgetByName("skill_score")
									if(!skillScoreNode) {
										skillScoreNode = new ccui.Text()
										skillScoreNode.setName("skill_score")
										skillScoreNode.setPosition(76, 136);
										skillScoreNode.setFontSize(12);
										skillScoreNode.setFontName("GameFont")
										skillScoreNode.enableOutline(cc.color(0, 0, 128), 2);
										this.uiNode.addChild(skillScoreNode)
									}
									
									var totalScore = 0.0
								
									if (skill_info[0] != undefined) {
										totalScore += this.setWeaponSkillLabel(0, newRecord, skill_info[0])
									}
									if (skill_info[1] != undefined) {
										totalScore += this.setWeaponSkillLabel(1, newRecord, skill_info[1])
									}
									if (skill_info[2] != undefined) {
										totalScore += this.setWeaponSkillLabel(2, newRecord, skill_info[2])
									}
								}
							}
							var displayModeNode = this.uiNode.seekWidgetByName("display_mode")
							if(!displayModeNode) {
								displayModeNode = new ccui.Text()
								displayModeNode.setName("display_mode")
								displayModeNode.setPosition(130, 102.5);
								displayModeNode.setFontSize(14);
								displayModeNode.setAnchorPoint(0.5, 0.5);
								displayModeNode.setFontName("GameFont")
								displayModeNode.enableOutline(cc.color(0, 0, 128), 2);
								this.uiNode.addChild(displayModeNode)
								cc.eventManager.addListener({
									event: cc.EventListener.TOUCH_ONE_BY_ONE,
									swallowTouches: true,
									onTouchBegan: (event) => {
										
										let displayModeNode = this.uiNode.seekWidgetByName("display_mode")
										
										var targetPos = displayModeNode.convertToWorldSpace(displayModeNode.position)
										var rect = cc.rect(targetPos.x, targetPos.y, displayModeNode.width, displayModeNode.height);
										
										if (!cc.rectContainsPoint(rect, event.getLocation())) {
										    return false
										}
										
										var record = displayModeNode.record
										
										if(!record) {
											return false;
										}
										
										var key = record.weapon_id + "-" + record.is_aroused
										skill_info = kh.weapon_database.get(key)
										if(!skill_info) {
											this.updateSkills()
										    return false;
										}
										
										var mlbKey = record.weapon_id + "-" + "false"
										var mlbSkillInfo = kh.weapon_database.get(mlbKey)
										var flbKey = record.weapon_id + "-" + "true"
										var flbSkillInfo = kh.weapon_database.get(flbKey)
										if(displayModeNode.string == "CUR" && mlbSkillInfo) {
											displayModeNode.setText("MLB")
											displayModeNode.enableOutline(cc.color(0, 0, 128), 2);
											this.updateSkills()
										} else if( (displayModeNode.string == "CUR" || displayModeNode.string == "MLB") && flbSkillInfo) {
											displayModeNode.setText("FLB")
											displayModeNode.enableOutline(cc.color(128, 0, 128), 2);
											this.updateSkills()
										} else if(displayModeNode.string == "FLB") {
											displayModeNode.setText("ULB")
											displayModeNode.enableOutline(cc.color(0, 128, 0), 2);
											this.updateSkills()
										} else {
											displayModeNode.enableOutline(cc.color(128, 0, 0), 2);
											displayModeNode.setText("CUR")
											this.updateSkills()
										}
										return true;
									}
								}, displayModeNode);
							}
							var key = record.weapon_id + "-" + record.is_aroused
							skill_info = kh.weapon_database.get(key)
							displayModeNode.enableOutline(cc.color(128, 0, 0), 2);
							displayModeNode.record = record
							if(skill_info) {
								displayModeNode.setText("CUR")
							} else {
								displayModeNode.setText("")
							}
							this.updateSkills()
							break;
						case this.ACTION_NAME_ELEMENT_AND_RARE:
							this.updateSkills2 = () => {
								var nodeNameExp = /^skill_label_/;
								this.uiNode.seekWidgets(function(node) {
									if (nodeNameExp.test(node.getName())) {
										node.setText("");
									}
								});
								var nodeNameExp2 = /^skill_icon_/;
								this.uiNode.seekWidgets(function(node) {
									if (nodeNameExp2.test(node.getName())) {
										node.setVisible(false);
									}
								});
								var nodeNameExp3 = /^skill_score/;
								this.uiNode.seekWidgets(function(node) {
									if (nodeNameExp3.test(node.getName())) {
										node.setText("");
									}
								});
								var skill_info
								var newRecord
								let displayModeNode = this.uiNode.seekWidgetByName("display_mode")
								let record = displayModeNode.record
								let id = record.id || record.weapon_id
								var currentMode = displayModeNode.string
								if(currentMode == "MLB") { 
									var key = id + "-false"
									skill_info = kh.weapon_database.get(key)
									newRecord = {
										is_aroused: false,
										skill_level: 20
									}
								} else if (currentMode == "FLB") {
									var key = id + "-true"
									skill_info = kh.weapon_database.get(key)
									newRecord = {
										is_aroused: true,
										skill_level: 30
									}
								} else if (currentMode == "ULB") {
									var key = id + "-true"
									skill_info = kh.weapon_database.get(key)
									newRecord = {
										is_aroused: true,
										skill_level: 40
									}
								}
								if (skill_info) {
								
									var skillScoreNode = this.uiNode.seekWidgetByName("skill_score")
									if(!skillScoreNode) {
										skillScoreNode = new ccui.Text()
										skillScoreNode.setName("skill_score")
										skillScoreNode.setPosition(76, 136);
										skillScoreNode.setFontSize(12);
										skillScoreNode.setFontName("GameFont")
										skillScoreNode.enableOutline(cc.color(0, 0, 128), 2);
										this.uiNode.addChild(skillScoreNode)
									}
									
									var totalScore = 0.0
								
									if (skill_info[0] != undefined) {
										totalScore += this.setWeaponSkillLabel(0, newRecord, skill_info[0])
									}
									if (skill_info[1] != undefined) {
										totalScore += this.setWeaponSkillLabel(1, newRecord, skill_info[1])
									}
									if (skill_info[2] != undefined) {
										totalScore += this.setWeaponSkillLabel(2, newRecord, skill_info[2])
									}
								}
							}
							
							var displayModeNode = this.uiNode.seekWidgetByName("display_mode")
							if(!displayModeNode) {
								displayModeNode = new ccui.Text()
								displayModeNode.setName("display_mode")
								displayModeNode.setPosition(130, 102.5);
								displayModeNode.setFontSize(14);
								displayModeNode.setAnchorPoint(0.5, 0.5);
								displayModeNode.setFontName("GameFont")
								this.uiNode.addChild(displayModeNode)
								cc.eventManager.addListener({
									event: cc.EventListener.TOUCH_ONE_BY_ONE,
									swallowTouches: true,
									onTouchBegan: (event) => {
										
										let displayModeNode = this.uiNode.seekWidgetByName("display_mode")
										
										var targetPos = displayModeNode.convertToWorldSpace(displayModeNode.position)
										var rect = cc.rect(targetPos.x, targetPos.y, displayModeNode.width, displayModeNode.height);
										
										if (!cc.rectContainsPoint(rect, event.getLocation())) {
										    return false
										}
										
									    var record = displayModeNode.record
										
										if(!record) {
											return false;
										}
										var id = record.weapon_id || record.id
										skill_info = kh.weapon_database.get(id + "-false") || id + "-true"
										if(!skill_info) {
											this.updateSkills2()
										    return false;
										}
										
										var mlbKey = id + "-" + "false"
										var mlbSkillInfo = kh.weapon_database.get(mlbKey)
										var flbKey = id + "-" + "true"
										var flbSkillInfo = kh.weapon_database.get(flbKey)
										var canBeAroused = displayModeNode.canBeAroused
										if( (displayModeNode.string == "MLB") && flbSkillInfo) {
											displayModeNode.setText("FLB")
											displayModeNode.enableOutline(cc.color(128, 0, 128), 2);
											this.updateSkills2()
										} else if(displayModeNode.string == "FLB") {
											displayModeNode.setText("ULB")
											displayModeNode.enableOutline(cc.color(0, 128, 0), 2);
											this.updateSkills2()
										} else if(displayModeNode.string == "ULB" || (displayModeNode.string == "FLB" && !canBeAroused)) {
											displayModeNode.setText("MLB")
											displayModeNode.enableOutline(cc.color(0, 0, 128), 2);
											this.updateSkills2()
										} else {
											var text = canBeAroused? "FLB" : "MLB"
											displayModeNode.setText(text)
											this.updateSkills2()
										}
										return true;
									}
								}, displayModeNode);
							}
							var canBeAroused = kh.weapon_database.has((record.id || record.weapon_id) + "-true")
							var text = canBeAroused? "FLB" : "MLB"
							if(canBeAroused) {
								displayModeNode.enableOutline(cc.color(128, 0, 128), 2);
							} else {
								displayModeNode.enableOutline(cc.color(0, 0, 128), 2);
							}
							skill_info = kh.weapon_database.get((record.id || record.weapon_id) + "-false") || kh.weapon_database.get((record.id || record.weapon_id) + "-true")
							if(skill_info) {
								displayModeNode.setText(text)
							} else {
								displayModeNode.setText("")
							}
							displayModeNode.canBeAroused = canBeAroused
							displayModeNode.record = record
							this.updateSkills2()
							break;
						default:
							break;
					}
				}

				kh.CoreCardWeaponUI.prototype.setWeaponSkillLabel = function(num, record, skill_info) {
					var skillLabelNode = this.uiNode.seekWidgetByName("skill_label_" + num)
					var skillIconNode = this.uiNode.seekWidgetByName("skill_icon_" + num)
					if (!skillLabelNode || !skillIconNode) {
						var position = null
						switch (num) {
							case 0:
								position = 101.5
								break;
							case 1:
								position = 78.5
								break;
							case 2:
								position = 55.5
								break;
							default:
								break;
						}
						var skill_label_node = new ccui.Text()
						skill_label_node.setName("skill_label_" + num)
						skill_label_node.setPosition(28, position + 1);
						skill_label_node.setAnchorPoint(0, 0.5);
						skill_label_node.setFontSize(10);
						skill_label_node.setFontName("GameFont")
						skill_label_node.enableOutline(cc.color(0, 0, 0), 2);
						this.uiNode.addChild(skill_label_node)
						skillLabelNode = skill_label_node

						var skill_icon_node = new ccui.ImageView()
						skill_icon_node.setName("skill_icon_" + num)
						skill_icon_node.setPosition(5, position);
						skill_icon_node.setAnchorPoint(0, 0.5);
						var scale = 0.46
						skill_icon_node.setScale(scale, scale)
						this.uiNode.addChild(skill_icon_node)
						skillIconNode = skill_icon_node
					}
					var primaryScore = 0.0
					var secondaryScore = 0.0
					if (skill_info.base || skill_info.level) {
					    var flbBuff = (record.is_aroused)? (skill_info.flbBuff || 0) : 0
						var skillPercentValue = ("+" + formatFloat(skill_info.base + (record.skill_level * skill_info.level) + flbBuff) + "%") + ((skill_info.subBase || skill_info.subLevel) ? " / " + "↑" + formatFloat(skill_info.subBase + (record.skill_level * skill_info.subLevel)) + "%" : "")
						skillLabelNode.setText(skillPercentValue)
						primaryScore = (skill_info.score)? (skill_info.base + (record.skill_level * skill_info.level) + flbBuff) * skill_info.score : 0.0
						secondaryScore = (skill_info.subScore)? (skill_info.subBase + (record.skill_level * skill_info.subLevel)) * skill_info.subScore : 0.0
					} else {
						skillLabelNode.setText("")
					}
					var icon = kh.generateStatusIconPath(skill_info.icon).png
					skillIconNode.loadTexture(icon);
					skillIconNode.setVisible(true);
					return primaryScore + secondaryScore
				}

				kh.pc.party.par_001_002_003.SceneDelegate.prototype._makeSubWeaponNode = function(panel, weapon, index) {
						let weaponUI;
						let node = panel.seekWidgetByName("par_002_sub_weapon_ui");

						if (node.getChildren().length === 0) {
							var subWeaponUIData = ccs.load(res["party-par_002-par_002_sub_weapon_ui"]);
							subWeaponUIData.node.runAction(subWeaponUIData.action);
							node.addChild(subWeaponUIData.node);
						}
						weaponUI = node.getChildren()[0];
                        panel.weaponUI = weaponUI

						var visible = weapon.weapon_id != null;
						weaponUI.getChildren().forEach(function(node) {
							if (node.getName() === 'touch_panel') {
								return;
							}
							node.setVisible(visible);
						});
						this._setWeaponTouchEvent(weaponUI.getChildByName('touch_panel'), index);
						if (!visible) {
							return;
						}
						var imageFileName = kh.Img("illustzoom", "weapon", _.padZero(weapon.weapon_id, 4), weapon.skin || 0).png;
						var bgFileName = "party/res/par_001_2_3/par_chara_weapon_bg_" + (weapon.rare || "r").toUpperCase() + ".jpg";
						weaponUI.getChildByName('rarity_bg').loadTexture(bgFileName, ccui.Widget.PLIST_TEXTURE);
						weaponUI.loadTextures({
							"illustzoom_weapon": imageFileName
						});
						this._setRarityIcon(weaponUI, weapon, "icon_rarity");
						this._setElementIconCommonRes(weaponUI, weapon, 'icon_element');
						this._setCardStrings(weaponUI, weapon);
						this._setWeaponDetailButton(weaponUI, weapon, index);
						this._setAppearanceWeaponPanel(weaponUI, weapon, /* isSubWeapon=*/ true);
                        weaponUI.seekWidgetByName("icon_element").setPosition(97, 144);

						panel.updateSkills = () => {
							var nodeNameExp = /^skill_label_/;
							panel.weaponUI.seekWidgets(function(node) {
								if (nodeNameExp.test(node.getName())) {
									node.setText("");
								}
							});
							var nodeNameExp2 = /^skill_icon_/;
							panel.weaponUI.seekWidgets(function(node) {
								if (nodeNameExp2.test(node.getName())) {
									node.setVisible(false);
								}
							});
							var nodeNameExp3 = /^skill_score/;
							panel.weaponUI.seekWidgets(function(node) {
								if (nodeNameExp3.test(node.getName())) {
									node.setText("");
								}
							});
							var skill_info
							var newRecord
							var record = panel.displayModeNode.record
							var currentMode = panel.displayModeNode.string
							if(currentMode == "CUR") {
								var key = record.weapon_id + "-" + record.is_aroused
								skill_info = kh.weapon_database.get(key).filter(skill => !skill.mainOnly)
								newRecord = record
							} else if(currentMode == "MLB") { 
								var key = record.weapon_id + "-false"
								skill_info = kh.weapon_database.get(key).filter(skill => !skill.mainOnly)
								newRecord = cloneApply(record, obj => { obj.skill_level = 20 })
							} else if (currentMode == "FLB") {
								var key = record.weapon_id + "-true"
								skill_info = kh.weapon_database.get(key).filter(skill => !skill.mainOnly)
								newRecord = cloneApply(record, obj => { obj.skill_level = 30 })
							} else if (currentMode == "ULB") {
								var key = record.weapon_id + "-true"
								skill_info = kh.weapon_database.get(key).filter(skill => !skill.mainOnly)
								newRecord = cloneApply(record, obj => { obj.skill_level = 40 })
							}
							if (skill_info) {
							
								var skillScoreNode = panel.weaponUI.seekWidgetByName("skill_score")
								if(!skillScoreNode) {
									skillScoreNode = new ccui.Text()
									skillScoreNode.setName("skill_score")
									skillScoreNode.setPosition(76, 136);
									skillScoreNode.setFontSize(12);
									skillScoreNode.setFontName("GameFont")
									skillScoreNode.enableOutline(cc.color(0, 0, 128), 2);
									panel.weaponUI.addChild(skillScoreNode)
								}
								
								var totalScore = 0.0
							
								if (skill_info[0] != undefined) {
									totalScore += this.setWeaponSkillLabel(panel.weaponUI, 0, newRecord, skill_info[0])
								}
								if (skill_info[1] != undefined) {
									totalScore += this.setWeaponSkillLabel(panel.weaponUI, 1, newRecord, skill_info[1])
								}
								if (skill_info[2] != undefined) {
									totalScore += this.setWeaponSkillLabel(panel.weaponUI, 2, newRecord, skill_info[2])
								}
							}
						}
						panel.displayModeNode = panel.weaponUI.seekWidgetByName("display_mode")
						if(!panel.displayModeNode) {
							panel.displayModeNode = new ccui.Text()
							panel.displayModeNode.setName("display_mode")
							panel.displayModeNode.setPosition(100, 125);
							panel.displayModeNode.setFontSize(9.5);
							panel.displayModeNode.setAnchorPoint(0.5, 0.5);
							panel.displayModeNode.setFontName("GameFont")
							panel.displayModeNode.enableOutline(cc.color(0, 0, 128), 2);
							panel.weaponUI.addChild(panel.displayModeNode)
							cc.eventManager.addListener({
								event: cc.EventListener.TOUCH_ONE_BY_ONE,
								swallowTouches: true,
								onTouchBegan: (event) => {
									
									var targetPos = panel.displayModeNode.convertToWorldSpace(panel.displayModeNode.position)
									var rect = cc.rect(targetPos.x, targetPos.y, panel.displayModeNode.width, panel.displayModeNode.height);
									
									if (!cc.rectContainsPoint(rect, event.getLocation())) {
										return false
									}
									
									var record = panel.displayModeNode.record
									
									if(!record) {
										return false;
									}
									
									var key = record.weapon_id + "-" + record.is_aroused
									skill_info = kh.weapon_database.get(key)
									if(!skill_info) {
										panel.updateSkills()
										return false;
									}
									
									var mlbKey = record.weapon_id + "-" + "false"
									var mlbSkillInfo = kh.weapon_database.get(mlbKey)
									var flbKey = record.weapon_id + "-" + "true"
									var flbSkillInfo = kh.weapon_database.get(flbKey)
									if(panel.displayModeNode.string == "CUR" && mlbSkillInfo) {
										panel.displayModeNode.setText("MLB")
										record.displayMode = "MLB"
										panel.displayModeNode.enableOutline(cc.color(0, 0, 128), 2);
										panel.updateSkills()
									} else if( (panel.displayModeNode.string == "CUR" || panel.displayModeNode.string == "MLB") && flbSkillInfo) {
										panel.displayModeNode.setText("FLB")
										record.displayMode = "FLB"
										panel.displayModeNode.enableOutline(cc.color(128, 0, 128), 2);
										panel.updateSkills()
									} else if(panel.displayModeNode.string == "FLB") {
										panel.displayModeNode.setText("ULB")
										record.displayMode = "ULB"
										panel.displayModeNode.enableOutline(cc.color(0, 128, 0), 2);
										panel.updateSkills()
									} else {
										panel.displayModeNode.enableOutline(cc.color(128, 0, 0), 2);
										panel.displayModeNode.setText("CUR")
										record.displayMode = "CUR"
										panel.updateSkills()
									}
									this.updateSummary()
									return true;
								}
							}, panel.displayModeNode);
						}
						var key = weapon.weapon_id + "-" + weapon.is_aroused
						skill_info = kh.weapon_database.get(key)
						panel.displayModeNode.enableOutline(cc.color(128, 0, 0), 2);
						panel.displayModeNode.record = weapon
						weapon.displayMode = weapon.displayMode? weapon.displayMode : "CUR"
						if(skill_info) {
							panel.displayModeNode.setText(weapon.displayMode)
						} else {
							panel.displayModeNode.setText("")
						}
						panel.updateSkills()
					},

					kh.pc.party.par_001_002_003.SceneDelegate.prototype.setWeaponSkillLabel = function(weaponUi, num, record, skill_info) {
						var skillLabelNode = weaponUi.seekWidgetByName("skill_label_" + num)
						var skillIconNode = weaponUi.seekWidgetByName("skill_icon_" + num)
						if (!skillLabelNode || !skillIconNode) {
							var positionX = null
							var positionY = null
							switch (num) {
								case 0:
									positionX = 23
									positionY = 147.5
									break;
								case 1:
									positionX = 23
									positionY = 126.5
									break;
								case 2:
									positionX = 23
									positionY = 105.5
									break;
								default:
									break;
							}
							var skill_label_node = new ccui.Text()
							skill_label_node.setName("skill_label_" + num)
							skill_label_node.setPosition(positionX, positionY);
							skill_label_node.setAnchorPoint(0, 0.5);
							skill_label_node.setFontSize(8);
							skill_label_node.setFontName("GameFont")
							skill_label_node.enableOutline(cc.color(0, 0, 0), 2);
							weaponUi.addChild(skill_label_node)
							skillLabelNode = skill_label_node

							var skill_icon_node = new ccui.ImageView()
							skill_icon_node.setName("skill_icon_" + num)
							skill_icon_node.setPosition(positionX - 18, positionY);
							skill_icon_node.setAnchorPoint(0, 0.5);
							var scale = 0.35
							skill_icon_node.setScale(scale, scale)
							weaponUi.addChild(skill_icon_node)
							skillIconNode = skill_icon_node
						}
						if (skill_info.base || skill_info.level) {
						    var flbBuff = (record.is_aroused)? (skill_info.flbBuff || 0) : 0
							var skillPercentValue = ("+" + formatFloat(skill_info.base + (record.skill_level * skill_info.level) + flbBuff) + "%") + ((skill_info.subBase || skill_info.subLevel) ? " / " + "↑" + formatFloat(skill_info.subBase + (record.skill_level * skill_info.subLevel)) + "%" : "")
							skillLabelNode.setText(skillPercentValue)
						} else {
							skillLabelNode.setText("")
						}
						var icon = kh.generateStatusIconPath(skill_info.icon).png
						skillIconNode.loadTexture(icon);
						skillIconNode.setVisible(true);
					},

					kh.pc.party.par_001_002_003.SceneDelegate.prototype._setMainWeaponPanel = function(weaponUI, weapon) {
						var visible = weapon.weapon_id != null;
						var clippingPanel = weaponUI.getChildByName('clipping_panel');
						if (!visible) {
							weaponUI.getChildByName('rarity_bg').setVisible(false);
							_.invoke(clippingPanel.getChildren(), "setVisible", false);
							this._setWeaponTouchEvent(clippingPanel, /*index =*/ 0);
							return;
						}
						weaponUI.getChildByName('rarity_bg').setVisible(true);
						_.invoke(clippingPanel.getChildren(), "setVisible", true);
						this._setWeaponTouchEvent(weaponUI.seekWidgetByName('weapon_touch_panel'), /*index =*/ 0);

						var imageFileName = kh.Img("illustzoom", "weapon", _.padZero(weapon.weapon_id, 4), weapon.skin || 0).png;
						var bgFileName = "party/res/par_001_2_3/par_main_bg_" + (weapon.rare || "r").toUpperCase() + ".jpg";
						weaponUI.getChildByName('rarity_bg').loadTexture(bgFileName, ccui.Widget.PLIST_TEXTURE);
						weaponUI.loadTextures({
							"illustzoom_weapon": imageFileName
						});
						this._setRarityIcon(weaponUI, weapon, "icon_rarity");
						this._setElementIconCommonRes(weaponUI, weapon, "icon_element");
						this._setCardStrings(weaponUI, weapon);
						this._setWeaponDetailButton(weaponUI, weapon, /* number =*/ 0);

						var nodeNameExp = /^skill_label_/;
						weaponUI.seekWidgets(function(node) {
							if (nodeNameExp.test(node.getName())) {
								node.setText("");
							}
						});
						var nodeNameExp2 = /^skill_icon_/;
						weaponUI.seekWidgets(function(node) {
							if (nodeNameExp2.test(node.getName())) {
								node.setVisible(false);
							}
						});

						var key = weapon.weapon_id + "-" + weapon.is_aroused
						var skill_info = kh.weapon_database.get(key)
						if (skill_info) {
							if (skill_info[0] != undefined) {
								this.setMainWeaponSkillLabel(weaponUI, 0, weapon, skill_info[0])
							}
							if (skill_info[1] != undefined) {
								this.setMainWeaponSkillLabel(weaponUI, 1, weapon, skill_info[1])
							}
							if (skill_info[2] != undefined) {
								this.setMainWeaponSkillLabel(weaponUI, 2, weapon, skill_info[2])
							}
						}
					},

					kh.pc.party.par_001_002_003.SceneDelegate.prototype.setMainWeaponSkillLabel = function(weaponUi, num, record, skill_info) {
						var skillLabelNode = weaponUi.seekWidgetByName("skill_label_" + num)
						var skillIconNode = weaponUi.seekWidgetByName("skill_icon_" + num)
						if (!skillLabelNode || !skillIconNode) {
							var positionX = null
							var positionY = null
							switch (num) {
								case 0:
									positionX = 40
									positionY = 424.5
									break;
								case 1:
									positionX = 40
									positionY = 388.5
									break;
								case 2:
									positionX = 40
									positionY = 352.5
									break;
								default:
									break;
							}
							var skill_label_node = new ccui.Text()
							skill_label_node.setName("skill_label_" + num)
							skill_label_node.setPosition(positionX, positionY);
							skill_label_node.setAnchorPoint(0, 0.5);
							skill_label_node.setFontSize(12);
							skill_label_node.setFontName("GameFont")
							skill_label_node.enableOutline(cc.color(0, 0, 0), 2);
							weaponUi.addChild(skill_label_node)
							skillLabelNode = skill_label_node

							var skill_icon_node = new ccui.ImageView()
							skill_icon_node.setName("skill_icon_" + num)
							skill_icon_node.setPosition(positionX - 32, positionY);
							skill_icon_node.setAnchorPoint(0, 0.5);
							var scale = 0.6
							skill_icon_node.setScale(scale, scale)
							weaponUi.addChild(skill_icon_node)
							skillIconNode = skill_icon_node
						}
						if (skill_info.base || skill_info.level) {
						    var flbBuff = (record.is_aroused)? (skill_info.flbBuff || 0) : 0
							var skillPercentValue = ("+" + formatFloat(skill_info.base + (record.skill_level * skill_info.level) + flbBuff) + "%") + ((skill_info.subBase || skill_info.subLevel) ? " / " + "↑" + formatFloat(skill_info.subBase + (record.skill_level * skill_info.subLevel)) + "%" : "")
							skillLabelNode.setText(skillPercentValue)
						} else {
							skillLabelNode.setText("")
						}
						var icon = kh.generateStatusIconPath(skill_info.icon).png
						skillIconNode.loadTexture(icon);
						skillIconNode.setVisible(true);
					},
					
					kh.guardButtonOptions = [0, 40, 50, 80, 90, 100]
					kh.currentGuardButtonOptionIndex = 0

					kh.pc.party.par_001_002_003.SceneDelegate.prototype._setupWeaponTab = function(scene, deck) {
						this.scene = scene
						var uiNode = scene.seekWidgetByName("par_002_ui");

						// 武器総合HP、総合攻撃力設定
						uiNode.setStrings({
							"calc_hp_no": "" + deck.total_weapon_hp,
							"calc_attack_no": "" + deck.total_weapon_attack
						});

						var weapons = deck.weapons;
						var mainWeapon = weapons[0] || {};

						// メイン武器の設定
						var mainNode = uiNode.seekWidgetByName("partymain_weapon");
						this._setMainWeaponPanel(mainNode, mainWeapon);
						this._setAppearanceWeaponPanel(uiNode, mainWeapon, /* isSubWeapon= */ false);
						mainNode.setVisible(true);

						// サブ武器の設定
						var children = uiNode.getChildren();
						var subWeaponIndex = 1; // 0 is MainWeapon
						_.each(children, function(weaponPanel) {
							// サブパネルの0番目がインデックス1(サブ0番目)
							if (weaponPanel.getName() !== "sub_weapon_blank_" + (subWeaponIndex - 1)) {
								return;
							}
							var weapon = weapons[subWeaponIndex];
							if (weapon.weapon_id == null) {
								this._setWeaponTouchEvent(weaponPanel.getChildByName('btn_sub_weapon_blank'), subWeaponIndex);
							}

							this._makeSubWeaponNode(weaponPanel, weapon, subWeaponIndex);
							subWeaponIndex++;
						}, this);

						this.updateSummary()
					}
					
					kh.pc.party.par_001_002_003.SceneDelegate.prototype.updateSummary = function() {
						var scene = this.scene
						var deck = this._deck
						var weapons = deck.weapons
						var uiNode = scene.seekWidgetByName("par_002_ui");
						var nodeNameExp = /^skill_label_summary_/;
						uiNode.seekWidgets(function(node) {
							if (nodeNameExp.test(node.getName())) {
								node.setText("");
							}
						});
						var nodeNameExp2 = /^skill_icon_summary_/;
						uiNode.seekWidgets(function(node) {
							if (nodeNameExp2.test(node.getName())) {
								node.setVisible(false);
							}
						});

						var weaponData = weapons.map(weapon => {
							var weaponIndex = weapons.indexOf(weapon)
							var key = weapon.weapon_id + "-" + weapon.is_aroused
							var skill_info = kh.weapon_database.get(key)
							var newRecord
							var currentMode = weapon.displayMode
							if(currentMode == "CUR" || weaponIndex == 0) {
								var key = weapon.weapon_id + "-" + weapon.is_aroused
								skill_info = kh.weapon_database.get(key)
								newRecord = weapon
							} else if(currentMode == "MLB") { 
								var key = weapon.weapon_id + "-false"
								skill_info = kh.weapon_database.get(key)
								newRecord = cloneApply(weapon, obj => { obj.skill_level = 20 })
							} else if (currentMode == "FLB") {
								var key = weapon.weapon_id + "-true"
								skill_info = kh.weapon_database.get(key)
								newRecord = cloneApply(weapon, obj => { obj.skill_level = 30 })
							} else if (currentMode == "ULB") {
								var key = weapon.weapon_id + "-true"
								skill_info = kh.weapon_database.get(key)
								newRecord = cloneApply(weapon, obj => { obj.skill_level = 40 })
							}
							return {
								skillInfo: skill_info,
								weapon: newRecord
							};
						}).filter(skill_info => {
							return typeof skill_info.skillInfo !== 'undefined';
						})

						var summaryData = []

						weaponData.forEach(weapon_skill_set => {
							var weapon = weapon_skill_set.weapon
							var weaponIndex = weapons.indexOf(weapon)
							weapon_skill_set.skillInfo.forEach(skill => {
								if(skill.mainOnly && weaponIndex != 0) {
								  return;
								}
								var flbBuff = (weapon.is_aroused)? (skill.flbBuff || 0) : 0
								var guardBuff = (skill.guardEffect)? 1.0 + (kh.guardButtonOptions[kh.currentGuardButtonOptionIndex] / 100.0) : 1.0
								var subGuardBuff = (skill.subGuardEffect)? 1.0 + (kh.guardButtonOptions[kh.currentGuardButtonOptionIndex] / 100.0) : 1.0
								var vigor50EyeBuff = (weapons.some(weapon => kh.vigor_buff_weapons.includes(weapon.weapon_id)) && skill.guardEffect && skill.icon == 31)? 0.5 : 0
								var pride50EyeBuff = weapons.some(weapon => kh.pride_buff_weapons.includes(weapon.weapon_id)) && skill.subGuardEffect && skill.icon == 29? 0.5 : 0
								var primaryBuff = (skill.base || skill.level) ? ((skill.base + (skill.level * weapon.skill_level) + flbBuff) * (guardBuff + vigor50EyeBuff)) : null
								var data = {
									icon: skill.icon,
									primaryBuff: (skill.monoCap && primaryBuff)? Math.min(primaryBuff, skill.monoCap) : primaryBuff,
									secondaryBuff: (skill.subBase || skill.subLevel) ? ((skill.subBase + skill.subLevel * weapon.skill_level) * (subGuardBuff + pride50EyeBuff)) : null,
									cap: (skill.cap)? skill.cap : null,
									subCap: (skill.subCap)? skill.subCap: null,
									capReduction: (skill.capReduction)? skill.capReduction : null,
									subCapReduction: (skill.subCapReduction)? skill.subCapReduction : null,
									bracketsMultiplier: (skill.bracketsMultiplier)? skill.bracketsMultiplier : null,
								}
								var existingData = summaryData.find(d => {
									return d.icon == data.icon
								})
								if (existingData) {
									var newData = {
										icon: skill.icon,
										primaryBuff: (data.primaryBuff) ? data.primaryBuff + existingData.primaryBuff : null,
										secondaryBuff: (data.secondaryBuff) ? (data.secondaryBuff + existingData.secondaryBuff) : null,
										cap: data.cap || existingData.cap,
										subCap: data.subCap || existingData.subCap,
										capReduction: data.capReduction || existingData.capReduction,
										subCapReduction: data.subCapReduction || existingData.subCapReduction,
										bracketsMultiplier: data.bracketsMultiplier || existingData.bracketsMultiplier
									}
									var index = summaryData.indexOf(existingData)
									summaryData[index] = newData
								} else {
									summaryData.push(data)
								}

							})
						})

						summaryData.sort(function(a, b) {
							return a.icon - b.icon;
						})

						summaryData.forEach((value, i) => {
							this.setSummarySkillLabel(uiNode, i, value)
						})

						var guardEffectButton = uiNode.seekWidgetByName("guard_effect_button") || new ccui.Button()
						guardEffectButton.setTitleText(kh.guardButtonOptions[kh.currentGuardButtonOptionIndex] + "%")
						guardEffectButton.setName("guard_effect_button")
						guardEffectButton.setPosition(780, 510)
						guardEffectButton.setColor(cc.color(255, 255, 255))
						guardEffectButton.getTitleRenderer().enableStroke(cc.color(0, 0, 0), 2)
						guardEffectButton.addTouchEventListener((sender, type) => { 
						  if(type == ccui.Widget.TOUCH_ENDED) {
							var newOptionIndex = kh.currentGuardButtonOptionIndex + 1
							if(newOptionIndex >= kh.guardButtonOptions.length) {
							  newOptionIndex = 0
							}
							kh.currentGuardButtonOptionIndex = newOptionIndex
							guardEffectButton.setTitleText(kh.guardButtonOptions[kh.currentGuardButtonOptionIndex] + "%")
							this.updateSummary()
						  }
						}, this)
						uiNode.addChild(guardEffectButton)
					}

				kh.pc.party.par_001_002_003.SceneDelegate.prototype.setSummarySkillLabel = function(uiNode, num, summaryData) {
				    var skillLabelLayout = uiNode.seekWidgetByName("skill_label_layout_summary_" + num)
					if(skillLabelLayout) {
					  skillLabelLayout.removeAllChildren()
					  uiNode.removeChild(skillLabelLayout)
					}
					var skillLabelNode = null
					var skillLabelSeparator = null
					var skillLabelNode2 = null
					var skillIconNode = uiNode.seekWidgetByName("skill_icon_summary_" + num)
					if (!skillLabelNode || !skillIconNode) {
						var positionX = 710
						var positionY = 465 - num * 25
						var skill_label_layout = new ccui.Layout()
						skill_label_layout.setLayoutType(ccui.Layout.LINEAR_HORIZONTAL)
						skill_label_layout.setName("skill_label_layout_summary_" + num)
						skill_label_layout.setPosition(positionX, positionY + 10);
						skill_label_layout.setAnchorPoint(0, 0.5);
						
						var skill_label_node = new ccui.Text()
						skill_label_node.setName("skill_label_summary_" + num)
						skill_label_node.setFontSize(10);
						skill_label_node.setFontName("GameFont")
						skill_label_node.enableOutline(cc.color(0, 0, 0), 2);
						skillLabelNode = skill_label_node
						skill_label_layout.addChild(skill_label_node)
						
						var skill_label_node_separator = new ccui.Text()
						skill_label_node_separator.setName("skill_label_summary_separator_" + num)
						skill_label_node_separator.setFontSize(10);
						skill_label_node_separator.setFontName("GameFont")
						skill_label_node_separator.enableOutline(cc.color(0, 0, 0), 2);
						skillLabelSeparator = skill_label_node_separator
						skill_label_layout.addChild(skill_label_node_separator)
						
						var skill_label_node_2 = new ccui.Text()
						skill_label_node_2.setName("skill_label_summary_2" + num)
						skill_label_node_2.setFontSize(10);
						skill_label_node_2.setFontName("GameFont")
						skill_label_node_2.enableOutline(cc.color(0, 0, 0), 2);
						skillLabelNode2 = skill_label_node_2
						skill_label_layout.addChild(skill_label_node_2)
						
						uiNode.addChild(skill_label_layout)
					

						var skill_icon_node = new ccui.ImageView()
						skill_icon_node.setName("skill_icon_summary_" + num)
						skill_icon_node.setPosition(positionX - 23, positionY);
						skill_icon_node.setAnchorPoint(0, 0.5);
						var scale = 0.45
						skill_icon_node.setScale(scale, scale)
						uiNode.addChild(skill_icon_node)
						skillIconNode = skill_icon_node
					}
					if (summaryData.primaryBuff) {
					    var capColor = cc.color(255, 255, 255)
						var subCapColor = cc.color(255, 255, 255)
					    if(summaryData.cap) {
						   if(summaryData.primaryBuff >= summaryData.cap) {
						     if(!summaryData.capReduction) {
                               capColor = cc.color(255, 64, 64)
							   if(!summaryData.subCap) {
								 subCapColor = cc.color(137, 209, 254)
							     summaryData.overCap = summaryData.primaryBuff - summaryData.cap
							   }
							   summaryData.primaryBuff = summaryData.cap
							 } else {
							   capColor = cc.color(255, 128, 64)
							   summaryData.primaryBuff = summaryData.cap + (summaryData.primaryBuff - summaryData.cap) * summaryData.capReduction
							 }
						   }
						}
						if(summaryData.subCap) { 
						  if(summaryData.secondaryBuff >= summaryData.subCap) {
							  if(!summaryData.subCapReduction) {
								subCapColor = cc.color(255, 64, 64)
								summaryData.secondaryBuff = summaryData.subCap
							  } else {
							    subCapColor = cc.color(255, 128, 64)
								summaryData.secondaryBuff = summaryData.subCap + (summaryData.secondaryBuff - summaryData.subCap) * summaryData.subCapReduction
							  }
						   }
						}
						// don't allow both subCap and brackets
						if(summaryData.bracketsMultiplier) {
						  subCapColor = cc.color(64, 255, 64)
						}
						
						
						skillLabelNode.setTextColor(capColor)
						skillLabelNode2.setTextColor(subCapColor)
						
						
						var node1Text = ("+" + formatFloat(summaryData.primaryBuff) + "%")
						var nodeSeparatorText = (summaryData.secondaryBuff) ? "/" : ""
						var node2Text = (summaryData.secondaryBuff)? ("↑" + formatFloat(summaryData.secondaryBuff) + "%") : ((summaryData.overCap)? ("+" + formatFloat(summaryData.overCap) + "%") : ((summaryData.bracketsMultiplier)? ("(+" + (summaryData.primaryBuff * summaryData.bracketsMultiplier) + "%)") : ""))
						
						skillLabelNode.setText(node1Text)
						skillLabelSeparator.setText(nodeSeparatorText)
						skillLabelNode2.setText(node2Text)
					} else {
						skillLabelNode.setText("")
						skillLabelSeparator.setText("")
						skillLabelNode2.setText("")
					}
					var icon = kh.generateStatusIconPath(summaryData.icon).png
					skillIconNode.loadTexture(icon);
					skillIconNode.setVisible(true);
				}

			}
    }, 10);

})();