From dc69ce7e45f7203c1a3dbedaf55a1a7ec8423f91 Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Thu, 10 Apr 2025 09:02:29 -0400 Subject: [PATCH 01/19] prelim work --- dynamic/src/ext.rs | 7 + fighters/common/src/function_hooks/misc.rs | 20 +- fighters/common/src/general_statuses/mod.rs | 2 + .../common/src/general_statuses/rebirth.rs | 733 ++++++++++++++++++ fighters/common/src/opff/tech.rs | 39 - 5 files changed, 761 insertions(+), 40 deletions(-) create mode 100644 fighters/common/src/general_statuses/rebirth.rs diff --git a/dynamic/src/ext.rs b/dynamic/src/ext.rs index 057cd8254c..acbd77950f 100644 --- a/dynamic/src/ext.rs +++ b/dynamic/src/ext.rs @@ -480,6 +480,7 @@ pub trait BomaExt { // gets the boma of the player who is grabbing you unsafe fn get_grabber_boma(&mut self) -> &mut BattleObjectModuleAccessor; unsafe fn get_owner_boma(&mut self) -> &mut BattleObjectModuleAccessor; + unsafe fn get_article_boma(&mut self, article_type: i32) -> &mut BattleObjectModuleAccessor; // WORK unsafe fn get_int(&mut self, what: i32) -> i32; @@ -916,6 +917,12 @@ impl BomaExt for BattleObjectModuleAccessor { return &mut *sv_battle_object::module_accessor((WorkModule::get_int(self, *WEAPON_INSTANCE_WORK_ID_INT_ACTIVATE_FOUNDER_ID)) as u32); } + unsafe fn get_article_boma(&mut self, article_type: i32) -> &mut BattleObjectModuleAccessor { + let article = ArticleModule::get_article(self, article_type); + let article_id = smash::app::lua_bind::Article::get_battle_object_id(article) as u32; + return &mut *sv_battle_object::module_accessor(article_id); + } + unsafe fn get_num_used_jumps(&mut self) -> i32 { return WorkModule::get_int(self, *FIGHTER_INSTANCE_WORK_ID_INT_JUMP_COUNT); } diff --git a/fighters/common/src/function_hooks/misc.rs b/fighters/common/src/function_hooks/misc.rs index 432bcd51f7..cdc0937448 100644 --- a/fighters/common/src/function_hooks/misc.rs +++ b/fighters/common/src/function_hooks/misc.rs @@ -118,6 +118,24 @@ pub unsafe fn add_rebel_gauge(boma: &mut app::BattleObjectModuleAccessor, entry_ send_rebel_gauge_event(entry_id, new_gauge.min(100.0).max(0.0)); } +//A hook regarding the generation/visiblity of articles. Used to allow entry articles to generate normally +#[skyline::hook(offset = 0x3a6670)] +unsafe extern "C" fn get_article_use_type_mask(weapon_kind: i32, entry_id: i32) -> u32 { + if [ + *WEAPON_KIND_MARIO_DOKAN, *WEAPON_KIND_DONKEY_DKBARREL, *WEAPON_KIND_LINK_PARASAIL, *WEAPON_KIND_SAMUS_TRANSPORTATION, *WEAPON_KIND_KIRBY_WARPSTAR, *WEAPON_KIND_FOX_ARWING, *WEAPON_KIND_PIKACHU_MONSTERBALL, *WEAPON_KIND_LUIGI_DOKAN, + *WEAPON_KIND_CAPTAIN_BLUEFALCON, *WEAPON_KIND_PURIN_MONSTERBALL, *WEAPON_KIND_PEACH_KASSAR, *WEAPON_KIND_DAISY_KASSAR, *WEAPON_KIND_MARIOD_CAPSULEBLOCK, *WEAPON_KIND_PICHU_MONSTERBALL, *WEAPON_KIND_FALCO_ARWING, *WEAPON_KIND_LUCINA_MASK, + *WEAPON_KIND_ROY_SWORD, *WEAPON_KIND_GAMEWATCH_ENTRY, *WEAPON_KIND_METAKNIGHT_MANTLE, *WEAPON_KIND_SZEROSUIT_GUNSHIP, *WEAPON_KIND_WARIO_WARIOBIKE, *WEAPON_KIND_DIDDY_DKBARREL, *WEAPON_KIND_LUCAS_DOSEITABLE, *WEAPON_KIND_DEDEDE_SHRINE, + *WEAPON_KIND_MURABITO_HOUSE, *WEAPON_KIND_WIIFIT_BALANCEBOARD, *WEAPON_KIND_WIIFIT_WIIBO, *WEAPON_KIND_LITTLEMAC_SWEATLITTLEMAC, *WEAPON_KIND_LITTLEMAC_THROWSWEAT, *WEAPON_KIND_GEKKOUGA_MONSTERBALL, + *WEAPON_KIND_PALUTENA_GATE, *WEAPON_KIND_PACMAN_BIGPACMAN, *WEAPON_KIND_SHIZUE_OFFICE, *WEAPON_KIND_GAOGAEN_MONSTERBALL, *WEAPON_KIND_MASTER_BATON, *WEAPON_KIND_PICKEL_ENTRYOBJECT + ].contains(&weapon_kind) { + return *ARTICLE_USETYPE_FINAL as u32; + } + call_original!(weapon_kind, entry_id) +} + pub fn install() { - skyline::install_hook!(add_rebel_gauge); + skyline::install_hooks!( + add_rebel_gauge, + get_article_use_type_mask + ); } \ No newline at end of file diff --git a/fighters/common/src/general_statuses/mod.rs b/fighters/common/src/general_statuses/mod.rs index a81f183365..750e3a1c4c 100644 --- a/fighters/common/src/general_statuses/mod.rs +++ b/fighters/common/src/general_statuses/mod.rs @@ -33,6 +33,7 @@ mod down; mod float; mod slip; mod lasso; +mod rebirth; // [LUA-REPLACE-REBASE] // [SHOULD-CHANGE] // Reimplement the whole status script (already done) instead of doing this. @@ -1103,6 +1104,7 @@ pub fn install() { down::install(); slip::install(); lasso::install(); + rebirth::install(); skyline::nro::add_hook(nro_hook); } \ No newline at end of file diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs new file mode 100644 index 0000000000..1ef1e5a0d5 --- /dev/null +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -0,0 +1,733 @@ +use super::*; +use globals::*; + +#[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_sub_rebirth_common_pre)] +unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { + let lr = PostureModule::lr(fighter.module_accessor); + let kind = fighter.global_table[FIGHTER_KIND].get_i32(); + + CameraModule::reset_all(fighter.module_accessor); + + ControlModule::reset_trigger(fighter.module_accessor); + ControlModule::clear_command(fighter.module_accessor, false); + + notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1f20a9d549), true); + + AreaModule::set_whole(fighter.module_accessor, false); + VisibilityModule::set_whole(fighter.module_accessor, true); + + notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1e61567377)); + notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1e0aba2d68)); + + PhysicsModule::set_swing_rebirth(fighter.module_accessor, true); + + let end_frame = MotionModule::end_frame_from_hash(fighter.module_accessor, Hash40::new("entry_l")); + let start_frame: f32 = (end_frame - 85.0).max(0.0); + + if [*FIGHTER_KIND_PZENIGAME, + *FIGHTER_KIND_PFUSHIGISOU, + *FIGHTER_KIND_PLIZARDON].contains(&kind) + { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("respawn"), 0.0, 1.0, false, 0.0, false, false); + } + else if [*FIGHTER_KIND_PIKMIN].contains(&kind) { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("wait"), 0.0, 1.0, false, 0.0, false, false); + } + else { + if lr == -1.0 { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("entry_l"), start_frame, 1.0, false, 0.0, false, false); + } + else { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("entry_r"), start_frame, 1.0, false, 0.0, false, false); + } + } + + match kind { + 0x0 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, start_frame); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, start_frame); + } + }, + 0x1 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x3 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x6 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x7 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x8 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); + }, + 0x9 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); + } + }, + 0xB => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + // if lr == -1.0 { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + // } + // else { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + // } + // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { + // let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); + // StatusModule::change_status_request_from_script(article_boma, *WEAPON_CAPTAIN_BLUEFALCON_STATUS_KIND_ENTRY, false); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + // } + }, + 0xC => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + }, + 0xD => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), true, -1.0); + } + }, + 0xE => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x12 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x13 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); + }, + 0x14 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x16 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x1A => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x1C => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + }, + 0x1D => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x20 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); + } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { + let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_SZEROSUIT_GUNSHIP_STATUS_KIND_ENTRY, false); + } + }, + 0x21 => { + let bike_hp = WorkModule::get_param_float(fighter.module_accessor, hash40("param_special_s"), hash40("bike_hp")); + WorkModule::set_float(fighter.module_accessor, bike_hp, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLOAT_SPECIAL_S_BIKE_HP); + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_r"), true, -1.0); + } + WorkModule::on_flag(fighter.module_accessor, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLAG_REMOVE_BIKE); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { + let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_WARIO_WARIOBIKE_STATUS_KIND_ENTRY, false); + } + }, + 0x27 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x28 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, start_frame); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, start_frame); + } + }, + 0x2A => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x30 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x32 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, false, -1); + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_l"), true, -1.0); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_r"), true, -1.0); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x33 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO) { + let article_boma = fighter.get_article_boma(*FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY, false); + } + }, + 0x34 => { + let costume_slot = WorkModule::get_int(fighter.module_accessor, *FIGHTER_INSTANCE_WORK_ID_INT_COLOR); + if costume_slot == 5 + || costume_slot == 7 { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, false, -1); + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, false, -1); + + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, start_frame); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, start_frame); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, start_frame); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, start_frame); + } + } + }, + 0x35 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + }, + 0x36 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x37 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, Hash40::new("entry"), true, -1.0); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { + let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY, false); + } + }, + 0x46 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x47 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + }, + 0x4B => { + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry"), true, -1.0); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); + } + }, + 0x4C => { + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry"), true, -1.0); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); + } + }, + 0x56 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x58 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, Hash40::new("entry_r"), true, -1.0); + }, + 0x5A => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { + let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); + } + }, + 0x5B => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { + let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); + } + }, + _ => {} + } + if !StopModule::is_stop(fighter.module_accessor) { + fighter.sub_rebirth_uniq_check(false.into()); + } + fighter.global_table[SUB_STATUS].assign(&L2CValue::Ptr(L2CFighterCommon_bind_address_call_sub_rebirth_uniq_check as *const () as _)); + GroundModule::set_ignore_boss(fighter.module_accessor, true); +} + +#[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_status_Rebirth_Main)] +unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CValue { + let motion_kind = MotionModule::motion_kind(fighter.module_accessor); + let lr = PostureModule::lr(fighter.module_accessor); + let kind = fighter.global_table[FIGHTER_KIND].get_i32(); + let cmd_cat2 = fighter.global_table[CMD_CAT2].get_i32(); + let pos = PostureModule::pos(fighter.module_accessor); + let pos_x = (*pos).x; + let pos_y = (*pos).y; + let pos_z = (*pos).z; + + if fighter.sub_rebirth_common().get_bool() { + println!("rebirth common"); + return 1.into(); + } + if [hash40("entry_l"), hash40("entry_r")].contains(&motion_kind) { + rebirth_motion_handler(fighter); + } + else { + fighter.sub_wait_motion(false.into()); + } + + let rebirth_cancel_frame: i32 = 60; + if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_HI != 0 && fighter.global_table[CURRENT_FRAME].get_i32() >= rebirth_cancel_frame { + if lr >= 0.0 { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_hi_r"), 0.0, 1.0, false, 0.0, false, false); + } + else { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_hi_l"), 0.0, 1.0, false, 0.0, false, false); + } + } + if (cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_S_L != 0 || cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_S_R != 0) + && fighter.global_table[CURRENT_FRAME].get_i32() >= rebirth_cancel_frame { + if lr >= 0.0 { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_s_r"), 0.0, 1.0, false, 0.0, false, false); + } + else { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_s_l"), 0.0, 1.0, false, 0.0, false, false); + } + } + if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_LW != 0 && fighter.global_table[CURRENT_FRAME].get_i32() >= rebirth_cancel_frame { + if lr >= 0.0 { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_lw_r"), 0.0, 1.0, false, 0.0, false, false); + } + else { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_lw_l"), 0.0, 1.0, false, 0.0, false, false); + } + } + + match kind { + 0x0 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN) { + let article_boma = fighter.get_article_boma(*FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x1 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL) { + let article_boma = fighter.get_article_boma(*FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x3 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION) { + let article_boma = fighter.get_article_boma(*FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x6 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR) { + let article_boma = fighter.get_article_boma(*FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x7 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING) { + let article_boma = fighter.get_article_boma(*FIGHTER_FOX_GENERATE_ARTICLE_ARWING); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x8 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x9 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN) { + let article_boma = fighter.get_article_boma(*FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0xB => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { + let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0xC => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0xD => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR) { + let article_boma = fighter.get_article_boma(*FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0xE => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR) { + let article_boma = fighter.get_article_boma(*FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x12 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK) { + let article_boma = fighter.get_article_boma(*FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x13 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x14 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING) { + let article_boma = fighter.get_article_boma(*FIGHTER_FALCO_GENERATE_ARTICLE_ARWING); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x16 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK) { + let article_boma = fighter.get_article_boma(*FIGHTER_LUCINA_GENERATE_ARTICLE_MASK); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x1A => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD) { + let article_boma = fighter.get_article_boma(*FIGHTER_ROY_GENERATE_ARTICLE_SWORD); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x1C => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY) { + let article_boma = fighter.get_article_boma(*FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x1D => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE) { + let article_boma = fighter.get_article_boma(*FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x20 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { + let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x21 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { + let article_boma = fighter.get_article_boma(*FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x27 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL) { + let article_boma = fighter.get_article_boma(*FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x28 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE) { + let article_boma = fighter.get_article_boma(*FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x2A => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE) { + let article_boma = fighter.get_article_boma(*FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x30 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE) { + let article_boma = fighter.get_article_boma(*FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x32 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD) { + let article_boma = fighter.get_article_boma(*FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO) { + let article_boma = fighter.get_article_boma(*FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x34 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC) { + let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT) { + let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x35 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x36 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE) { + let article_boma = fighter.get_article_boma(*FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x37 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { + let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x46 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE) { + let article_boma = fighter.get_article_boma(*FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x47 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x56 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON) { + let article_boma = fighter.get_article_boma(*FIGHTER_MASTER_GENERATE_ARTICLE_BATON); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x58 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT) { + let article_boma = fighter.get_article_boma(*FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x5A => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { + let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x5B => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER) { + let article_boma = fighter.get_article_boma(*FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + _ => {} + } + if fighter.sub_air_check_fall_common().get_bool() { + println!("fall common"); + return 1.into(); + } + if !fighter.global_table[IS_STOPPING].get_bool() { + fighter.sub_rebirth_uniq_process_exec_fix_pos(); + } + 0.into() +} + +unsafe extern "C" fn rebirth_motion_handler(fighter: &mut L2CFighterCommon) { + if MotionModule::is_end(fighter.module_accessor) { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("wait"), 0.0, 1.0, false, 0.0, false, false); + notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1e0aba2d68)); + + fighter.sub_entry_remove_article(); + } +} + +#[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_status_end_Rebirth)] +unsafe extern "C" fn status_end_rebirth(fighter: &mut L2CFighterCommon) -> L2CValue { + fighter.status_end_Rebirth_common(); + + fighter.sub_entry_remove_article(); + + 0.into() +} + +fn nro_hook(info: &skyline::nro::NroInfo) { + if info.name == "common" { + skyline::install_hooks!( + sub_rebirth_common_pre, + status_rebirth_main, + status_end_rebirth + ); + } +} + +pub fn install() { + skyline::nro::add_hook(nro_hook); +} \ No newline at end of file diff --git a/fighters/common/src/opff/tech.rs b/fighters/common/src/opff/tech.rs index 49a8e48ef1..4c24e6f568 100644 --- a/fighters/common/src/opff/tech.rs +++ b/fighters/common/src/opff/tech.rs @@ -207,44 +207,6 @@ extern "C" { pub fn stage_id() -> i32; } -pub unsafe fn respawn_taunt(boma: &mut BattleObjectModuleAccessor, status_kind: i32) { - if !boma.is_status(*FIGHTER_STATUS_KIND_REBIRTH) { - return; - } - - match MotionModule::motion_kind(boma) { - utils::hash40!("appeal_hi_r") => return, - utils::hash40!("appeal_hi_l") => return, - utils::hash40!("appeal_lw_r") => return, - utils::hash40!("appeal_lw_l") => return, - utils::hash40!("appeal_s_l") => return, - utils::hash40!("appeal_s_r") => return, - _ => {} - } - - let motion = if boma.is_button_trigger(Buttons::AppealHi) { - if PostureModule::lr(boma) == 1.0 { - Hash40::new("appeal_hi_r") - } else { - Hash40::new("appeal_hi_l") - } - } else if boma.is_button_trigger(Buttons::AppealSL) { - Hash40::new("appeal_s_l") - } else if boma.is_button_trigger(Buttons::AppealSR) { - Hash40::new("appeal_s_r") - } else if boma.is_button_trigger(Buttons::AppealLw) { - if PostureModule::lr(boma) == 1.0 { - Hash40::new("appeal_lw_r") - } else { - Hash40::new("appeal_lw_l") - } - } else { - return; - }; - - MotionModule::change_motion(boma, motion, 0.0, 1.0, false, 0.0, false, false); -} - // Teeter cancelling pub unsafe fn teeter_cancel(fighter: &mut L2CFighterCommon, boma: &mut BattleObjectModuleAccessor) { if (boma.is_situation(*SITUATION_KIND_GROUND) @@ -301,6 +263,5 @@ pub unsafe fn run( double_shield_button_airdodge(boma, status_kind, situation_kind, cat[0]); //drift_di(fighter, boma, status_kind, situation_kind); waveland_plat_drop(boma, cat[1], status_kind); - respawn_taunt(boma, status_kind); teeter_cancel(fighter, boma); } From 1cfc38119303b24a971b5ea08373781ed4025bfb Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Thu, 10 Apr 2025 16:36:18 -0400 Subject: [PATCH 02/19] hook correct end status --- .../common/src/general_statuses/rebirth.rs | 42 +++++++++---------- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 1ef1e5a0d5..6edc19de5a 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -113,19 +113,19 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0xB => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - // if lr == -1.0 { - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - // } - // else { - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - // } - // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { - // let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); - // StatusModule::change_status_request_from_script(article_boma, *WEAPON_CAPTAIN_BLUEFALCON_STATUS_KIND_ENTRY, false); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - // } + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { + let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_CAPTAIN_BLUEFALCON_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + } }, 0xC => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, false, -1); @@ -432,7 +432,6 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV let pos_z = (*pos).z; if fighter.sub_rebirth_common().get_bool() { - println!("rebirth common"); return 1.into(); } if [hash40("entry_l"), hash40("entry_r")].contains(&motion_kind) { @@ -442,8 +441,7 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV fighter.sub_wait_motion(false.into()); } - let rebirth_cancel_frame: i32 = 60; - if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_HI != 0 && fighter.global_table[CURRENT_FRAME].get_i32() >= rebirth_cancel_frame { + if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_HI != 0 && WorkModule::is_flag(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_FLAG_ENABLE_STRANS) { if lr >= 0.0 { MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_hi_r"), 0.0, 1.0, false, 0.0, false, false); } @@ -452,7 +450,7 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV } } if (cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_S_L != 0 || cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_S_R != 0) - && fighter.global_table[CURRENT_FRAME].get_i32() >= rebirth_cancel_frame { + && WorkModule::is_flag(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_FLAG_ENABLE_STRANS) { if lr >= 0.0 { MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_s_r"), 0.0, 1.0, false, 0.0, false, false); } @@ -460,7 +458,7 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_s_l"), 0.0, 1.0, false, 0.0, false, false); } } - if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_LW != 0 && fighter.global_table[CURRENT_FRAME].get_i32() >= rebirth_cancel_frame { + if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_LW != 0 && WorkModule::is_flag(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_FLAG_ENABLE_STRANS) { if lr >= 0.0 { MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_lw_r"), 0.0, 1.0, false, 0.0, false, false); } @@ -691,7 +689,6 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV _ => {} } if fighter.sub_air_check_fall_common().get_bool() { - println!("fall common"); return 1.into(); } if !fighter.global_table[IS_STOPPING].get_bool() { @@ -709,8 +706,9 @@ unsafe extern "C" fn rebirth_motion_handler(fighter: &mut L2CFighterCommon) { } } -#[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_status_end_Rebirth)] -unsafe extern "C" fn status_end_rebirth(fighter: &mut L2CFighterCommon) -> L2CValue { +#[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_bind_address_call_status_end_Rebirth)] +unsafe extern "C" fn bind_address_call_status_end_Rebirth(fighter: &mut L2CFighterCommon, _agent: &mut L2CAgent) -> L2CValue { + println!("end rebirth"); fighter.status_end_Rebirth_common(); fighter.sub_entry_remove_article(); @@ -723,7 +721,7 @@ fn nro_hook(info: &skyline::nro::NroInfo) { skyline::install_hooks!( sub_rebirth_common_pre, status_rebirth_main, - status_end_rebirth + bind_address_call_status_end_Rebirth ); } } From 15ef28947174ff60e3a861f072e8a88f471f128d Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Fri, 11 Apr 2025 11:02:52 -0400 Subject: [PATCH 03/19] uhhh the rest --- .../common/src/general_statuses/rebirth.rs | 134 +++++++++++++----- 1 file changed, 97 insertions(+), 37 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 6edc19de5a..12665384e0 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -60,9 +60,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, start_frame); } }, 0x3 => { @@ -70,9 +72,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, start_frame); } }, 0x6 => { @@ -80,9 +84,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, start_frame); } }, 0x7 => { @@ -90,56 +96,64 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, start_frame); } }, 0x8 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, start_frame); }, 0x9 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, start_frame); } }, 0xB => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { - let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_CAPTAIN_BLUEFALCON_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - } + // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, false, -1); + // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + // if lr == -1.0 { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + // } + // else { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + // } + // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { + // let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); + // StatusModule::change_status_request_from_script(article_boma, *WEAPON_CAPTAIN_BLUEFALCON_STATUS_KIND_ENTRY, false); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + // } }, 0xC => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, start_frame); }, 0xD => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, start_frame); } }, 0xE => { @@ -147,9 +161,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, start_frame); } }, 0x12 => { @@ -157,24 +173,29 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, start_frame); } }, 0x13 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, start_frame); }, 0x14 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, start_frame); } }, 0x16 => { @@ -182,9 +203,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, start_frame); } }, 0x1A => { @@ -192,9 +215,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, start_frame); } }, 0x1C => { @@ -206,9 +231,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, start_frame); } }, 0x20 => { @@ -216,9 +243,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); } if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); @@ -232,13 +261,16 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, start_frame); + } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, start_frame); } WorkModule::on_flag(fighter.module_accessor, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLAG_REMOVE_BIKE); if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { - let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); + let article_boma = fighter.get_article_boma(*FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE); StatusModule::change_status_request_from_script(article_boma, *WEAPON_WARIO_WARIOBIKE_STATUS_KIND_ENTRY, false); } }, @@ -247,9 +279,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, start_frame); } }, 0x28 => { @@ -269,9 +303,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, start_frame); } }, 0x30 => { @@ -279,9 +315,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, start_frame); } }, 0x32 => { @@ -291,17 +329,22 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, start_frame); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, start_frame); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, start_frame); } }, 0x33 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO) { let article_boma = fighter.get_article_boma(*FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO); StatusModule::change_status_request_from_script(article_boma, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY, start_frame); } }, 0x34 => { @@ -333,21 +376,26 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, start_frame); }, 0x36 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, start_frame); } }, 0x37 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, Hash40::new("entry"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); StatusModule::change_status_request_from_script(article_boma, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY, false); @@ -358,19 +406,24 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, start_frame); } }, 0x47 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, start_frame); }, 0x4B => { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); @@ -379,6 +432,7 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0x4C => { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); @@ -389,26 +443,31 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, start_frame); } }, 0x58 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, start_frame); }, 0x5A => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, start_frame); } }, 0x5B => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, start_frame); } }, _ => {} @@ -441,29 +500,31 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV fighter.sub_wait_motion(false.into()); } - if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_HI != 0 && WorkModule::is_flag(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_FLAG_ENABLE_STRANS) { - if lr >= 0.0 { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_hi_r"), 0.0, 1.0, false, 0.0, false, false); - } - else { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_hi_l"), 0.0, 1.0, false, 0.0, false, false); - } - } - if (cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_S_L != 0 || cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_S_R != 0) + if !StatusModule::is_changing(fighter.module_accessor) && WorkModule::is_flag(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_FLAG_ENABLE_STRANS) { - if lr >= 0.0 { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_s_r"), 0.0, 1.0, false, 0.0, false, false); - } - else { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_s_l"), 0.0, 1.0, false, 0.0, false, false); + if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_HI != 0 { + if lr >= 0.0 { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_hi_r"), 0.0, 1.0, false, 0.0, false, false); + } + else { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_hi_l"), 0.0, 1.0, false, 0.0, false, false); + } } - } - if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_LW != 0 && WorkModule::is_flag(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_FLAG_ENABLE_STRANS) { - if lr >= 0.0 { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_lw_r"), 0.0, 1.0, false, 0.0, false, false); + if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_S_L != 0 || cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_S_R != 0 { + if lr >= 0.0 { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_s_r"), 0.0, 1.0, false, 0.0, false, false); + } + else { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_s_l"), 0.0, 1.0, false, 0.0, false, false); + } } - else { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_lw_l"), 0.0, 1.0, false, 0.0, false, false); + if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_LW != 0 { + if lr >= 0.0 { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_lw_r"), 0.0, 1.0, false, 0.0, false, false); + } + else { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_lw_l"), 0.0, 1.0, false, 0.0, false, false); + } } } @@ -708,7 +769,6 @@ unsafe extern "C" fn rebirth_motion_handler(fighter: &mut L2CFighterCommon) { #[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_bind_address_call_status_end_Rebirth)] unsafe extern "C" fn bind_address_call_status_end_Rebirth(fighter: &mut L2CFighterCommon, _agent: &mut L2CAgent) -> L2CValue { - println!("end rebirth"); fighter.status_end_Rebirth_common(); fighter.sub_entry_remove_article(); From 293b84d5b6e1a03ada058d070401282f5e839449 Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Sat, 12 Apr 2025 17:07:19 -0400 Subject: [PATCH 04/19] fix a couple --- fighters/common/src/function_hooks/misc.rs | 4 +- .../common/src/general_statuses/rebirth.rs | 85 ++++++++++++------- 2 files changed, 56 insertions(+), 33 deletions(-) diff --git a/fighters/common/src/function_hooks/misc.rs b/fighters/common/src/function_hooks/misc.rs index cdc0937448..5bac2876a4 100644 --- a/fighters/common/src/function_hooks/misc.rs +++ b/fighters/common/src/function_hooks/misc.rs @@ -124,9 +124,9 @@ unsafe extern "C" fn get_article_use_type_mask(weapon_kind: i32, entry_id: i32) if [ *WEAPON_KIND_MARIO_DOKAN, *WEAPON_KIND_DONKEY_DKBARREL, *WEAPON_KIND_LINK_PARASAIL, *WEAPON_KIND_SAMUS_TRANSPORTATION, *WEAPON_KIND_KIRBY_WARPSTAR, *WEAPON_KIND_FOX_ARWING, *WEAPON_KIND_PIKACHU_MONSTERBALL, *WEAPON_KIND_LUIGI_DOKAN, *WEAPON_KIND_CAPTAIN_BLUEFALCON, *WEAPON_KIND_PURIN_MONSTERBALL, *WEAPON_KIND_PEACH_KASSAR, *WEAPON_KIND_DAISY_KASSAR, *WEAPON_KIND_MARIOD_CAPSULEBLOCK, *WEAPON_KIND_PICHU_MONSTERBALL, *WEAPON_KIND_FALCO_ARWING, *WEAPON_KIND_LUCINA_MASK, - *WEAPON_KIND_ROY_SWORD, *WEAPON_KIND_GAMEWATCH_ENTRY, *WEAPON_KIND_METAKNIGHT_MANTLE, *WEAPON_KIND_SZEROSUIT_GUNSHIP, *WEAPON_KIND_WARIO_WARIOBIKE, *WEAPON_KIND_DIDDY_DKBARREL, *WEAPON_KIND_LUCAS_DOSEITABLE, *WEAPON_KIND_DEDEDE_SHRINE, + *WEAPON_KIND_ROY_SWORD, *WEAPON_KIND_GAMEWATCH_ENTRY, *WEAPON_KIND_METAKNIGHT_MANTLE, *WEAPON_KIND_WARIO_WARIOBIKE, *WEAPON_KIND_DIDDY_DKBARREL, *WEAPON_KIND_LUCAS_DOSEITABLE, *WEAPON_KIND_DEDEDE_SHRINE, *WEAPON_KIND_MURABITO_HOUSE, *WEAPON_KIND_WIIFIT_BALANCEBOARD, *WEAPON_KIND_WIIFIT_WIIBO, *WEAPON_KIND_LITTLEMAC_SWEATLITTLEMAC, *WEAPON_KIND_LITTLEMAC_THROWSWEAT, *WEAPON_KIND_GEKKOUGA_MONSTERBALL, - *WEAPON_KIND_PALUTENA_GATE, *WEAPON_KIND_PACMAN_BIGPACMAN, *WEAPON_KIND_SHIZUE_OFFICE, *WEAPON_KIND_GAOGAEN_MONSTERBALL, *WEAPON_KIND_MASTER_BATON, *WEAPON_KIND_PICKEL_ENTRYOBJECT + *WEAPON_KIND_PALUTENA_GATE, *WEAPON_KIND_SHIZUE_OFFICE, *WEAPON_KIND_GAOGAEN_MONSTERBALL, *WEAPON_KIND_MASTER_BATON, *WEAPON_KIND_PICKEL_ENTRYOBJECT ].contains(&weapon_kind) { return *ARTICLE_USETYPE_FINAL as u32; } diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 12665384e0..746aa91e4f 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -22,7 +22,12 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { PhysicsModule::set_swing_rebirth(fighter.module_accessor, true); let end_frame = MotionModule::end_frame_from_hash(fighter.module_accessor, Hash40::new("entry_l")); - let start_frame: f32 = (end_frame - 85.0).max(0.0); + let mut start_frame: f32 = (end_frame - 85.0).max(0.0); + println!("start frame {}", start_frame); + + if [*FIGHTER_KIND_ROSETTA].contains(&kind) { + start_frame = 0.0; + } if [*FIGHTER_KIND_PZENIGAME, *FIGHTER_KIND_PFUSHIGISOU, @@ -239,35 +244,37 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }, 0x20 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { - let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_SZEROSUIT_GUNSHIP_STATUS_KIND_ENTRY, false); - } + // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); + // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + // if lr == -1.0 { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); + // } + // else { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); + // } + + // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { + // let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); + // StatusModule::change_status_request_from_script(article_boma, *WEAPON_SZEROSUIT_GUNSHIP_STATUS_KIND_ENTRY, false); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); + // } }, 0x21 => { let bike_hp = WorkModule::get_param_float(fighter.module_accessor, hash40("param_special_s"), hash40("bike_hp")); WorkModule::set_float(fighter.module_accessor, bike_hp, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLOAT_SPECIAL_S_BIKE_HP); ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, start_frame); } + WorkModule::on_flag(fighter.module_accessor, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLAG_REMOVE_BIKE); if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { let article_boma = fighter.get_article_boma(*FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE); @@ -342,9 +349,9 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { }, 0x33 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO) { + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); let article_boma = fighter.get_article_boma(*FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO); StatusModule::change_status_request_from_script(article_boma, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY, start_frame); } }, 0x34 => { @@ -399,6 +406,7 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); StatusModule::change_status_request_from_script(article_boma, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, start_frame); } }, 0x46 => { @@ -427,16 +435,19 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); } }, 0x4C => { - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { - let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); - } + // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry"), true, -1.0); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + + // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + // let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + // StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); + // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + // } }, 0x56 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, false, -1); @@ -460,14 +471,14 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, start_frame); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, start_frame); } }, 0x5B => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, start_frame); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, start_frame); } }, _ => {} @@ -638,10 +649,10 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV } }, 0x20 => { - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { - let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); - PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); - } + // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { + // let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); + // PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + // } }, 0x21 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { @@ -723,6 +734,18 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); } }, + 0x4B => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + }, + 0x4C => { + // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + // let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + // PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + // } + }, 0x56 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON) { let article_boma = fighter.get_article_boma(*FIGHTER_MASTER_GENERATE_ARTICLE_BATON); From c7d06bccb82c9963897ac66bae50b53c1fbfea92 Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Sun, 13 Apr 2025 19:10:23 -0400 Subject: [PATCH 05/19] fix some others --- .../common/src/general_statuses/rebirth.rs | 68 ++++++++++--------- 1 file changed, 36 insertions(+), 32 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 746aa91e4f..1487d41deb 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -21,14 +21,22 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { PhysicsModule::set_swing_rebirth(fighter.module_accessor, true); - let end_frame = MotionModule::end_frame_from_hash(fighter.module_accessor, Hash40::new("entry_l")); + let end_frame = if lr == -1.0 { + MotionModule::end_frame_from_hash(fighter.module_accessor, Hash40::new("entry_l")) + } else { + MotionModule::end_frame_from_hash(fighter.module_accessor, Hash40::new("entry_r")) + }; + let mut start_frame: f32 = (end_frame - 85.0).max(0.0); - println!("start frame {}", start_frame); if [*FIGHTER_KIND_ROSETTA].contains(&kind) { start_frame = 0.0; } + if kind == *FIGHTER_KIND_GAMEWATCH { + start_frame = 70.0; + } + if [*FIGHTER_KIND_PZENIGAME, *FIGHTER_KIND_PFUSHIGISOU, *FIGHTER_KIND_PLIZARDON].contains(&kind) @@ -40,11 +48,13 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } else { if lr == -1.0 { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("entry_l"), start_frame, 1.0, false, 0.0, false, false); + MotionModule::change_motion(fighter.module_accessor, Hash40::new("entry_l"), 0.0, 1.0, false, 0.0, false, false); } else { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("entry_r"), start_frame, 1.0, false, 0.0, false, false); + MotionModule::change_motion(fighter.module_accessor, Hash40::new("entry_r"), 0.0, 1.0, false, 0.0, false, false); } + + MotionModule::set_frame_sync_anim_cmd(fighter.module_accessor, start_frame, false, false, false); } match kind { @@ -161,18 +171,6 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, start_frame); } }, - 0xE => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, start_frame); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR, start_frame); - } - }, 0x12 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); @@ -429,8 +427,14 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { }, 0x4B => { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + } if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); @@ -439,15 +443,21 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }, 0x4C => { - // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry"), true, -1.0); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + } - // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { - // let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); - // StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); - // } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + } }, 0x56 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, false, -1); @@ -600,12 +610,6 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); } }, - 0xE => { - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR) { - let article_boma = fighter.get_article_boma(*FIGHTER_DAISY_GENERATE_ARTICLE_KASSAR); - PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); - } - }, 0x12 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK) { let article_boma = fighter.get_article_boma(*FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK); From ceb05a41ba664a16feef70cfe2aa0554d0701ef1 Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Mon, 14 Apr 2025 22:52:13 -0400 Subject: [PATCH 06/19] almost there!! --- fighters/common/src/function_hooks/misc.rs | 11 +- .../common/src/general_statuses/rebirth.rs | 160 ++++++++---------- 2 files changed, 81 insertions(+), 90 deletions(-) diff --git a/fighters/common/src/function_hooks/misc.rs b/fighters/common/src/function_hooks/misc.rs index 5bac2876a4..55b990e2af 100644 --- a/fighters/common/src/function_hooks/misc.rs +++ b/fighters/common/src/function_hooks/misc.rs @@ -118,15 +118,16 @@ pub unsafe fn add_rebel_gauge(boma: &mut app::BattleObjectModuleAccessor, entry_ send_rebel_gauge_event(entry_id, new_gauge.min(100.0).max(0.0)); } -//A hook regarding the generation/visiblity of articles. Used to allow entry articles to generate normally +// A hook regarding the generation/visiblity of articles +// Used to allow entry articles to generate normally #[skyline::hook(offset = 0x3a6670)] unsafe extern "C" fn get_article_use_type_mask(weapon_kind: i32, entry_id: i32) -> u32 { if [ *WEAPON_KIND_MARIO_DOKAN, *WEAPON_KIND_DONKEY_DKBARREL, *WEAPON_KIND_LINK_PARASAIL, *WEAPON_KIND_SAMUS_TRANSPORTATION, *WEAPON_KIND_KIRBY_WARPSTAR, *WEAPON_KIND_FOX_ARWING, *WEAPON_KIND_PIKACHU_MONSTERBALL, *WEAPON_KIND_LUIGI_DOKAN, - *WEAPON_KIND_CAPTAIN_BLUEFALCON, *WEAPON_KIND_PURIN_MONSTERBALL, *WEAPON_KIND_PEACH_KASSAR, *WEAPON_KIND_DAISY_KASSAR, *WEAPON_KIND_MARIOD_CAPSULEBLOCK, *WEAPON_KIND_PICHU_MONSTERBALL, *WEAPON_KIND_FALCO_ARWING, *WEAPON_KIND_LUCINA_MASK, - *WEAPON_KIND_ROY_SWORD, *WEAPON_KIND_GAMEWATCH_ENTRY, *WEAPON_KIND_METAKNIGHT_MANTLE, *WEAPON_KIND_WARIO_WARIOBIKE, *WEAPON_KIND_DIDDY_DKBARREL, *WEAPON_KIND_LUCAS_DOSEITABLE, *WEAPON_KIND_DEDEDE_SHRINE, - *WEAPON_KIND_MURABITO_HOUSE, *WEAPON_KIND_WIIFIT_BALANCEBOARD, *WEAPON_KIND_WIIFIT_WIIBO, *WEAPON_KIND_LITTLEMAC_SWEATLITTLEMAC, *WEAPON_KIND_LITTLEMAC_THROWSWEAT, *WEAPON_KIND_GEKKOUGA_MONSTERBALL, - *WEAPON_KIND_PALUTENA_GATE, *WEAPON_KIND_SHIZUE_OFFICE, *WEAPON_KIND_GAOGAEN_MONSTERBALL, *WEAPON_KIND_MASTER_BATON, *WEAPON_KIND_PICKEL_ENTRYOBJECT + *WEAPON_KIND_PURIN_MONSTERBALL, *WEAPON_KIND_PEACH_KASSAR, *WEAPON_KIND_DAISY_KASSAR, *WEAPON_KIND_MARIOD_CAPSULEBLOCK, *WEAPON_KIND_PICHU_MONSTERBALL, *WEAPON_KIND_FALCO_ARWING, *WEAPON_KIND_LUCINA_MASK, + *WEAPON_KIND_ROY_SWORD, *WEAPON_KIND_GAMEWATCH_ENTRY, *WEAPON_KIND_METAKNIGHT_MANTLE, *WEAPON_KIND_DIDDY_DKBARREL, *WEAPON_KIND_LUCAS_DOSEITABLE, *WEAPON_KIND_DEDEDE_SHRINE, + *WEAPON_KIND_MURABITO_HOUSE, *WEAPON_KIND_WIIFIT_BALANCEBOARD, *WEAPON_KIND_WIIFIT_WIIBO, *WEAPON_KIND_LITTLEMAC_SWEATLITTLEMAC, *WEAPON_KIND_LITTLEMAC_THROWSWEAT, *WEAPON_KIND_GEKKOUGA_MONSTERBALL, + *WEAPON_KIND_PALUTENA_GATE, *WEAPON_KIND_SHIZUE_OFFICE, *WEAPON_KIND_GAOGAEN_MONSTERBALL, *WEAPON_KIND_MASTER_BATON, *WEAPON_KIND_PICKEL_ENTRYOBJECT, *WEAPON_KIND_PACMAN_BIGPACMAN ].contains(&weapon_kind) { return *ARTICLE_USETYPE_FINAL as u32; } diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 1487d41deb..e9925b1ce0 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -6,6 +6,8 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { let lr = PostureModule::lr(fighter.module_accessor); let kind = fighter.global_table[FIGHTER_KIND].get_i32(); + let move_total_frame = WorkModule::get_int(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_WORK_INT_MOVE_TOTAL_FRAME); + CameraModule::reset_all(fighter.module_accessor); ControlModule::reset_trigger(fighter.module_accessor); @@ -17,7 +19,6 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { VisibilityModule::set_whole(fighter.module_accessor, true); notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1e61567377)); - notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1e0aba2d68)); PhysicsModule::set_swing_rebirth(fighter.module_accessor, true); @@ -137,21 +138,18 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }, 0xB => { - // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, false, -1); - // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - // if lr == -1.0 { - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - // } - // else { - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - // } - // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { - // let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); - // StatusModule::change_status_request_from_script(article_boma, *WEAPON_CAPTAIN_BLUEFALCON_STATUS_KIND_ENTRY, false); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); - // } + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, false, -1); + + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, *WEAPON_CAPTAIN_BLUEFALCON_STATUS_KIND_ENTRY); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); + } + + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); }, 0xC => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, false, -1); @@ -242,29 +240,30 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }, 0x20 => { - // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); - // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - // if lr == -1.0 { - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); - // } - // else { - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); - // } - - // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { - // let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); - // StatusModule::change_status_request_from_script(article_boma, *WEAPON_SZEROSUIT_GUNSHIP_STATUS_KIND_ENTRY, false); - // ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); - // } + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, *WEAPON_SZEROSUIT_GUNSHIP_STATUS_KIND_ENTRY); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); + } + + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); }, 0x21 => { - let bike_hp = WorkModule::get_param_float(fighter.module_accessor, hash40("param_special_s"), hash40("bike_hp")); - WorkModule::set_float(fighter.module_accessor, bike_hp, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLOAT_SPECIAL_S_BIKE_HP); ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + WorkModule::on_flag(fighter.module_accessor, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLAG_REMOVE_BIKE); + + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, *WEAPON_WARIO_WARIOBIKE_STATUS_KIND_ENTRY); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_l"), true, -1.0); @@ -273,11 +272,7 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_r"), true, -1.0); } - WorkModule::on_flag(fighter.module_accessor, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLAG_REMOVE_BIKE); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { - let article_boma = fighter.get_article_boma(*FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_WARIO_WARIOBIKE_STATUS_KIND_ENTRY, false); - } + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, start_frame); }, 0x27 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, false, -1); @@ -317,7 +312,8 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { }, 0x30 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_l"), true, -1.0); ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, start_frame); @@ -346,11 +342,9 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }, 0x33 => { - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO) { - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - let article_boma = fighter.get_article_boma(*FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY, false); - } + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY); }, 0x34 => { let costume_slot = WorkModule::get_int(fighter.module_accessor, *FIGHTER_INSTANCE_WORK_ID_INT_COLOR); @@ -380,6 +374,7 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0x35 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, start_frame); }, @@ -398,14 +393,10 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0x37 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, Hash40::new("entry"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, start_frame); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { - let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, start_frame); - } + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY); + + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, start_frame); }, 0x46 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, false, -1); @@ -427,37 +418,31 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { }, 0x4B => { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { - let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); - } + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); }, 0x4C => { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { - let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); - } + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); }, 0x56 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, false, -1); @@ -474,30 +459,30 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0x58 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, Hash40::new("entry_r"), true, -1.0); ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, start_frame); }, 0x5A => { - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { - let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, start_frame); - } + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, start_frame); }, 0x5B => { - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { - let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, start_frame); - } + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER, start_frame); }, _ => {} } + if !StopModule::is_stop(fighter.module_accessor) { fighter.sub_rebirth_uniq_check(false.into()); } + fighter.global_table[SUB_STATUS].assign(&L2CValue::Ptr(L2CFighterCommon_bind_address_call_sub_rebirth_uniq_check as *const () as _)); + GroundModule::set_ignore_boss(fighter.module_accessor, true); + + WorkModule::set_int(fighter.module_accessor, move_total_frame, *FIGHTER_STATUS_REBIRTH_WORK_INT_MOVE_TOTAL_FRAME); } #[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_status_Rebirth_Main)] @@ -514,6 +499,7 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV if fighter.sub_rebirth_common().get_bool() { return 1.into(); } + if [hash40("entry_l"), hash40("entry_r")].contains(&motion_kind) { rebirth_motion_handler(fighter); } @@ -653,10 +639,10 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV } }, 0x20 => { - // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { - // let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); - // PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); - // } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { + let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } }, 0x21 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { @@ -745,10 +731,10 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV } }, 0x4C => { - // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { - // let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); - // PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); - // } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } }, 0x56 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON) { @@ -776,19 +762,21 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV }, _ => {} } + if fighter.sub_air_check_fall_common().get_bool() { return 1.into(); } + if !fighter.global_table[IS_STOPPING].get_bool() { fighter.sub_rebirth_uniq_process_exec_fix_pos(); } + 0.into() } unsafe extern "C" fn rebirth_motion_handler(fighter: &mut L2CFighterCommon) { if MotionModule::is_end(fighter.module_accessor) { MotionModule::change_motion(fighter.module_accessor, Hash40::new("wait"), 0.0, 1.0, false, 0.0, false, false); - notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1e0aba2d68)); fighter.sub_entry_remove_article(); } @@ -800,6 +788,8 @@ unsafe extern "C" fn bind_address_call_status_end_Rebirth(fighter: &mut L2CFight fighter.sub_entry_remove_article(); + EffectModule::kill_all(fighter.module_accessor, *EFFECT_SUB_ATTRIBUTE_NONE as u32, true, true); + 0.into() } From 2647207e81430626d86d494cba759624e74bf9fb Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Tue, 15 Apr 2025 00:08:46 -0400 Subject: [PATCH 07/19] captain, tico, diver --- .../common/src/general_statuses/rebirth.rs | 33 ++++++++++++++----- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index e9925b1ce0..39d0b23bbb 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -38,6 +38,10 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { start_frame = 70.0; } + if kind == *FIGHTER_KIND_CAPTAIN { + start_frame = end_frame - 61.0; + } + if [*FIGHTER_KIND_PZENIGAME, *FIGHTER_KIND_PFUSHIGISOU, *FIGHTER_KIND_PLIZARDON].contains(&kind) @@ -342,9 +346,12 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }, 0x33 => { - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO) { + ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY); + let article_boma = fighter.get_article_boma(*FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_ROSETTA_TICO_STATUS_KIND_ENTRY, false); + } }, 0x34 => { let costume_slot = WorkModule::get_int(fighter.module_accessor, *FIGHTER_INSTANCE_WORK_ID_INT_COLOR); @@ -394,9 +401,11 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY); - - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { + let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, start_frame); + } }, 0x46 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, false, -1); @@ -464,12 +473,18 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, start_frame); }, 0x5A => { - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { + let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, start_frame); + } }, 0x5B => { - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER) { + let article_boma = fighter.get_article_boma(*FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER); + StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); + ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER, start_frame); + } }, _ => {} } From 7a8c0e7c195021ed37423032db97c4cf496480bb Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Wed, 16 Apr 2025 10:09:16 -0400 Subject: [PATCH 08/19] replace ArticleModule::set_frame --- .../common/src/general_statuses/rebirth.rs | 311 +++++++++++++----- 1 file changed, 228 insertions(+), 83 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 39d0b23bbb..1cc9fda4d7 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -66,79 +66,109 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0x0 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN) { + let article_boma = fighter.get_article_boma(*FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x1 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL) { + let article_boma = fighter.get_article_boma(*FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x3 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION) { + let article_boma = fighter.get_article_boma(*FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x6 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, start_frame); } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR) { + let article_boma = fighter.get_article_boma(*FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } + }, 0x7 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING) { + let article_boma = fighter.get_article_boma(*FIGHTER_FOX_GENERATE_ARTICLE_ARWING); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x8 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, start_frame); + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x9 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN) { + let article_boma = fighter.get_article_boma(*FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0xB => { @@ -153,112 +183,155 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); } - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { + let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0xC => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, start_frame); + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0xD => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR) { + let article_boma = fighter.get_article_boma(*FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x12 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK) { + let article_boma = fighter.get_article_boma(*FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x13 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, start_frame); + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x14 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING) { + let article_boma = fighter.get_article_boma(*FIGHTER_FALCO_GENERATE_ARTICLE_ARWING); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x16 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK) { + let article_boma = fighter.get_article_boma(*FIGHTER_LUCINA_GENERATE_ARTICLE_MASK); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x1A => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD) { + let article_boma = fighter.get_article_boma(*FIGHTER_ROY_GENERATE_ARTICLE_SWORD); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x1C => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY) { + let article_boma = fighter.get_article_boma(*FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x1D => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE) { + let article_boma = fighter.get_article_boma(*FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x20 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); + // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, *WEAPON_SZEROSUIT_GUNSHIP_STATUS_KIND_ENTRY); + // ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, *WEAPON_SZEROSUIT_GUNSHIP_STATUS_KIND_ENTRY); - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); - } + // if lr == -1.0 { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); + // } + // else { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); + // } - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, start_frame); + // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { + // let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); + // MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + // } }, 0x21 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, false, -1); @@ -276,43 +349,59 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_r"), true, -1.0); } - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { + let article_boma = fighter.get_article_boma(*FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x27 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL) { + let article_boma = fighter.get_article_boma(*FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x28 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE) { + let article_boma = fighter.get_article_boma(*FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x2A => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, start_frame); } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE) { + let article_boma = fighter.get_article_boma(*FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } + }, 0x30 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, false, -1); @@ -320,11 +409,14 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE) { + let article_boma = fighter.get_article_boma(*FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x32 => { @@ -332,17 +424,24 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, start_frame); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, start_frame); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD) { + let article_boma = fighter.get_article_boma(*FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO) { + let article_boma = fighter.get_article_boma(*FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x33 => { @@ -359,22 +458,26 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { || costume_slot == 7 { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, false, -1); ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, start_frame); - + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_l"), true, -1.0); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, start_frame); - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC) { + let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT) { + let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } } }, @@ -383,47 +486,65 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, start_frame); + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x36 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE) { + let article_boma = fighter.get_article_boma(*FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x37 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, false, -1); + // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { - let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, start_frame); - } + // ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY); + + // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { + // let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); + // MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + // } }, 0x46 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE) { + let article_boma = fighter.get_article_boma(*FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x47 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, start_frame); + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL) { + let article_boma = fighter.get_article_boma(*FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x4B => { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); @@ -437,7 +558,10 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); } - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x4C => { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); @@ -451,18 +575,25 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); } - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, start_frame); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { + let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x56 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_l"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, start_frame); } else { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, start_frame); + } + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON) { + let article_boma = fighter.get_article_boma(*FIGHTER_MASTER_GENERATE_ARTICLE_BATON); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x58 => { @@ -470,20 +601,26 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, Hash40::new("entry_r"), true, -1.0); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, start_frame); + + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT) { + let article_boma = fighter.get_article_boma(*FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x5A => { + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, start_frame); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x5B => { + ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY); + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER) { let article_boma = fighter.get_article_boma(*FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER); - StatusModule::change_status_request_from_script(article_boma, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY, false); - ArticleModule::set_frame(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER, start_frame); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, _ => {} @@ -699,6 +836,14 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); } }, + 0x33 => { + if StatusModule::is_changing(fighter.module_accessor) { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO) { + let article_boma = fighter.get_article_boma(*FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + } + }, 0x34 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC) { let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC); From a2627bc19df1909f2fcc8a8d34cd6c16d19a249d Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Thu, 17 Apr 2025 21:08:40 -0400 Subject: [PATCH 09/19] link, ness, wario, wiifit --- .../common/src/general_statuses/rebirth.rs | 57 ++++++++++++++----- 1 file changed, 43 insertions(+), 14 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 1cc9fda4d7..138093a382 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -28,19 +28,36 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { MotionModule::end_frame_from_hash(fighter.module_accessor, Hash40::new("entry_r")) }; - let mut start_frame: f32 = (end_frame - 85.0).max(0.0); - if [*FIGHTER_KIND_ROSETTA].contains(&kind) { - start_frame = 0.0; - } - - if kind == *FIGHTER_KIND_GAMEWATCH { - start_frame = 70.0; - } - - if kind == *FIGHTER_KIND_CAPTAIN { - start_frame = end_frame - 61.0; - } + let start_frame: f32 = match kind { + 0x4 => { + end_frame - 73.0 + }, + 0xA => { + 0.0 + }, + 0xB => { + end_frame - 61.0 + }, + 0x1C => { + 70.0 + }, + 0x21 => { + 15.0 + }, + 0x2A => { + end_frame - 80.0 + }, + 0x32 => { + end_frame - 75.0 + }, + 0x33 => { + 0.0 + }, + _ => { + (end_frame - 85.0).max(0.0) + } + }; if [*FIGHTER_KIND_PZENIGAME, *FIGHTER_KIND_PFUSHIGISOU, @@ -95,6 +112,12 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, + 0x2 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LINK_GENERATE_ARTICLE_PARASAIL) { + let article_boma = fighter.get_article_boma(*FIGHTER_LINK_GENERATE_ARTICLE_PARASAIL); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } + } 0x3 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); @@ -454,8 +477,8 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { }, 0x34 => { let costume_slot = WorkModule::get_int(fighter.module_accessor, *FIGHTER_INSTANCE_WORK_ID_INT_COLOR); - if costume_slot == 5 - || costume_slot == 7 { + if costume_slot != 5 + && costume_slot != 7 { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, false, -1); ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, false, -1); ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); @@ -700,6 +723,12 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); } }, + 0x2 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LINK_GENERATE_ARTICLE_PARASAIL) { + let article_boma = fighter.get_article_boma(*FIGHTER_LINK_GENERATE_ARTICLE_PARASAIL); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + } + } 0x3 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION) { let article_boma = fighter.get_article_boma(*FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION); From 6d28da7fbf297bccb44426f88c1cef5b1291bb7c Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Fri, 18 Apr 2025 08:51:37 -0400 Subject: [PATCH 10/19] ac --- fighters/common/src/general_statuses/rebirth.rs | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 138093a382..078dd5bb25 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -223,14 +223,14 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }, 0xD => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, true, -1); + // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), true, -1.0); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), false, -1.0); } else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), true, -1.0); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), false, -1.0); } if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR) { @@ -428,6 +428,9 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { }, 0x30 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, false, -1); + fighter.clear_lua_stack(); + lua_args!(fighter, MA_MSC_CMD_ARTICLE_SET_OFFSET_ARTICLE, FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, 0, 0, -10); + sv_module_access::article(fighter.lua_state_agent); // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { @@ -544,7 +547,10 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { }, 0x46 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); + fighter.clear_lua_stack(); + lua_args!(fighter, MA_MSC_CMD_ARTICLE_SET_OFFSET_ARTICLE, FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, 0, 0, -10); + sv_module_access::article(fighter.lua_state_agent); + // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); if lr == -1.0 { ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_l"), true, -1.0); From d49d18a2dc102bf9d5ef5bd1d287d9c19fa52b11 Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Tue, 22 Apr 2025 10:00:43 -0400 Subject: [PATCH 11/19] fix murabito, peach --- .../common/src/general_statuses/rebirth.rs | 738 +++++++++--------- 1 file changed, 377 insertions(+), 361 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 078dd5bb25..d6a8495c8c 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -1,6 +1,337 @@ use super::*; use globals::*; + +#[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_sub_rebirth_uniq_process_init)] +unsafe extern "C" fn sub_rebirth_uniq_process_init(fighter: &mut L2CFighterCommon) -> L2CValue { + let lr = PostureModule::lr(fighter.module_accessor); + let kind = fighter.global_table[FIGHTER_KIND].get_i32(); + + let status_module = *(fighter.module_accessor as *const BattleObjectModuleAccessor as *const u64).add(0x8); + *((status_module + 0x98) as *mut i32) = *FIGHTER_STATUS_KIND_ENTRY; // StatusModule::status_kind + + match kind { + 0x0 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x1 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x3 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x6 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x7 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x8 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); + }, + 0x9 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); + } + }, + 0xB => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); + } + }, + 0xC => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, false, -1); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + }, + 0xD => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x12 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x13 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); + }, + 0x14 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x16 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x1A => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x1C => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY, false, -1); + }, + 0x1D => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x20 => { + // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); + + // if lr == -1.0 { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); + // } + // else { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); + // } + }, + 0x21 => { + let bike_hp = WorkModule::get_param_float(fighter.module_accessor, hash40("param_special_s"), hash40("bike_hp")); + WorkModule::set_float(fighter.module_accessor, bike_hp, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLOAT_SPECIAL_S_BIKE_HP); + + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_l"), true, -1.0); + + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_r"), true, -1.0); + } + + WorkModule::on_flag(fighter.module_accessor, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLAG_REMOVE_BIKE); + }, + 0x27 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x28 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x2A => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x30 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x32 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, false, -1); + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_l"), true, -1.0); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_r"), true, -1.0); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x33 => { + // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_ROSETTA_GENERATE_ARTICLE_TICO, false, -1); + }, + 0x34 => { + let costume_slot = WorkModule::get_int(fighter.module_accessor, *FIGHTER_INSTANCE_WORK_ID_INT_COLOR); + if costume_slot != 5 + && costume_slot != 7 { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, false, -1); + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_l"), true, -1.0); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_r"), true, -1.0); + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, Hash40::new("entry_r"), true, -1.0); + } + } + }, + 0x35 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, false, -1); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + }, + 0x36 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x37 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, false, -1); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, Hash40::new("entry"), true, -1.0); + }, + 0x46 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x47 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, false, -1); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); + }, + 0x4B => { + // if lr == -1.0 { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_l"), true, -1.0); + // } + // else { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); + // } + }, + 0x4C => { + // if lr == -1.0 { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_l"), true, -1.0); + // } + // else { + // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); + // } + }, + 0x56 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, false, -1); + + if lr == -1.0 { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_l"), true, -1.0); + } + else { + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_r"), true, -1.0); + } + }, + 0x58 => { + ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, false, -1); + + ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, Hash40::new("entry_r"), true, -1.0); + }, + _ => {} + } + + *((status_module + 0x98) as *mut i32) = *FIGHTER_STATUS_KIND_REBIRTH; // StatusModule::status_kind + + original!()(fighter) +} + #[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_sub_rebirth_common_pre)] unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { let lr = PostureModule::lr(fighter.module_accessor); @@ -13,11 +344,10 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { ControlModule::reset_trigger(fighter.module_accessor); ControlModule::clear_command(fighter.module_accessor, false); - notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1f20a9d549), true); - AreaModule::set_whole(fighter.module_accessor, false); VisibilityModule::set_whole(fighter.module_accessor, true); + notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1f20a9d549), true); notify_event_msc_cmd!(fighter, Hash40::new_raw(0x1e61567377)); PhysicsModule::set_swing_rebirth(fighter.module_accessor, true); @@ -42,6 +372,12 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0x1C => { 70.0 }, + 0x1E => { + 45.0 + }, + 0x1F => { + 45.0 + }, 0x21 => { 15.0 }, @@ -49,7 +385,7 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { end_frame - 80.0 }, 0x32 => { - end_frame - 75.0 + end_frame - 75.0 }, 0x33 => { 0.0 @@ -59,6 +395,8 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }; + let costume = WorkModule::get_int(fighter.module_accessor, *FIGHTER_INSTANCE_WORK_ID_INT_COLOR); + if [*FIGHTER_KIND_PZENIGAME, *FIGHTER_KIND_PFUSHIGISOU, *FIGHTER_KIND_PLIZARDON].contains(&kind) @@ -81,32 +419,12 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { match kind { 0x0 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN) { let article_boma = fighter.get_article_boma(*FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x1 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL) { let article_boma = fighter.get_article_boma(*FIGHTER_DONKEY_GENERATE_ARTICLE_DKBARREL); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); @@ -119,347 +437,132 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } } 0x3 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION) { let article_boma = fighter.get_article_boma(*FIGHTER_SAMUS_GENERATE_ARTICLE_TRANSPORTATION); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } - }, - 0x6 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR, Hash40::new("entry_r"), true, -1.0); - } - - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR) { - let article_boma = fighter.get_article_boma(*FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR); - MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); - } - - }, - 0x7 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); + }, + 0x6 => { + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR) { + let article_boma = fighter.get_article_boma(*FIGHTER_KIRBY_GENERATE_ARTICLE_WARPSTAR); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } - + }, + 0x7 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_FOX_GENERATE_ARTICLE_ARWING) { let article_boma = fighter.get_article_boma(*FIGHTER_FOX_GENERATE_ARTICLE_ARWING); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x8 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL) { let article_boma = fighter.get_article_boma(*FIGHTER_PIKACHU_GENERATE_ARTICLE_MONSTERBALL); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x9 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN) { let article_boma = fighter.get_article_boma(*FIGHTER_LUIGI_GENERATE_ARTICLE_DOKAN); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0xB => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, false, -1); - - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, *WEAPON_CAPTAIN_BLUEFALCON_STATUS_KIND_ENTRY); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON) { let article_boma = fighter.get_article_boma(*FIGHTER_CAPTAIN_GENERATE_ARTICLE_BLUEFALCON); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0xC => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL) { let article_boma = fighter.get_article_boma(*FIGHTER_PURIN_GENERATE_ARTICLE_MONSTERBALL); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0xD => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, true, -1); - // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_l"), false, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR, Hash40::new("entry_r"), false, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR) { let article_boma = fighter.get_article_boma(*FIGHTER_PEACH_GENERATE_ARTICLE_KASSAR); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x12 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK) { let article_boma = fighter.get_article_boma(*FIGHTER_MARIOD_GENERATE_ARTICLE_CAPSULEBLOCK); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x13 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry_r"), true, -1.0); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL) { let article_boma = fighter.get_article_boma(*FIGHTER_PICHU_GENERATE_ARTICLE_MONSTERBALL); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x14 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_FALCO_GENERATE_ARTICLE_ARWING) { let article_boma = fighter.get_article_boma(*FIGHTER_FALCO_GENERATE_ARTICLE_ARWING); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x16 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUCINA_GENERATE_ARTICLE_MASK) { let article_boma = fighter.get_article_boma(*FIGHTER_LUCINA_GENERATE_ARTICLE_MASK); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x1A => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ROY_GENERATE_ARTICLE_SWORD) { let article_boma = fighter.get_article_boma(*FIGHTER_ROY_GENERATE_ARTICLE_SWORD); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, - 0x1C => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - + 0x1C => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY) { let article_boma = fighter.get_article_boma(*FIGHTER_GAMEWATCH_GENERATE_ARTICLE_ENTRY); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x1D => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE) { let article_boma = fighter.get_article_boma(*FIGHTER_METAKNIGHT_GENERATE_ARTICLE_MANTLE); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x20 => { - // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, false, -1); - // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - // ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, *WEAPON_SZEROSUIT_GUNSHIP_STATUS_KIND_ENTRY); - - // if lr == -1.0 { - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_l"), true, -1.0); - // } - // else { - // ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP, Hash40::new("entry_r"), true, -1.0); - // } - // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP) { // let article_boma = fighter.get_article_boma(*FIGHTER_SZEROSUIT_GENERATE_ARTICLE_GUNSHIP); // MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); // } }, 0x21 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - WorkModule::on_flag(fighter.module_accessor, *FIGHTER_WARIO_INSTANCE_WORK_ID_FLAG_REMOVE_BIKE); - - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, *WEAPON_WARIO_WARIOBIKE_STATUS_KIND_ENTRY); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_l"), true, -1.0); - - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE) { let article_boma = fighter.get_article_boma(*FIGHTER_WARIO_GENERATE_ARTICLE_WARIOBIKE); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x27 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL) { let article_boma = fighter.get_article_boma(*FIGHTER_DIDDY_GENERATE_ARTICLE_DKBARREL); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x28 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE) { let article_boma = fighter.get_article_boma(*FIGHTER_LUCAS_GENERATE_ARTICLE_DOSEITABLE); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x2A => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE) { let article_boma = fighter.get_article_boma(*FIGHTER_DEDEDE_GENERATE_ARTICLE_SHRINE); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } - }, 0x30 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, false, -1); - fighter.clear_lua_stack(); - lua_args!(fighter, MA_MSC_CMD_ARTICLE_SET_OFFSET_ARTICLE, FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, 0, 0, -10); - sv_module_access::article(fighter.lua_state_agent); - // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE) { let article_boma = fighter.get_article_boma(*FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x32 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, false, -1); - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_l"), true, -1.0); - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD, Hash40::new("entry_r"), true, -1.0); - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_WIIBO, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD) { let article_boma = fighter.get_article_boma(*FIGHTER_WIIFIT_GENERATE_ARTICLE_BALANCEBOARD); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); @@ -479,174 +582,77 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }, 0x34 => { - let costume_slot = WorkModule::get_int(fighter.module_accessor, *FIGHTER_INSTANCE_WORK_ID_INT_COLOR); - if costume_slot != 5 - && costume_slot != 7 { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, false, -1); - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_l"), true, -1.0); - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC, Hash40::new("entry_r"), true, -1.0); - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT, Hash40::new("entry_r"), true, -1.0); - } - - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC) { - let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC); - MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); - } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC) { + let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_SWEATLITTLEMAC); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT) { - let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT); - MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); - } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT) { + let article_boma = fighter.get_article_boma(*FIGHTER_LITTLEMAC_GENERATE_ARTICLE_THROWSWEAT); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x35 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL) { let article_boma = fighter.get_article_boma(*FIGHTER_GEKKOUGA_GENERATE_ARTICLE_MONSTERBALL); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x36 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE) { let article_boma = fighter.get_article_boma(*FIGHTER_PALUTENA_GENERATE_ARTICLE_GATE); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x37 => { - // ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, false, -1); - // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - // ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN, *WEAPON_PACMAN_BIGPACMAN_STATUS_KIND_ENTRY); - - // if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { - // let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); - // MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); - // } + if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN) { + let article_boma = fighter.get_article_boma(*FIGHTER_PACMAN_GENERATE_ARTICLE_BIGPACMAN); + MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); + } }, 0x46 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, false, -1); - fighter.clear_lua_stack(); - lua_args!(fighter, MA_MSC_CMD_ARTICLE_SET_OFFSET_ARTICLE, FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, 0, 0, -10); - sv_module_access::article(fighter.lua_state_agent); - // ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE) { let article_boma = fighter.get_article_boma(*FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x47 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL, Hash40::new("entry"), true, -1.0); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL) { let article_boma = fighter.get_article_boma(*FIGHTER_GAOGAEN_GENERATE_ARTICLE_MONSTERBALL); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, - 0x4B => { - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); - } - + 0x4B => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, - 0x4C => { - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, *WEAPON_POPO_CONDOR_STATUS_KIND_ENTRY); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR, Hash40::new("entry_r"), true, -1.0); - } - + 0x4C => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_POPO_GENERATE_ARTICLE_CONDOR) { let article_boma = fighter.get_article_boma(*FIGHTER_POPO_GENERATE_ARTICLE_CONDOR); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x56 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - if lr == -1.0 { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_l"), true, -1.0); - } - else { - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON, Hash40::new("entry_r"), true, -1.0); - } - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MASTER_GENERATE_ARTICLE_BATON) { let article_boma = fighter.get_article_boma(*FIGHTER_MASTER_GENERATE_ARTICLE_BATON); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x58 => { - ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, false, -1); - ArticleModule::set_visibility_whole(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, true, ArticleOperationTarget(*ARTICLE_OPE_TARGET_ALL)); - - ArticleModule::change_motion(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT, Hash40::new("entry_r"), true, -1.0); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT) { let article_boma = fighter.get_article_boma(*FIGHTER_PICKEL_GENERATE_ARTICLE_ENTRYOBJECT); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, 0x5A => { - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY); - if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER) { let article_boma = fighter.get_article_boma(*FIGHTER_EFLAME_GENERATE_ARTICLE_DIVER); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); } }, - 0x5B => { - ArticleModule::change_status_exist(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER, *WEAPON_ELEMENT_DIVER_STATUS_KIND_ENTRY); - + 0x5B => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER) { let article_boma = fighter.get_article_boma(*FIGHTER_ELIGHT_GENERATE_ARTICLE_DIVER); MotionModule::set_frame_sync_anim_cmd(article_boma, start_frame, false, false, false); @@ -672,6 +678,7 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV let lr = PostureModule::lr(fighter.module_accessor); let kind = fighter.global_table[FIGHTER_KIND].get_i32(); let cmd_cat2 = fighter.global_table[CMD_CAT2].get_i32(); + let frame = fighter.global_table[CURRENT_FRAME].get_i32(); let pos = PostureModule::pos(fighter.module_accessor); let pos_x = (*pos).x; let pos_y = (*pos).y; @@ -681,7 +688,7 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV return 1.into(); } - if [hash40("entry_l"), hash40("entry_r")].contains(&motion_kind) { + if fighter.is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { rebirth_motion_handler(fighter); } else { @@ -689,7 +696,15 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV } if !StatusModule::is_changing(fighter.module_accessor) - && WorkModule::is_flag(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_FLAG_ENABLE_STRANS) { + && WorkModule::is_flag(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_FLAG_ENABLE_STRANS) + && !fighter.is_motion_one_of(&[ + Hash40::new("appeal_hi_r"), + Hash40::new("appeal_hi_l"), + Hash40::new("appeal_s_r"), + Hash40::new("appeal_s_l"), + Hash40::new("appeal_lw_r"), + Hash40::new("appeal_lw_l") + ]) { if cmd_cat2 & *FIGHTER_PAD_CMD_CAT2_FLAG_APPEAL_HI != 0 { if lr >= 0.0 { MotionModule::change_motion(fighter.module_accessor, Hash40::new("appeal_hi_r"), 0.0, 1.0, false, 0.0, false, false); @@ -858,7 +873,7 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV 0x30 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE) { let article_boma = fighter.get_article_boma(*FIGHTER_MURABITO_GENERATE_ARTICLE_HOUSE); - PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z - 10.0}); } }, 0x32 => { @@ -910,7 +925,7 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV 0x46 => { if ArticleModule::is_exist(fighter.module_accessor, *FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE) { let article_boma = fighter.get_article_boma(*FIGHTER_SHIZUE_GENERATE_ARTICLE_OFFICE); - PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z}); + PostureModule::set_pos(article_boma, &Vector3f{x: pos_x, y: pos_y, z: pos_z - 10.0}); } }, 0x47 => { @@ -991,6 +1006,7 @@ unsafe extern "C" fn bind_address_call_status_end_Rebirth(fighter: &mut L2CFight fn nro_hook(info: &skyline::nro::NroInfo) { if info.name == "common" { skyline::install_hooks!( + sub_rebirth_uniq_process_init, sub_rebirth_common_pre, status_rebirth_main, bind_address_call_status_end_Rebirth From 5b3fa07f1229b7ca6688d86ca89e016831aea5dc Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Tue, 22 Apr 2025 13:18:48 -0400 Subject: [PATCH 12/19] fix gfx/sfx --- fighters/common/src/function_hooks/article.rs | 32 ++++++++++++++++ fighters/common/src/function_hooks/effect.rs | 38 +++++++++++++++++++ fighters/common/src/function_hooks/mod.rs | 2 + fighters/common/src/function_hooks/sound.rs | 17 ++++++++- .../common/src/general_statuses/rebirth.rs | 13 +++---- 5 files changed, 94 insertions(+), 8 deletions(-) create mode 100644 fighters/common/src/function_hooks/article.rs diff --git a/fighters/common/src/function_hooks/article.rs b/fighters/common/src/function_hooks/article.rs new file mode 100644 index 0000000000..6fbff9789e --- /dev/null +++ b/fighters/common/src/function_hooks/article.rs @@ -0,0 +1,32 @@ +use super::*; +use utils::ext::*; + + +#[skyline::hook(offset = 0x3d4180)] +unsafe fn article_module__generate_article(module: u64, article_kind: i32, arg3: bool, arg4: i32) { + let boma = *(module as *mut *mut BattleObjectModuleAccessor).add(1); + let status_module = *(boma as *const u64).add(0x8); + let is_respawn_entry = StatusModule::status_kind(boma) == *FIGHTER_STATUS_KIND_REBIRTH + && ((*boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) + || (*boma).status_frame() <= 1); + + // Set your status kind to ENTRY + // This allows entry anim articles to spawn properly during respawn + if is_respawn_entry { + *((status_module + 0x98) as *mut i32) = *FIGHTER_STATUS_KIND_ENTRY; // StatusModule::status_kind + } + + call_original!(module, article_kind, arg3, arg4); + + // Set your status kind back to REBIRTH after article generation + // to proceed with proper respawn behavior + if is_respawn_entry { + *((status_module + 0x98) as *mut i32) = *FIGHTER_STATUS_KIND_REBIRTH; // StatusModule::status_kind + } +} + +pub fn install() { + skyline::install_hooks!( + article_module__generate_article, + ); +} \ No newline at end of file diff --git a/fighters/common/src/function_hooks/effect.rs b/fighters/common/src/function_hooks/effect.rs index b4f0f2f43e..76b1f13e48 100644 --- a/fighters/common/src/function_hooks/effect.rs +++ b/fighters/common/src/function_hooks/effect.rs @@ -243,6 +243,19 @@ unsafe fn req_hook(effect_module: u64, effHash: smash::phx::Hash40, pos: *mut Ve let boma = *(effect_module as *mut *mut BattleObjectModuleAccessor).add(1); let mut eff_size = size; let mut new_eff_hash = effHash; + + let fighter_boma = if (*boma).is_weapon() { + (*boma).get_owner_boma() + } else { + boma + }; + + if (*fighter_boma).is_status(*FIGHTER_STATUS_KIND_REBIRTH) + && (*fighter_boma).status_frame() == 0 + && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + return 0; + } + if SHOCKWAVE_FX.contains(&effHash.hash) { let mut effect_size_mul = if effHash.hash == hash40("sys_nopassive") { 0.5 @@ -273,6 +286,19 @@ unsafe fn req_on_joint_hook(effect_module: u64, effHash: smash::phx::Hash40, bon let boma = *(effect_module as *mut *mut BattleObjectModuleAccessor).add(1); let mut eff_size = size; let mut new_eff_hash = effHash; + + let fighter_boma = if (*boma).is_weapon() { + (*boma).get_owner_boma() + } else { + boma + }; + + if (*fighter_boma).is_status(*FIGHTER_STATUS_KIND_REBIRTH) + && (*fighter_boma).status_frame() == 0 + && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + return 0; + } + if SHOCKWAVE_FX.contains(&effHash.hash) { let mut effect_size_mul = if effHash.hash == hash40("sys_nopassive") { 0.5 @@ -313,6 +339,18 @@ unsafe fn req_follow(effect_module: u64, effHash: smash::phx::Hash40, boneHash: let mut eff_size = size; let mut new_eff_hash = effHash; + let fighter_boma = if (*boma).is_weapon() { + (*boma).get_owner_boma() + } else { + boma + }; + + if (*fighter_boma).is_status(*FIGHTER_STATUS_KIND_REBIRTH) + && (*fighter_boma).status_frame() == 0 + && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + return 0; + } + // Shrink knockback smoke effect by 25% let mut is_kb_smoke = false; if effHash.hash == hash40("sys_flyroll_smoke") as u64 { // hash for kb smoke diff --git a/fighters/common/src/function_hooks/mod.rs b/fighters/common/src/function_hooks/mod.rs index e98fd32a9d..483f3b1836 100644 --- a/fighters/common/src/function_hooks/mod.rs +++ b/fighters/common/src/function_hooks/mod.rs @@ -22,6 +22,7 @@ pub mod collision; pub mod camera; pub mod shotos; pub mod sound; +pub mod article; mod lua_bind_hook; mod fighterspecializer; mod fighter_util; @@ -823,6 +824,7 @@ pub fn install() { camera::install(); shotos::install(); sound::install(); + article::install(); lua_bind_hook::install(); fighterspecializer::install(); fighter_util::install(); diff --git a/fighters/common/src/function_hooks/sound.rs b/fighters/common/src/function_hooks/sound.rs index bc0f27e18d..ccf95dff1c 100644 --- a/fighters/common/src/function_hooks/sound.rs +++ b/fighters/common/src/function_hooks/sound.rs @@ -4,13 +4,28 @@ use utils::*; #[skyline::hook(offset = 0x4cf6c0)] unsafe fn soundmodule__play_se_hook(sound_module: u64, se: smash::phx::Hash40, arg2: bool, arg3: bool, arg4: bool, arg5: bool, se_type: smash::app::enSEType) -> u64 { - let handle = original!()(sound_module, se, arg2, arg3, arg4, arg5, se_type); let boma = *(sound_module as *mut *mut BattleObjectModuleAccessor).add(1); + + let fighter_boma = if (*boma).is_weapon() { + (*boma).get_owner_boma() + } else { + boma + }; + + if (*fighter_boma).is_status(*FIGHTER_STATUS_KIND_REBIRTH) + && (*fighter_boma).status_frame() == 0 + && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + return 0; + } + + let handle = original!()(sound_module, se, arg2, arg3, arg4, arg5, se_type); + if se_type.0 == 0 && !utils::se::SE_LIST.contains(&se.hash) { // Increase volume of most of the game's SFX (excluding voice clips) SoundModule::set_se_vol(boma, handle as i32, 1.25, 0); } + handle } diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index d6a8495c8c..371e06eba5 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -7,9 +7,6 @@ unsafe extern "C" fn sub_rebirth_uniq_process_init(fighter: &mut L2CFighterCommo let lr = PostureModule::lr(fighter.module_accessor); let kind = fighter.global_table[FIGHTER_KIND].get_i32(); - let status_module = *(fighter.module_accessor as *const BattleObjectModuleAccessor as *const u64).add(0x8); - *((status_module + 0x98) as *mut i32) = *FIGHTER_STATUS_KIND_ENTRY; // StatusModule::status_kind - match kind { 0x0 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, false, -1); @@ -327,8 +324,6 @@ unsafe extern "C" fn sub_rebirth_uniq_process_init(fighter: &mut L2CFighterCommo _ => {} } - *((status_module + 0x98) as *mut i32) = *FIGHTER_STATUS_KIND_REBIRTH; // StatusModule::status_kind - original!()(fighter) } @@ -384,19 +379,23 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0x2A => { end_frame - 80.0 }, + 0x30 => { + 54.0 + }, 0x32 => { end_frame - 75.0 }, 0x33 => { 0.0 }, + 0x46 => { + 54.0 + }, _ => { (end_frame - 85.0).max(0.0) } }; - let costume = WorkModule::get_int(fighter.module_accessor, *FIGHTER_INSTANCE_WORK_ID_INT_COLOR); - if [*FIGHTER_KIND_PZENIGAME, *FIGHTER_KIND_PFUSHIGISOU, *FIGHTER_KIND_PLIZARDON].contains(&kind) From ba0407e8cd0cbc86415437651846fa53804fffbf Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Tue, 22 Apr 2025 21:24:18 -0400 Subject: [PATCH 13/19] further fixes --- dynamic/src/consts.rs | 2 + fighters/common/src/function_hooks/effect.rs | 39 ++++++------------- fighters/common/src/function_hooks/sound.rs | 3 +- .../common/src/general_statuses/rebirth.rs | 4 ++ 4 files changed, 20 insertions(+), 28 deletions(-) diff --git a/dynamic/src/consts.rs b/dynamic/src/consts.rs index d8a0a9c4ee..eda1c2f6e7 100644 --- a/dynamic/src/consts.rs +++ b/dynamic/src/consts.rs @@ -320,6 +320,8 @@ pub mod vars { pub const IS_DASH_CANCEL: i32 = 0x1055; + pub const IGNORE_INITIAL_SOUND: i32 = 0x1000; + // ints pub const DOWN_STAND_FB_KIND: i32 = 0x1000; diff --git a/fighters/common/src/function_hooks/effect.rs b/fighters/common/src/function_hooks/effect.rs index 76b1f13e48..ac5b095502 100644 --- a/fighters/common/src/function_hooks/effect.rs +++ b/fighters/common/src/function_hooks/effect.rs @@ -244,15 +244,10 @@ unsafe fn req_hook(effect_module: u64, effHash: smash::phx::Hash40, pos: *mut Ve let mut eff_size = size; let mut new_eff_hash = effHash; - let fighter_boma = if (*boma).is_weapon() { - (*boma).get_owner_boma() - } else { - boma - }; - - if (*fighter_boma).is_status(*FIGHTER_STATUS_KIND_REBIRTH) - && (*fighter_boma).status_frame() == 0 - && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + if (*boma).is_weapon() + && (*boma).get_owner_boma().is_status(*FIGHTER_STATUS_KIND_REBIRTH) + && (*boma).get_owner_boma().status_frame() == 0 + && (*boma).get_owner_boma().is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { return 0; } @@ -287,15 +282,10 @@ unsafe fn req_on_joint_hook(effect_module: u64, effHash: smash::phx::Hash40, bon let mut eff_size = size; let mut new_eff_hash = effHash; - let fighter_boma = if (*boma).is_weapon() { - (*boma).get_owner_boma() - } else { - boma - }; - - if (*fighter_boma).is_status(*FIGHTER_STATUS_KIND_REBIRTH) - && (*fighter_boma).status_frame() == 0 - && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + if (*boma).is_weapon() + && (*boma).get_owner_boma().is_status(*FIGHTER_STATUS_KIND_REBIRTH) + && (*boma).get_owner_boma().status_frame() == 0 + && (*boma).get_owner_boma().is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { return 0; } @@ -339,15 +329,10 @@ unsafe fn req_follow(effect_module: u64, effHash: smash::phx::Hash40, boneHash: let mut eff_size = size; let mut new_eff_hash = effHash; - let fighter_boma = if (*boma).is_weapon() { - (*boma).get_owner_boma() - } else { - boma - }; - - if (*fighter_boma).is_status(*FIGHTER_STATUS_KIND_REBIRTH) - && (*fighter_boma).status_frame() == 0 - && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + if (*boma).is_weapon() + && (*boma).get_owner_boma().is_status(*FIGHTER_STATUS_KIND_REBIRTH) + && (*boma).get_owner_boma().status_frame() == 0 + && (*boma).get_owner_boma().is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { return 0; } diff --git a/fighters/common/src/function_hooks/sound.rs b/fighters/common/src/function_hooks/sound.rs index ccf95dff1c..7a72b21c49 100644 --- a/fighters/common/src/function_hooks/sound.rs +++ b/fighters/common/src/function_hooks/sound.rs @@ -14,7 +14,8 @@ unsafe fn soundmodule__play_se_hook(sound_module: u64, se: smash::phx::Hash40, a if (*fighter_boma).is_status(*FIGHTER_STATUS_KIND_REBIRTH) && (*fighter_boma).status_frame() == 0 - && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + && (*fighter_boma).is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) + && VarModule::is_flag((*fighter_boma).object(), vars::common::status::IGNORE_INITIAL_SOUND) { return 0; } diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 371e06eba5..dcb1aa3777 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -396,6 +396,10 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }; + if start_frame > 35.0 { + VarModule::on_flag(fighter.battle_object, vars::common::status::IGNORE_INITIAL_SOUND); + } + if [*FIGHTER_KIND_PZENIGAME, *FIGHTER_KIND_PFUSHIGISOU, *FIGHTER_KIND_PLIZARDON].contains(&kind) From 2691f3546a1c2df16888d1a165a2a987cbedc008 Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Tue, 22 Apr 2025 21:36:08 -0400 Subject: [PATCH 14/19] db --- romfs/source/ui/param/database/ui_bgm_db.prc | Bin 733761 -> 0 bytes .../source/ui/param/database/ui_bgm_db.prcxml | 24596 ++++++++++++++++ .../ui/param/database/ui_gametitle_db.prc | Bin 34508 -> 0 bytes .../ui/param/database/ui_gametitle_db.prcxml | 581 + 4 files changed, 25177 insertions(+) delete mode 100644 romfs/source/ui/param/database/ui_bgm_db.prc create mode 100644 romfs/source/ui/param/database/ui_bgm_db.prcxml delete mode 100644 romfs/source/ui/param/database/ui_gametitle_db.prc create mode 100644 romfs/source/ui/param/database/ui_gametitle_db.prcxml diff --git a/romfs/source/ui/param/database/ui_bgm_db.prc b/romfs/source/ui/param/database/ui_bgm_db.prc deleted file mode 100644 index cc8424020ef498995abaafb49413d4daf17b53ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 733761 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

<7h)?-&?R}k)y5EX3Z*-W_byh{}uj99I{J z$8HRi$IHEKBnvTU7HW#1O%;j+YTzlNvQ-F2B^tdNfmR&;oy(XhrPwit1=$)E3ADOE zptdTsvT}WJxW3-ZAZ3>PRb1L~Y2m3Jkllqpp0?SL#H6C4?F*wUj@oO~%H(fVoF@4( zdJXcPH+*VV6KASp-Buw!HHM`?XFuztBEqozxUmLD?>^>q(>;cd3Y%qodG*D zyETjr8~M2)VF%sZQY%a70bDdxVxKbyLdy7!19@HEVTGPdIz`1$9i1cou|iXm8OP4T zZOY5u9HzB`K#5kQ{DNtTAOgaYX~T~LOGAk6GX~8C6<$>p=kCn+*)XJ1j1eX&%OSX! z&Nww%Y5hkV{#lwuekjcneL#g-IM@h``J3EAd2Ll9ryV|YBZN8}@nvPXS2wh|QX9wp zlM!HodWlSXfc=h?HJGi5p9CQua>gv{uxUfhC}^;Gn3F(y>mj)o#)R2me1M6HiYaQ) z$7W1Iayg?5AaRw=oI6z^9er&e}Tv&cdN@HlnZb>m`=QNzf9|LcWQJTd*PC-1lMA+G6Ts78Ojw_Ah#54%9 zIg@!FrGP35xgk-MLgHX&WbxwIbJusKzs~E^iuHCGg##EtId+@F={R=V`M^Nh+KBDF_CON< zL?X_Ej|#EI9IMWrSW_`9hravZA!z29I^@@N#4m3u=g@1bteRZK9(_2sL@T4Idj+gm z$dZ&~xu7KCSc`PnSiQ(N9l0xvUfHo+9c{$r0DA47Rh=?ffQGGNdQRA}vNoxL*@>#m zn^a((pu!q@I*%vkx|TnurkgDmvyL|z51TRa>(K;>B5{BePMr^_)>@exZ;5^$T z>O*LjjoQ{gKGtC`4q3eg|%!Np)aV=d8+cj~x2 zC-sfKR&3?i^6!fF9Bf0&A4MHF_3lgLDp(|C9_@3%iJ z;Ea}5Mv6O}SQ0yG@=g;pr%)$qI5gCZLj&`u>khmqx58i;#h9BZm!%mT6Ma-^!%8uo z1(^qdKZaJK<1Qm7QpXJ_0dQ>gSV8<}PetA+9uKL2I1U=5p%*(OWW==C!Jk*IN~Kxi zk!}dB0Y5h?EOapu6G50tyf>8Xe7GiMg?WST%mkC+>gb24FgU-GecLI3fTPV)RD=4d z2A8gK3MWZp1IJP}S-;>&ePhB=oZKZ8hf(3S%0C_YUnt0Cn2#uqiwk=+QgaKdIf*YN z7I(0_w%C7#fx5wKkq$0yt0DTu9}UU**OIE)TOjkg9R(o#GL)>Zu-|^W=EEZ z-3WwIo!m!MCt^(#Lz(+zvCSFNX;n#V9e0p6eo)moyMfcInDb^c0_O!EZDRrm3Dz={ zdF{8RI>$Iry@h{7i9_Af8OhloFUgi_d$?@Mt{RqiBzh0fWtDAT9W$Hn4xl+O{#fAj zEhQkEl0r*5PnAtb-&949AT!4;55S8EAnr>IDQ8L|sXtL0}ilu@4j_ zV7I}L9eoG#oP_C(J&n1+V?_kGQrbh}LI-#%eMeP#uP^@P3ffZu4yFHT}EHYiQa)=Z#$*K&-?!dfJ4-Gcq*ZPSe+f-nuT=*?- zVxWr$T^J>X8luw-3xR2?Mvdvn3?;||Uv8)Ys|@NcCP=d{Yz-qUH7XgikO)SHS30+h zUCquW^d!v zD%w3}b~xDGlHy}4O~g0yz$s%h`mt|IMx-FSVN6Cg;3>jrX3T&#$0(r@P_lm^=Am1v zK?+~+=~71+Rvl=dj7^TjxOudQ*zF)dYcefp5Lj7;Ysi&&#*y2P)G?xI@O(R<1d|oT zgl~Mgy;a|BIosR>MmR@ZGUJ7<)s!3IHibGkbvGBQ%5oJH0AvN_P79dVK1iAo<`LGJ zy_$!aA8G8P^VpOrAbiu0`haj>R!w;fMr1Gch=b=WITHl~BR_>17)@COVVz2w;{_-S zF-sTH(wyN17*oOfajYN+ivGAtgkx z)w+gk>ozY$4UFol!8V{C zTSt_i4z-CatwGsE+Yg>1c#7*799z}2p{KB|hxgFFY#xkZT_s3=!y+JRYmPc*-R^t+ zg_##~Q6kPL11uG>qMJu6S?ri#f*gZmQpr5%<|;yy9VN69^A1%Og(IB(iEfgYnHHUX z!47WJOx6+_!Ia*D>#%j#m`pMCaY$^Ir)_1nP(u)~RV%24OQl5=hvcGRj#2v4kXR=b zl&sfhZ6%>45!tA&>zfshBt0DL2a-U+L<_dx&w8t{@a~3KK;SUYo^o)jbu$}d5&@2Q zQNjWH3mUu6+7FGvEt!pa=on3qEiL%5@)EqUFo&vnmy^VKC(-d7%m6Nw6Um95BGBle zh9(Fw?BaFMhAEbxf%(DMg`E{ckv`>hlW^DkW=#}y2g^GtYRQ#F-BFhRjj$l%t>kmT z(ZsXOu0T`3@LrzACJ@dOQy<*p&^-^ACm&anldzu~CSi-cV(5=w`Tl9JxAE!#!*dIBlF{914%10ka?060G!Az383rJ5$k}+@#aNVvX`8;sp?j(6Pu=f#3vI*P@T)!ttz5vWVGD+S8>`Rm6 z6~Jx44UbBaF9P#>ljOa?iH}Z_N1sJwzehtnZ`X|Z8?M9GaAAKkf77>9iN=rm`HPvY zKgHHc$*vQUUHr8luEW=G5q>Qt>4((XH*&3g&RqY4zjN%?c!6E!^|-Lt;cK|CKbgPj z2Or|ywtMaPZoI&5^FH>ixDH>#h5gC=O@H|zT08c;@dA%9ug8VGX57NHy~zDdf8!xq zYdrE;c;f~3nD?=7#WmCruI)wcZ~DoHXzj7*9;-E8?2+d6xR|)+CGE}J-}EzTEl(vg zB|Uz-R|?HWyzw%rc|9&BuIYunnfsf*O|7kZ3gr5I=DM4^!_DF+w#FkFI{wv(I0IJH?Ci15>p|Q?$Te`+1DN2zQDX=^sqh z8copxf9>Z)e-Z8!FVYWB)f!FF0)Or2vHl|5DPE+%KUHfqMGO43pOgGWxKq4H|5UB* z@Dr(orf7k`_VYM@5$+T((mzpa4|{gg6fN-Aeopom;ZE@))mp#Jd^^q=KvT59U;AN3 zhwJSw(mz&f`MF#%eDcT4-=mCh97&pj`|{U*9`7&0o#I9MD{AfAxo2B`e4OvbqnH6EY;JfZkC|C6~+KRx+wJ8F%`=Rb^U{_B?O^i|@@`PIy} z_Q~AXQlR*Wcsn)OwUbZ!o~cIiiOH^=e9}LgsHyMgPBl38b^4L1T0<#7n$4*O$G%QKI#p{Z1&Fda)!^9I>BpvOjbWsz zoN93F>-6JOwKkzF-UXy|Xbju}TnA76Ja8d)mUjbt_hF|2ZUwG?40ak|_C#1N z5SakH6b5(P95sEs^uqinFCXOZ=dNRGGzC*TZjPEhVY0OgjwO58e#O>k3etTjE*c7? zPn@bXnu2tXpPfEws@7-6y$s@95TmS~VU%Kh}Gr)q6GW6Lp2G3okLtrg8I(I9h_`|0bZYHf?9 zrC^rX@@pz7DJ&(r*wKo!#nMtR%WU~Iee6`NZLzdGgdOJKRITmA2!q8Y-9J@pJ2Apw zu}PmYRckvj!eFsUpEp%&J2Apwu}PmXRckvj!eFsUe{`zWo}BF3$tQi$RIQzn?ApmE zeaTd<{ZO)NC!h4?Q?+(xvTG-wv^7<0Pf2#|@D5-%Mt}kEec&350G|QQ#|ZFFU=K!s z5%2@x+Q(v404_KQqXLjV4x<8a3vk`Z7!`mEACFN1*n0{_1>jcT`X^vi0A^3k8x$s# zd-UOOCx7j4rswjeyPuz1yRBmSyxbiM6hBc_oKW%6hl9GGzxFrNSE;qv<(~Iyb8Y_? z8wqX3)_4J)%3u3IE8h0n-%Q^O#vXoaG(`*iwI8(NZLj^!^et1hMpKMZQ1sD?x4rf^ z(=ODv`%iNtX$?W2%iY;Bo^d26RD87Ja3_E5Z>GzbhQEhTB@-$>+Hbg%zxFrNXHC`Ggo=;$8}8(<{mt}> zsal&*<4j6ZHlgC96^A>t9IpLE zdWl+l*qm!Z#YZa+cW60W`-}9Vsorfu#YZa+cW60W`-}A8RIN>@_-Mu94lRdkf016S z)^_-boNGeGM%8Bnbq2HqtPuwYf zO<%lyYp*`m@W$3A^m|m|i95xwX>+R9CiHt$;)y%Oujx-t)!Kx9f7U~2{OS5stxf3n zPfd1B+$nxdUour|yiEQB9p=AoxlR?GQwZ++oS_f+}Uv zy&I3ue`bnb^FNvEw650jGLL;L`**t+<89-+JuTU_lTUiHTHE0#wsuakYbT#{WvbSm zp6uGmCw=Kucsn=QwUbX;nX0vCB)fLtYp_tKIu!;+9UG;CH6XhXYvi>yIqj%nooA| z*M5$6?F*zYRcjBMN}iqUT1a;B*M5$6?F*zYo2s=7O*{OxAD+7HwZEDElv;b(R<-@+ z@%*(Pp1SR|znQ*#s@7%=#`tSL;Ah)we>1I2)!LkS8UET2@38H)znRviY7HXfN&K~+ zqh0#~X=AF^AVNlozxH#qYhNI3P1RbmgD5pvWcu^6fFl_bfNMWL^Z0ljZWb^0V(Ct< z1wIR0fO-C1K#FO84BP@-hk5?%zt>#@RgRswZBMTr+3Sb+m5J&N9I2mq{G+z zwZEDE()M^e&UfRH`40x^@HKz!Z>GPl*4~xd*1My3wp-?i4?926%gSw1$T} z`*J37e>45f?WyEATjP;O`!K3oeoB9P`_}SfTYRy??0(EPw(qUh@Ng%6*Y>UD$MzVl zow$wdd#g1(+)00Js@5L6jqQ7@H9Xu&e|M_ZPTI!yz112X?xeprRcnvi#`e9{8XoSX zADXJQor)e+Cwc@@upBz@>2MJWAW2Z?;qQoIY8-bb)4xKfDa`gy&yY;8Nt7KS=6TJU0s z4PH)p$cyxECR^LlNYWHygO^ht@*@4)sam5c#0D>?Jmf|CcT=@SQ-}>-PI<_S^zWx? zji#V|FQ+`@MXC)y1tK`+;xst}yo3_vmt)>Z|6#JV9Z`vwP`1h}+uljPKiS%G@RGfE zGRqWHG*3X$`+-vlCVC@qKhPnd=zGAm1QmS&SbSoVd;mD@v?O^G@Bq+z5nwm+nuJj{)bf3-%pAI>#nh;0|DAK1sd~T(&@v z7;x?)L0iDy18jx`?gYw9N%9Tg@`D760p~5FtpfX=lO(SK?gFY8CCN8|E1pZx7;yf@ zXsy7BKb$150qzFsmn6xzfGeLz@ECBxrD(6fNzYG`*8=wd&C3W{1Fm`jL1e&%m$Nw+ zIQd7CG@U*MO^k6zv(9y)sGO2b}U_N%98ZK49%Cg4lp-UI_ky`K!S{aO#hP zf8c(ga}D?hu6+^s2NqGsKLDKe6W||s0O(x@{(%l*8`cHy?;6dQf4d5TR z{w3faSiTYb182Mx`~#(%z&~&caKp>MKXB2_;2${ir@%jO!V35YZUt_9Irs-IE`xvI ztP1!Cc2~haa2s$_4g3R_)WJV+b_4tadz#=MxE;8;1^$6c+u$EKXBGSd=^FS4?f_QS z!9Q?W2mAx)cELZew+H@#I{^-XO1=SHehB;n=Vjm@*f#+Gz+FIf2>yX9M&KVf|1kIm zP8@@O;BKJ40set2H^Dz}!4dEeob(Ft58MMZe;WJ)SG^Ma0~h`q@DH5)D)0~73$$Mi z{(-As1O9>8p8@~CDX#_pz%c#7&FjHGF#m7CKXB?Bz&~(5(D_;L4_y03@DD8h z9QX%LdlUEv9sqhj5B`Dc-VFYMrGE$hfz#gt{(%R9L%#t2f$QH2{(6gGia0_t5+rd9@(Z2`(z?ts=|G){q4E}*zfg9fm{(*~s1^feNy$k#UyMGn@1GfP; zy&L=km;4&|2hM&E_y_j35G#1ua1YS@IQR#y`UCI}T=)s_51jl-@DJPzv_A#@ zfvf)$_y=Y`4gP^s{t)~F_W^640sp`?e+2%4`OkuX;MC87f8c(g^Lg+OT>Ho1A6WbX z_y3;_Pfd_#@Uk3lc^?wfjf#t7&f8dP20RKSg ztKc8F1-Ria!9Q@(*T6q;=3jw-;DoP(f8bW&#=i#tz{TGH|G-&)1O9>C-vs}_ZNN=` z3;uyiz6Jh)v;PkK1AD#={(;+poBtmC1DAdW`~&Cw1NaBh?}C5e4q)XU!9Q@>_rO1J z?tcdVz~1kJf8b7_{7>K?xcmp;A2{#7fPY}$E#M!x3#k5A@DE&ZEBFV_|7Y+IoOm1f z2kr*y{|)>DSKbc(feZdS_y z>bt=|F#Es2KXA%D;2*dTSo`1LAGqdT@DI%YAMg*HdLQ@)?gu*m7yJX)-VgqP#eW6= zz-bSFf8YV2_y52@aNUF8A6QCC$p?YcOQqz^z=Ob{nNsot;Ci-Qe+gJdX8RCu#_m$` z7NGQqQZfK;0dCk+O1=zS^vF{3Vc^WPl)M!<;Zdbz1l$VTxVMyi1-SUprQ{>PS^G-K z+koAVDJ5gzHsGccOUYM(OCDQFJ_?+DQYm>mu;+25WD~d@xcTH#@-^Vn$Cr|i0q2}j zO5OpaPbej?0PX-*PAw&02QGVJDfu{X?rEjuoxt8Fm6BHicLL?pOUXBY%b#3IJ^`F} zMk#q0uTplzadhgJ_;T+yzu$0{($3ZUq0p`7Z_k zz==13f8cJQ{xa|nTzND22QK(2@DH4{0{($}fac4=KX6qU`~w$Oz&~(u75oGD0___3 z2d=Jze_*x&{()1P;2*dTSZjfQ;F>o02j*A7KXB?A_y_I>I_uycxV8iSfyFNP2TtpO zf8YV2*9ZT=b%($|u#|y+;Pe6b2Ob0t4Z%Nf{RsR6%ZI@~aK;$?1Eme{58MLWunGQw zi;jSQ;LKNmf8d0l2LHgVz>Tj2|G>rn2K)nOy$bvTyI&3df!lzaUIYGtOMV9Y182V$ z`~!Pl2mXQEftz0s{((#XE%*n{c?0+d(w_zYz#YKK8^J$t+0TK0;M_NXe_-#=gMZ*o zp!{a=4_yB5z&~)_TfjfC?-#&7a2HU0EBFVl_(kv!oc}iP51jZ*;2*dfsJ|Wj16Tfg z@DE(@4)710^vmEMxCdyy6Z`{L{R;R8E_@gG2TuM~@DJPzwBHT>fvbNF`~$P^0sp`$ zzYhL^`+&9gf`8ze-vIx>{QJN^aO!V@f8c(g^M3FTT>D$#A6WbV_ywg#g1Ir%)|G*i)2mXQ5N5MaE3vk1K1pmNA z9|QlunZFPIffGIs{()P88~*_O0~db+`~zow68r%itfl3#k4%_y?}|3it=k{|oRBocLAn58MsZ{}TKISAGrr z0~h=i_y$zXkum)!zdD!0g|Ff8dmF zgMZ*YVD0b0KXA==z&|km58xj-^}FC7xF6{JBlrid{T}!S7XLH&2TuDw_y-;UdjACe zf$M$%{(+_c0{(&1Zvp?ngTSHx3jTrXZw3Fr@;`%r;EdbAKT!H_;2*dJxZ!s24_x%$ z!9Q^39pE20;eUXC;8x(qJHbD2@&5$>z*%>Je_;2&fPdgN;HJC5KXA$a0{_6-_ke$3 z&;JJh!0o`z_kw@m(*FbgfphKy|3LbG!9Q>ZuyQ~62QK?p@DH5(0Qd*?{y*>!+zFH) z1pmP0$xQMI;Jnfd-s+iT-^@(%D&Q`ldcsWdP2dWwr=J4O-#tSH-d`aFXMhX$%_Q#yPJYZx@_OK2 zpnc*@@*Uvn$Ih^sY$lmKX(o9eaLVImk~aYN0c$7EB;N(DdHhWBd0_sOndJSzsZW?m z-U!?ebWWW~z6V_U#F^v^z~X5$$p?Vbo-~uZ33veLoj#L%AGq$xGszc$r88!d4+5wE z&`k1X;6dQfnKQ``fa{+!lY9wSK5HiV5OBs*XOg!7C3fBofLnkYo;H(w8Mx@2ndHO3 znNOcd-U^&>?o2WQZUt_9#!T`R;NtUUl8*pqJ#!{`8?gKQnPd#y2Hf0hoHI9*yaPz*XOdR{cK|C3Gs)M1%NA#n zj|1l(m`UCV>|L5kUJ2X@ln>4%-vBOO2LHf$&jJ6yzKg&=a2HU0F8BwoxETBc=l?MH z2Tr^M`~!Cb_2+?q;L1zEKXAeG!9Q@)W#AvU2WY+k`~z2A4*r2hpOGZVCudMv9>GN^ zd6ZnWyB>rZnKLGLG#7h*pWhzwApfP0G^I)RIv#^tmKG$J{V2K24WN`gH!mgn2wIQms_l(&F!^#TV{!EuL!{ zuq~n;7Fv8puEl**wD?iAsJA!ocwVkWy=eX&pP6g%F;leo2WpYIVOu;u*CJYIp~Yv} z7BAo*?LFroi`1jzar;sIv|2pDxA<&5)#35GdSnid7wR{%6Y!6A^7GHbYw>exahGp# zR!?;;qJWBVqQyT~i;wUvF6CN8 zBQLz;LEGZ8T71S7Eq+Zc?(r=?C)Xl&gF=fJ*%qIx7H^oM#lKOD|8#<*)r)g2VtpvI z_`|lvOVr}?r)crpYVnc&9iOMCI?BQRk)+QzHz4yQy;PS;dKv!^CjIa!=O5K#>RWt) zX~6OvEG>l=FVD4j?i4NlKrKE>Ehg~QAF(Yys{~)YtVLM@);TYPD*#lN3u z@h01%S*^&a!?%aGTJ2SfkMk|QOiy(@XZHjiZ?-M|6#wixFhz@xRf{M47FTjD!fOko z`f}T1SuHM3(c&p;(MgY`v|^sRhrdPXkshU0^IK|KoJM*qwpcqxi}nAXT6}`u@$vs3 zZFd1^Rk7{?d~aC90+bSvP#VQR6j4$U5CI!dK)SoTTe^`}6azs-K|)eQFi0uslI{lS zH~;z0$NARWbN55OecwB0&w+#McmFf9X3c7@)%sX!OgkoVYPA804Nc*dQq*cjh-p}C zB*a9H*qFp75MNb@!CGx+Oc^AvBm#HY#Bjp6(unX+A%G+V{0rmrss@y z+OZ9ZZB5}dQnX`Ei0N2tC&cj(#Yo`{;s*1x9LYP8Xh-to z3K19Zo85>Qv9l02J7O0SyPCpmZ0>&~e;#567P|@Yh$D6<(e4FgQHTX0W@NF45DzNghmbhb6kauj zSP^1Y&Nz%jyBBaYAcp+mB#wYsT_IM5n2p7eLOkn;qevVLv64cp1u;8|V}zK{8CO3d z(az;wREYH<=3sHG5EDD%I1BCX@KFDZDon8F9a_xgR-3{6vU1%+GTBIEBPdP2rVLh@Bxm&f;fSYD~tP z=4UBR#qUD?r>5{qD#RWTbF=t4mKr0Db!zns62F94Um^B|_ymhz32}lWP9xEdbA))u5q}_Y zt|`pTviCoGoCfh(7Uv1k9B&M?<9s3JQ;0JmKF8t$A;xpWABFh5LYxgTABzixc+31O z`|2VgKBExlL(I?OVj=oY#w8>!HHBAMAufjaJVcBD%Sf~%K+=F1_J1OAImChraXG{n zIOESG+L=|dfEe;u2(getTm=!=EbLM*Hh z_duiEwTkoh?_W7z+T#1~9qcB-S5ahqLg+!?nEQIj!v>~Ti~aVLqk9W~-H)aqeA z|F{cFjTr%uH?~$o{%#WO`uLEdR!>75VYa^ZdVoDb%<7Efdr9193hxz#cmd)_7WWG= ziz6NoVljny72+s}=&Lx|zk21JbBrdDIc#P%;x=l=01iFh!IH->BV1c`Rm@rYBa z*j^gg_SK?_T1^4*BNk5y5!(^DKAtAgjsQs&Vwym$o*~hEh7wv))GCfBnT-Ep%!#`l zGX%tQ5ybOR5;H>_%j@F>679AlQ=lEg{zVdPI~GyYY7U5#xE(K%XnPLY&A(#*!p=Id zcV}v~h$+1H6=H6P-?NDQVjjs+!&1cYRwI^xm{TF=(0$kz0zGF&oj&SIrwm z%%ARW){zh592Rk$ibZTIrHCU+ET&b61t9*wBKF`|#I{n3w}oil2xI5q~xr zvCHMvQi$~+mgZW0h(z0t*w2W~81~bUXlKZ&6=GwEWjJG6679AFdaM}o(RWQotTf(h z3b6&mvYatJi8doL#fo7+gAhwA#I_J$=ZqOiv>A~%Rt)*rLUYD43K0*u^WJ3<^Ed9R z$SXz6UyX>Vx>rsic86GwYc&grwpLM#v0~WAo)3%V6=ENV@WuqC))M z5nm$lWm9p{c}xfqFd%$W_bxaqKVS2ygxBE$s>aV5kCEEX5y0!J)CVo6hY zOBLcD5F2u>zDlCqb}VsfwG@f3L0q8_*F$W?Vre1%?1*JZEDP~Bg}51FV-{Z*BHjQe z$DB7vd=ugy3UNEcCM>=s#Fc?|w0F*94)6}d)e3PB#HJ9@SKk%l?~YgwzYF>0A+A@5 ze?x4>87m0!H%EL=i0c$09#rf#XYqX@E_B+lB8inu;r*l#PeE+KVr3ytcf=1!wBzdc z3h_KdJpaSCV-*tZm@_X>t6{$?iPcQuEmnwEAhza=)k(A?z|w#i@@tS-6XGul@dm^; zEY=d@Vn?h^qHV{Y6=Eo%5!4S|wc3b8yX{z}5R*gfz+z(|u5iRABsMjL_q#%T2x3PTn+b81BQ__|j;m`F zVtR<3SZpE0)sEPb#8#&8{#1yMLhQ_9Ya#yXh;2x;Bl%i|m>psl7TXH(Cx};go)hxh zk!VMNRSNNOh+SE1FT`)1j2%d{=BPu_TT&h1W_U zHiB4^#qmO{>WCAB*j6DnhxjUs6NT8+5hsyo+p(`gYy+_ri<5=e%n?5(5r=X_!-0j3b7l+GAvFNVl_wnoJ8Am+9|}|5X-Xog%H~~wfZHA zUzx%itPuM{d>ta@InzkA>to%381}y=(e|9K3ULU;H&~o5#43(BgG5`aZ4@HjlxhXOKet z6yiH9&K6=@N1Q|A52o;jD8w%zz6%k3buNjvuQmvXVSgTpwpM#6#2FCFu{fVZ+jHtc z6x+uILhPmxzk@iJ=W;&^u{y*nv7_8V5*L}mYp)RJLY&9qVj(tn#3dx!k^Do2xDeue z7MBXKh9fQ`(Y9j;g}4mj0v3M~Vq-^KPU6p|@Ompmyd2FOo{1TARtT|)BmP37&DcjF z{thuQ&#YFGXxENL5Q}rq3Hz&r*h?XhzB5wQEsCUzf_1vAimGyCLtbjGHw>)*9!3@#EL9#5#nJ-+$zNB3h^Ao zN)WNN`in%nJ{}2(VSk$tXDGzW5G!-W?IPpRfEe<32=N<*cpYLD7IzBqm?Q2I;!K5j z2Vym@)!ii8T0IdE!~Px;_nN|+r4Y>xFu3_XW_{d8qFo=4LlkSrej$FV5PgU>SUe!a zlYxvO|8F6Frw|{6Sd+zrLd+UJnDG#ahfU!PRg9~tA=YB?h!Ar+;!z=vREQ5ltj*#v zAwJ=V$4NY43U91Jd<0@07EcQCDMvg-;%SKE6=F7sby++k#5|68R)`Z7;$sl&v3O31 z&p6_F5-*s-o1_q*f>@u$i$Z+X5igN=8REwZ5ihy*8nAdphP>97GF_92w zD#Qv9Td-)Js(rUsb3qi_NAsj@WVG9kQ3|m##Fh{-vq~bwryVgViFRC_pb)D=Y{ePP zQ^D_Me8CaTlfseFjyY2mVjYOBS$t54uQ+0I63t`CL*BOvu_44ZESjg8-_2Ou5zW)h zkuf#ISqiZk#I_L8j^-KZ5ba#<`G9DynJ3ZK>Zb~^HNPf@^{4&j+l`|+m7EU#9k0P zLPR^7XVl+q$C3dt?3?G-Bcpj_y}1cZA$|z46KBj!qMehM3Wy;;ixB51#K90dvuK{J zf45d&b;N8!oUIT?K|wfu9dlk2V*XsQ8PR1*lUT+S-ktdOe-F!Hh&@>>E5sLs7&hYTLQH60YGD4)eOX8n z{GI&;KIp!X|9B6}35dN|d_#yYI^vr`OsWviLhQ}rTS6@8h;Iw=0fl%8VjmXY5n^FS zd{>CiE5vIM`?6S0h(#Q+yb$v%#M==2LBt%O0*Q7{r??PJFYw) zsUQx9h<3!)T)f8`6vIBQ5Mr^YLQDs77(~pha1FqJ%ZPL5EEZOXnIH~_h>SHw##fxa zT1$w96k=A0FL^N;Ym1EK1EP5+0*SaZ$vnyE{>Rl^5MO4oo)9ZIBCgjlwQ5CE+5y`R z-Oh*o1wQ`ENd6?mS-gF0AjJ0^5$Dd0)W{TGJcXDS;&&|KItT7K?+X!It0qEBpb+yz z{GLTzdB|c#N5nOPT&oEcVj+mLS;X}!ELL*F7DD_>F$Z`V;v9%rJ8UT4GJNhBx@0@W& zgp4DFcv6vZ5X3*Y=ZqrJZjpoS81_dCahpPvwHo%v*rmo@s~-tbQ>(*~@$Q=@#*$dw zoDZkx=oZJk)Be9dE=uAUh-O{NLxNCKi5H+o*fek{ZtQOX$dKZ%fWiV!s!KS9QgobgkUv5_;bekR28ij1E_+|1%sAvP8w<~g4W z@q$A98sb)nn3I1YM7OVgDa5l1@mq+0amKGAh|`34P9e^L_zLz|k@0I1?I>48)T-I} z^rs7Pw?bS1u{et}gjm%PzY*ddg}4M_Nfu|4XwT}_5+Zuew?h0|A^r^URTgInv5q5t zC&WVv@mGk&So~gy4IFW{5RWOuH4w|OI7f)p9q|Vt?o)_z`)D3KYL^=KNIp-9no;gg zWE^37hMkko7a5C*jF^)zAkiLsET}kUwH4w>7Jn3?JLW7DViAS76XILkj*B9Qi-q{I zLfi*&6lYu_#2e;(j$fRPc42*7O5!q8c>gGR&LN1SS^PaU4YKvHmK= zqK^2R5MNM;|3Dni8Gk3y*6K?E(cGsa#1|FfEr^pi<7$zyq!7*T{WU^-MIqvHdv6Mh zYlT?C5!VT^m_kehaVm@Jh4``~ZV+Mtg_sQDG>BL`{v^@1Q)l%`glGdhWx*TxI!UjggAr6Z9=^0h}%irVG3`h zLd*j38y0s8@scC%65=X_m=oem7IzErvLo&xajz-7UlrmL5Kr=)e4h}nIO2X14?z4) zAwC0f7H9lhh}R$%r|ly~@`FPBLm@s7@jDg|3Guok9wzaKDZJGRu^`0nSv)Gl<4&y} zBhiikixlEZ5NES^T!`l!@q`e6R){4a&SCMS5N|lOdWyu;rtsD%#L^IdVDXF)Z#m*w z63;np0 zAtvK-^@b4dIPG|o#9OBDHYmg<5FcRiwh-gttbg&?arF*~A@e`P+oTX%LVOS+){d}Q z9G}&-*BRUu!+t#c&PWjdREX^$Cg+UtNwjN6*vaS#aic=)3~@fMj|qgh0HU};FCmGE zOyTWNh&>?w$YNq4&UHke#3T^^Qiy#a-aSs9)GjsdBM-@hs5$a5Fd#k5IMOo&Tad{l^dH>@1VGn1GF;vR)K8{#q+arZi(w_4(exQoWDBv#z35a&bu z2_m)~*@d{w5p$4eYjwXuTnzDNo&(^1dCs^9qL}C44ouFtTOlroxEvXA1POP_usA$H zaNB`v=#7}$6y8;ZxXNZ^5qIdb*wqnnZ;}ylOTBkUA+CnF0wUTGcaj>>&X9Wq#ITQh z>5YgR+`Xd;aRbC(Afi@rFF9xI6%a!{?rb+AZi@1bE5t1jSF(sJ^I60@VdNYDcVHS3 zx0`z>72*zvt60R{vMly@MBER_;#q~b7virF(T=#og4=OGKn(l1&z!|`3h^Ms-yotL zaVIHf925{kKJGI&B5rN*E-1uf5PxS8cj&W-_uj~H75AAN(XNk|72;`#f3S%Ak60Y( zWGqG^Zd3NIDZ~p9SF>1Lh@Bk~_qCdgb_DoaAzp=eclL;TSO43UmbmAWMa}H-WH?BW^xSqxLg*d_yE0S2r6y84y zF*C#sELIlc5Quk=JcRrYNVFsQC54y+;-4&55hC7TCdH~GRx^cnT_NU%xDg_@$kj=- zGpo@7G3?h6;thqE2jV8qSd&D%$BK8R$&9r~tZfSKjzY`_aWiMEBgDauSeHcGju#bT z0f<{TV?7}bbj123+F8eWg;*5gRu&rwae^Z@B+=HYIdzUL+I`*sSRCSCEH)BiPl!2b z`-n3vjY+hl+%ZMQ*C4LoeXAxy90pPBTQw!ow&N9r_y)vZSZpRlyctr8%}H!w3h#(Q zd>3L0KAzK3h+`m%F{c%Yb_BSo5Z{NGlEv0S{Kyg82=SIetO79=i*1EC))CtY@wP&& z2{AQ`?S(kr5j&7**N%{4?WhOwA&3}PJCbO})rkSoyrYD~&Zh9<2NSLhKH)D2pEov5O=2C(-U(9aO9x!9AS;B%)U&l%na${y-t# z+rCxYdpdoPaT{+t28oOroTq3GCUJ-RgdaAwH}Sw?jOPcEkuUheTVeNzFme*l{)N|3KngQ+Q7+#61v? zaL<`XqOH|4=I2;3D8!=>kFmH=h-V#fkr4AL#8VKD zv$$A@DFf{o@|Tdf)D&Jmg?Jv~2^NR%+NF6J`V8`i`#^l(Gje_j}Tu{h%Z9C%Hm!jW^u%QLM*Nji$MGbBIY^!Nwo8vtN}6X9}r>*h4>1@Pxu(} z-y&lUh+^$HNa7(=c%>9#DTpgsJS;@KgF=c&NIVL$q(Xch;wl!82{D%=9w*UeEUggV zf%q$nCxnQ%UdW6mg;+)*z6bF)7EcNBaYw{#(i|+a8Otif4lcidpi39V#xnTh#x4#HV|*Hcuk0ZJK}XAR#S)_A>L&1 zh7b=y6x)uQB;GQGS3@CogLsR@+d{;%V5N9Rh&2^rZ-}>9#N7wHJ|1yI+$UhxN1L&h zLhKLm4vVfv=!hAFSY09h0`UAawW@a(75O+Ib z79mzth?^j0frx#ptR&iz9M6M~?Wa>nc;*qh5G#CH_p0f-5CTzyQ4wald(a@+AZiMdVTwNr>kASPn*2_fQsQz1Z5%NliO)mq zuMn?8Ov++@A+~kI7f5^&;sAws2Vyc73kb0zM6nl8ki#W_#njOobhFmv3)=c`Nf1dNFk<%n1aPugorzp zWjhupv4knSVG8kKh$&etDa786_$rB|AdXdtk3dYt;%h=|3{lLXnPLsagPH#6Ak~DTrw}4F2qR+u`TQ z5I3;cNQkW*u`!8FOyTuYhz%kB$zoF>;z=H|9h;G8Gmch>%^+suy}9Nj+V!z1#Jl5a z*l$6i-9GkIh^--J=Y6Y|A|syU5i5rLRwTAIh4-;S>;N$bi*1D1&=K2`Xft+Ih+QG( zWU-wP2RLGT5^cuG3b7Z&9V~VbVsnUM1n5Yjodfhzh#x}S$zmrVws6GGLhP*&2SeP& zVizH{cEqkE+I_1J72*hpyIJfe#9ofrokY7nexwjTg1Cpp9zv|`h&@TP#{t?a#EB3e z;jL9KA>zs9v0LPj-NZamKzvoal)CgxEkKegW}O&iJ7azjDO>Bn~iz z*G3^uhnN{6_5ucyXvbANojtZz!~P&4wp56-AZFo=gGsdWoG$`m$R8raRtoV4i08Q- zhYImaM;s=^)(Y`Qh*>$~a3M~1#1SOgzS>A3E`^wl+i@g`wjHMi#IQe##L=ekS}4R7 z5VLc}F(le{oDvX2{zpP=st|vJ_$kji#tLx~M6vA{N20COh6-^l#Lrk9FT_tBae~O$ zOd)QBn1gF|q7bnii(MZ>{v;A7o5K5DA^rt1C-Nwhtu4@5Du`h>(O5LYS0T@Z6| z#!pGKJ*S_O@iQU*rV#f-e2m4ZLhK#LXx=m-#FYy1FvQ1M{6dI*os3@!@mGa-0%C3! zzY=19N1R5Y?Kyua#Iq2eVDW1q4syilB+f8}w^kuug7_pvY^}Z_(e~AW5Jg{|Da17j z@fyU9JOX@6qV1~#Ac`?(mJnAf#M=;a@z&})Ar1{>4Ef)aINKE7289^^0keR|Sezq7 z%w%J0HRS&w#B~ZWF~rANoGZj3jyO+<>lNYy5OcFQUx>pTae)y3REVh{?q~5wAz~j$ z_MC+z+Hv(4g_sWFQ@lPd5+cr`%WcPE5|^05`%xigf_V2iNJ~ky_v%W~tgXHjHTUXf zh4?gQTqZIuax(rTGA>kP%mwi>x8rglE_cMANnBwH?md2Vr_^w zAY%XVB8hhYF+aq+eKqV~BJncBJPNS^#G9P)3W;|A@x_1`@~@Kk55&9*u_?rXyvKS? zh=rV5y-wl{h|ej+RuFG-#+yRS=VZJ^qU||PDa7^=Z?kw?hy@(+4vDr_pH+xmAeuV^ zsON+d#Et+39WjjGh5UG?@bW3do)9;2JH{8{3lPPT2aiOX@fn5K58`GP6A1A+M@&d! zB2#!zD#Sq$-{ZT36AQ7hQ>#9SNgzJ25QjtD#yuyg5X)qjBY?U0fy4(Oj*M?kYMEb~ z8}I+)!~Oyvc32Jn#|(K4#7dm;K@#!r6P9+w#Bz@Kln{3+#GMdd zVex4pzT=2_NPNZ=-gbq!4`OkM80GSkXh*qs17g^JmPA{tI~3v}h$T4Vb0pe!#6FO0 z$9zKEr4WxpEXm^YLVV8=^9ym0LOcU;D$lH55aRm~#a!-15(}8Z+p7>SLfpb)K_R~G zh=oYB+sDlc@gIm=Su89>93hYyi;!ry9UB$mEr?HHE{DEaltkNCD?$`|b1#u-YjvMO zjQ5}sU*(?jvdDPRObumUEk@!irtrR1h>0MUVzIao@uVv$mJs4M3NabP*H|nm#7mC& zst{)>#FP+ALqt2465<7jciYjt+d_yl6=GV5WjJGLA>!FuvR2EGSk@HYT!oksVp$en z7veQXd_#zH6k-;Lue1235HCBm`j!yCQ;0bszQN+#Lj1=O-x1<$h4=)-H(7jFh_{?t zEhohJ3h^0;Z?RZjh_@ZFf)E!d#OEQt&Ek7P#FOXb+VQ>+zgLI_A-)3<>tjU{?YMe9 zAcp-)Li|A?z69}I&RAJwycrP9yDfw`Pa&3oSdKGR5gA_$?3IW8sw7r3h1W^3S6&)o zc^0b+F+aqdcaI?WHAt)pv4cW<6JiCf)mkLlnbiS<#fl-nHi<*cUwc&*&+aY<@jVvn z2r*9}W5};dVm(uMEfpCnLJafKmHI+_$`Koo*briKg;*8h`<$_n5c4`>V-lM{Y^@M$ zL9EDPQy~^|#AYNmhuBpi)`wULB1V7~B-#<6a6kf@ zB9Dhylf{8Te8R~%h{VAVn<_GX46zoALxlL8BMv3et{rU^;#7#WSsW(B9ZszdC(+jG zIYq5bgII^f5kh>$$vBe4QKs4XECWwqLLlj4lCJM2aLR=1U8;g^K znA;I2lW5n+CJJ#C#O*A8EW~FW@e>klJGN1Xt0C@Saf%RMa>P$b{LBxlD6oDXrLLc9R68H)>qSjy?EKa#i*;!uTn6{2}G zp=m8Mk}ncsWhdie5|=>yOd;Nc*qk#i72^AjxQxV~Abz3{!^zD8TCliWh_5-~&m^vZ zI7}fXgqVP9^%o&laKx1)u7WsOAtr^`k~97)#A*=5xcVE3zeD^+A*O)Xip4*K_>Lp4 zCUFhK@d_~w#DrX{YlZlMBd#NHJ;bRBF$2UloNGdz^4i^H^lZ3F?;+=h&#>LAp7bz6762VdByfI55x|f zak~)fIvID6xYHEgTt&uw5IeHCONgJF-^h%+N!$bRsv=_nh@Dv6E5vDzxKD^T6k<_` zomt#3#IGIkfDmsg#NrUUu=uwS+c@obkiHn#NI4k7GeWOyduPD z3b8T7J}h1pVtGgWhs0~9@Fpq577+VF#J1x)iT21tjer>TZ;*Hs;zb6yRIAwMaJ$xPu5Qi!7<4(5yxkZ3b@3W#C2mApWXo$L}GIWbqLp)^o&1NwnL? zFBRfEh@)7{EW~n-n1#fwrtl^x#6=KCb30}u(e~Bq0WsufCou=anF{eIh+{ZoP7-Z9 z)((haKNpFQL7bxyS3>-VGd@nD%~&%ahWy+lJ^^u-Li_{bSQeiY;vQ%1c#6cQAzo6f z9qS>EV=<2qcRS)UBo4r=`3~@ZSV_p(%J7P4F>*KQ|+F8eCg}5E!1kU)J$T&41 zhWva&yrK~IK%B@KpBEXw2#8@nzYzaXh<`(z#2H@@88PC<)@sOqQHa+S;!%i`Su7yL zM$Xz%kij#CgnX0fmk8#`hV5{p6{t`N^d{Dj4qgxJs#Una2_#CZzw3dAWa zz9Ph?j#!*Tyj0wquMlrQ{FKF#LhR^>uaanIRx1=@D1{L}W3iMFJ2>KNB-)wPa)p=x z;#3y#=6Bu;Xy=G!NW^Q*y`>5<3B=D?d|im$9TD$nH+wpGjk))mLQD?v3l`rJVrNHu zn?$@++*_#-AA9>#2eF1Mk}sTi0L7I#bS9O)^fxOB)(?~?>mL~D8y+j zzAwa!MKOoVbMVg`zABXrkpGU4D#Ppa0h$|4Pl4$4T zXB69xry=fSv6>KjAfphglUTzP-q(tZ&q3V9Vof2w?ufNWwCBo4E5sKe?q;#J5Sut+ z9TMxB!dsvai$L7NVm%@Db;SB4Hh{QRA-)1}FN+O@_@*N^BGH~j`bZ&`g1C>x#zGwC zh)qarY6|a9h4?ze{VX;UVjV|pPNF@-@`FNr2jT%1TL`g=Beo>5l_|W>72Wx8$qnfVizIybi}SC+HrNdLTnDP8n6 zuYefxy9;rKLTm%EI*UDo*uoKelGw`>-XewA5n>G%dke9*BlaP&FT_6-VmF92S?njo zK92aI5LYY2-VkfC*k6d<9B}}N15M%mt`Pe}ti$3UA@*~`!6XiWxJDrkfmoNtp+c;K zC)?j$A4C2y5_6kJ%$Sqw_y2^Dkr3-a#5tYeB-$~jZa@tCBZSydA&!MupEHgW8Jh&e zkUxsVJjmEXAx?tWfHRI383zQ~G3<{a@gq}sgB9)gDa3}HaV&{;%o!LEL;g4+4pE3- zLTt?9cp(mU#0ex$G=;ZLA)>Zc^yb{rlML;hzZPKCHpAufd2lEu%3IKmOX5aK3noxAb!n99_El} z*N)#(nVyp~_G+0QNSq7tZAGo_hB%$Yc|u(6i1UT`u0lKjaR!SEgt*xeeqGz6z=gsDfzmaIi)xQE_*#DixKTP4(Rfs;sFZejXY7#eLlv@u`9G6=|qU|~F zDZ~dMe#zomA?|R*btJAgg;!l6riOTs#SKE-=!k!kX!~kKh4?VULo99-;z~!{M567h zZz#k^ARcCMvk+G~;uayksSvY4Ji_8uA^z%!e+ls|h4>i6qbzO{;vbH7K3<-#lMBP&k+xjc*qo9O@;U>#M3Mu7UE7vJVN48i1id= zS%_y?JSN0n9Pv1bcFcKQA-)aqEQ=?E_@^VDB+-tm?<>R#5L@xy+$kaMg(&87r%AN! zSVJLJhS-|-k%@|50n%bHaWSyHxWLN5-T=)MV_6j0-tqGAuPF zV+AMU10>pZ>>Ra>589=gk2o?W7osL(FJxTI8B<`XF&P^=8B>yI+i|cW0wTF{?Br+IDQK$T$MxG8WScvAiRu6Jk4s_z}c& zJkNPph?OCVtyOv53?w&U$%CLvaYC}viV2(g<&430UE z+NGM0IQnX4A!_>S7s%LwGiJe3WBO_nCu3F;?fN(@Y8kWHrJ9d8GG-T|CgXHu?8F&! zV5u<~KX5YUB+;&qJ))K|mtCs)h$G`;LeylOg^XP|^#vhQe8)tk9OO46+zLW835^XznjatS$cB$qgj*QO;QIqjUWbDBi^J1wn z85=tppC!?@+f_>x_!`G_Oq%RQq4yk8A}LJ zlW`+54&;m_vDBE1Rh*2kl4#qpXVfy5vP(4|ab$c=h?&}qSQ<->$=KYq69I+=YxoIpZ5xYD~tePR2J$wC&g{Y8l_MOEn*HWPDqQnvDCA zaX4pu2TP5~*uu&9E{V1sM@21TIlENz5l6=ILeykDjEo~WV+AZVCSwgJ<9j69cI+Ls zjPKi}nvXa#RurNp;|XLO%^53UsWBN_IvFdIXxnjg)G~fxmuf!Z$XG>)nv7?W@gvSy z6-$lDSkuW^jYQjyeWI4Jx?QUIh$CYSA!;&SLdJ2Nu_l%pld+YPu@;H89mhm1V{N-s z^AShJIzrTByoQVuIAdKbH6~*%Cu2PlZ9DdjTE_Zzspcb&j17dS$#@$XCvnDxSZYkh z)=tJoB-(cTC~6rS+ohV1I5IX7q9$W}b5_GVFf!(9nWk83IFUW4Q#X(?>^Bo)|EOhb zZkK94;>g%Sh?*#3 zJGKpE4Eeo;I4)`#d)uX&k2o^+5uzqzR%D#c?bsJfjcLbvfsA3lpAZK`E#rrFspcb& zjQxeE$(Rcnzu|TqfThN?WBWkHkUvm}6QY)JkX@?zh$G`*A!;%{iHzm>dh#JyYD_!I zx1*ZJKKnySwDX*fii~+7R$y^h1aY{?I8Y(xw<4cK8bRVF)M{gMWve`=Gm^xixE>&- zLM#OFJr+j^v56y&7Gf%e_%g(bERGRkGe`VLhz}{mk`ODgI977DtSPdes z(*J@)yWi0wAcp-fg_u?$)`nP}Gkzs9who9Pf0_^V15VI)6_7E?zI7^649q~IMrdEhu zAYNwidm-YkdReQpg_uGi_Jo+1XI68B*dC&|%HjtS=bFOHsu24@e3r#|LhRs(^M#mA zAr6B09M6y!2oZPH%Zxt?F}p$>4ly5RTqwj&j<`sOITYd;h|jaQScsh+afuLfD#Qs8 z^Ru{Ah+Q0UnGka+#7`i;!0q@GiFPFK8W6+&av?sZ5I=|bB4_+rWW>`EWY1Y4#K#rl z*ANSE#$QCn?g26EuM}c#h4?MRf}C-c$mq^GekIY)$CBFF>eKnn}s;fJhVb)+(Kfa_~t*@rpSojGi-GA>tk<&*yvR zcM0)?Bkm?~6V{H!3K92lc}ZB@Bg9wDT?sPdUJ}Qm9g``Zf^rDrV4gkh6CzF*NpU}k zb0I#d5RXGl${7y`QI4y)&Ejto?U-{#@kD|%5R>sStAixkIY3Yh`-g;hO(9-{_yA`- zEHa+Pm=iNYM#dvTOs^Po{(+dB#iK$z?1;yNXu7vqEknL}3EqEv*k9no96mJv_aFD^ z+=7^b#p6OeDMYir`X_{#P9eriZN!w^jwea9?RX*}hW%4QOsfzRK}^LNPm7GF0%FKN zBgBUlVls%SSv)JmBaV1Zh=~+pN{Dywwm45B+Fjfkgi+VrsVBsHn{~w9bJ9Xg!x=A% zj7LRAh?j(zQjswu#5KI_xGY3mDZuL^`sx)DubRSpK{1!h0x>OT{6~n_9r2nFUsQ-W zA*N&Tx)5(T;tdjSn!+of5TAg!mTUEv5N|;=ZAoKC$iGeE9f*Y#;xiB*Mn=q6L*}kE zp0C~vWDNUZ{4V6jGlf@BAwCZ=J&W;$i0dz6drsIllN*Q$AQo1L1tG5ET1`meCc8cc z#E_qe#KaJbD8!c_u4mB~V#ti~u^G)Kg2bc{iz>tt5I3-xOo;Iu@c|Mag!r;TEDdoZ zi^+wEYfNOu6eOmESWF?l32_sPsf6e`Vrmi}g7}I;EC+Eji)n-ycEq$K+IDLx^k5P$x&ZH%YX|9(~1exy29fOwR}ibCv{AlP#%k!X*TpH_%lARc3}vJg8t;s+!?h2yIS6ygqu$62f* z#FEZ2U^B}YPKZbl2;#n3O2r;)gBpo}m3i%C5oB?sVBI8Yn=U8kc#O=;V-k8L^7|GKp z*2l29+SohKViO^zaC%Nt5}TRAdrpxtA;b$THWy+&(^RtOv>?&GFQAh`ObYQLi!Fut zg41(ak=WW4UPndGNdfT^i*1BB!Tc;Uwk6T79rYC%(?Gn;Vml%3cY02H5{IJaR8jPt z3=lK$9%~07hRlpct{ojoT!!Ar^pmoyERFEal8P`jKeQTtA>#AB#e~!QzKP#C05U1n5tq z-6FrK5Q{^+$>IPZ-pm=hKH?<6KoafxcwI5dy$10Xi-Uw1KhRf0{$L^cioW^=#G$<3 zF+_-;nV)5?4kd9kW*yBHwTdUKdAB*^Fd^P{YIQh?wpMQ{Y8B5O^6s!WLWs8@nr}XD zHByK-6e6C=;f1(XM+q^Eb`;`hA;wpuFTv~#);uPWMc9K>v#afT4DIV1TuLcF99CqsOf#hF4(CwdM#>9-`# zGKF_pA$|riA=m16LVVZ}zZc?dh4>Z3L@dr0VtOH(?WaFSh@PV7d;>8ti$4f4qa)50 zViJY;Jw%_yc|yz~M6~04A?8(x^C0Hrp0hxR?g;Rs5T8cPi4us;4O zGCr=zxCi1B+;e`5ApS1I+zRn;h)+Vqk%vD>w6n)-q8-h?hre2gPbkEr5T9akjS#at z;#wg-sSr;=d=Tx3jO&D$L5QZ;`Rj$4Kp~!o_%vtSAjC%<@lPRUQHWO{=HZ^RkwkkQ z`4J(auWl0JLkjT*#AjICEJSzPu|txf6r#LSFXZpDOEm}N0@srp&xrd;tc#=8_jWzG{qO$cPK2O%AcFWei6(h8#e)&V zLnKD|9VLe&h(}1Y$8(}rt4AY<$4IotkfSFak072P@uVrD*mF)r5Koh6&(23L*J*e;$;%;xq#?pyb?jYN}@gg7(MZy2;wyo zqg<=kBZxQtC*sWr;w=)RJj&gUAl~_(h&cQm4#mBF#7PyinY33~M6c)I!n^+_Vh7HM z*!o9tTul%`Oh}@=t|NLG6GadclNjZ3)sG-1Au-B*HE9Gf8Hr19ZZ3MY`alHnK@y|9 zeM}xfOhIBwQ$#Uist96g5~DoNc_@OIhQuk+ZO60`#B?M^dA|B^1Tj5{QJ!^Vh#+Pp zG0J^4Qv~sm|4GJ2BZ!$vjPgjHC4!ih#B8RB;`*39f|!HEDEFM45yV_1MtLNEEQ0tr zi5H?f0_2V$K0)G>rifxYJ{3WHn#4TO6`zS9=KY_D&qffR`=5yUB8bobPsIEY#1}}6 z^7{B<1hD{#QQp%j7(pyVVyWn^kA)+MMMx~0Agb$Q(Fo#8Bo2t~QL>jKh{Z@e9^H(u zL=cO|WQ?v@B7#_w#5BuOkPn2yV>HXA~D1wwTa zYuvjS_f;0b^Hw$OQsX`nSc}9V(d{|4BZzfKT!*_YqStfkMi6mtk~#KRHM%pa`Vqti zBu06ZYZyUnL}HZp9~(yyn~)ggSx3_dVlxt>T&v9^h%HF8&zOx~Uu_vdY(-*}j|8@k zAhsdV-sK&=jBO)`?MN)78v(*ec$72OQN$1V?IVaCNaUGSNAt)3=gEX-!1#~r<-$qQ z)mZE;#I_K{)!luBxLqMW4Y4|leTCTG$=Hv? z4^83iP>9b#tifV`A$D-Y0VEEDxJ4np2(c!MgM`@85eEx#lR_*4u@;L%gxJ{;hYE44 zLVN{cZ5D?Kv5O-P7vf(Eu@uBQERGOjD~O`6jwErEDZJeZ@pXuGSsX3IPL4Q+MB8&V zE5zWq`jK5~+_T5ALNwcsdl=>79#@0nxCr8S67851J#j(=aUzL!B#)M8?&88yW40ak zN=vhQYW~7ry*8P|e{uC%+}n&-qx0#U2iBtv(@fiYdH9@%&Fs`TuMm;}+k8 zSf9nug!r-}P8H%oh4=x)1}uIq#6phv1&Lpp!rQA5Yd~zs;#Wc}=!nyVxJMz@h1iJ2 zuZ39H5vP+l!xY{=h1dvUV-~*=Vi8B2Da8E>u{p#hEPgA*qK-I=#P3Yu9Z-mEAU0+3 zdm+B$h_i+Gw?Yh#a&zob;~rOkAknUmX3V*V^)c>owIeb%H`7N+Es5{C%EyPD z=D2St2q*atVn-G?+J8tHH#@bu3BL>Zn@wR}Q0H$k<$aB-b0KzOajOtFIeqmnA)Z%= z3n6x9ahnj=JK}Z{cbLLEs}Pq#?84$sA#QMLb(av&Da2nOc4cw55VtxR_mF7Y@sdLP z9bz{Y_X_bZC*wXLURH?fAa-YQzYw=M84n2YibC83u?LHP3vs(69u(qLg}4o3PZkde zafc%w7UDk&aW}+XEFKZ!PNyA@3h|mkJOHsbi^qhx*Ab7Cc)}Fkb%l5YVjmVy3UQw! zo)Y2>g?JKTUlvabaib%iA@Qs!yocl8|G0V%Vm}to3Gr`7JWt{Uh_@6OFGKv0#fw5b z0Z|-5xtki1A2_ zZwfD=B4cWZLs;~Lc+L?MkeCo+B8B)c#Gx!E65>%uOiZHfIq?+YBM^tNh{+k(>On_L zLSj-=cwvQ@4dQSXlL_&ZBR)W)?W>+bd<^0U79SMi1xHLyVhU4uzCwHo;z$-#3h|;N zrV?Tjh4?JQQ7onw;w49Xh{QCe@RBOT7a)#iF|80UJ7PK^CR2!oA&z13VIf{|#PmXZ zKp_@`_z{a4gm~2vGYauRh4?DOu`Fg1;y;e~h!B%2#Ig{_vG}MEuQ_6760?}XOQ8_o zhB%(ZtU|o*h}ndgQXy7=IDy6NLfr3&IY_j#$D4|+Rb_}1S>Vr72;^d?PM%0#0(1YLx`WVSVV|>9I>bn zGb+Tv5WisYB_VEcYV~Cj?eUz8icxL^#4lMaCd5Nd##cxzZVE4xBI8F8zhbe35DzFh7gZ9 z;+rJC1@TdZ7(7n?wq0u6$I0Iz(H>tl$I0*E7;@al$)_XZ49@s2mKwAFILPe1%B@v7 z63d&y`y}jFFy(z6wVnm>8y4RaBCa`-;`=04gg8YZ{s3_%iyhNRTA4(f@l%EP zBgAi6{6L7K9kGfKrzymx5NEMiRfuC8u^NfCR=-w=D#TtDK-+~mkKdBt~RzyjeA^eB1AK;-oq#t_qe(r8Rv1v zrZOYWKZ?0rGZLGd!rKzz{9_CA4}5(5m-CN@AA+x7JCYDyd(A!;^PYO0f@_3>@CCzj@UAUuE@$yW zAx?6{{z80GA!dU3Gm8U+_^~4n6ynngF)PFsEDjRlCyqE+hFd=^Gh{J`LS0UzwxQfLQLY(Y~BZc^sLd*~GR~APJ@iRvpEyQOPVj+mX zu{cJEQyuXmAwH)NgY%rRcBygCbH)kL%yaHx4iNV|=VfI4oimOX8LMOr&N?QLIMEbd zf%yI;Q{LCCqa?&XSez`x%8vN45MNM;WgxC*@e?6db;KzoergKud4>2E#5F8_Cd6uv zIF-cDA?8zvD+SWqEWg1C;wuY_0$qL|A~BhmJp{0gxe#PuwGEyNF; zjMIhqqCyO=k2CC2<6a-X5u#Zi?_uqTdwr~pj2k%POpy`yDayToZ%MRwc~6Yz&oY0! zul2D3#6Ma5PKcQu@p~bDst}t(+{of=A!dOndd?gnex?v{AD6d@#UF&2)yX(lh*K3J z?m6@}vp7$PxcgJK<9s1bQHZ!Z&fCJ`0wHE|YV}7Uey$LELfp#YLLp{!#6=`7Hib7? zA@+m#7mG`T_=qDe72+ofaS+69EG`ow?x~f1^(P^Ip%8;(&T_ldxW}BIg=of{dl&)Y z9&?5x<95!tLS&qtJlI!%A#oa>f^sYDuQY$WuQ6u~#2qZI65?z}{8fkv;@!VE0pd;; ze-q+dNBmugi521}5O=ZohY)8#6rLNh>gN!5v$#fx-#Fr0A>L7lUqjr(;yNMD zbj0;S3@K{$TZnsE+#tkn9q~^gh85x*i2GRFD8yNgxJiid6ygGi`&ry9#P1w&ixA^0 z#3c~_W^td=qtouAs%LNhY;sG;!YtZQHX0G9%XTt z5EnS&ZXqUBh<`#n#^N3!{^*E%g_uksZiRT9#eG6tOd=J~lxVOmrkntpEJS;M1%@o{r93k(h$R(bN{E+Pyd}h^ z9Pu`ZcTC~Esu0scyuxBAY3#KtPdj25zYF1 z!(svxhX-^iAQFQHW1Kyv|}0AwKJfNrhNeAwC1~28+pr z_?#m?AjH=d;`0!1viP77^EqO25>uGMdqW}O$s^t^7E=oGc}Gko#5WZpo{{0*W-+x8 z^E={0LVQahmVkJN#WX^E!4cDvn9da5+X}HX#83ir4F;a}_OK9Nbj0*Rd`BU^2{FuK z1|b%3#Ee3GS0R>z7>~tFLM#YT%sL(+@ljKFEW|>Nm_>-?6=GG09*bFp zSlFr6Y(lJ{5Nkn9z+!eG7IDNJLVQml)`yso#hgMc>WH~We9RQy`wFoM#6&DUF2t7{ zF}DyaD#Vr$6SMe)5MPEU`s$NHtfUazLG)RCN{Gdrj8Bu8#}r;=h1eNl5*D8k;wz4r zSBM`d#2yfnviPhJi#y_TB<3@PS4AQAg_w-R=Y?3pX~+CRtf~+PLVSS57lc^S$@roW zt0}}`5Fcc*fDm7GG8PnKb%i(@VsaJ>39*zT78YU+g*YB!3Kok9@ij**D#V%!@neW7 zS$s)|xtw-q4xp5NAV7!{Qr4Jn4vU3bBqtoDVTAi*E_>lq0?^#JUP`F~oE%z9Yob zj`*$+>nX(L5Fci-oDk1AVtFCfSBR@1rf0E&5YIZ|dqQlW5LZLYz~cKtJm-iNh1gIb zZh)AP#Y#dv?}(L!*hnD;N4XE|QsW-wstD1Ha`!L-#68MwLB>p+v8u>;!O2+7{*K0+ z#`m2ulw=1)3}4}}*_*2_#3tss;Bxj@gEH1Mh3AFLZ3_1_%7v2b4T!ab*whhglh`Pp z5zV8_?^`?=5bFrBnIqOEv7RZsMB)1vj|If~LTv7c4M?<4@6V(VPY1+?LTurPjYwRI zcUwH75HAG8#zJiAh)qab0WqsWyc!Uj3bBt163<0s55IZ_zcM^M;!h2L9W)6rwh1kgv zdkHbKLd+2mdke9%BlZzu7KNBQAodkv7f0+z;tsT9PKB5!Abu#su8!DWh`AJEzJNGD zh}|4QOH?4)LneR2`yP$b(%rx_z#!Qy_nD6uEyN2nC>&$myGrUhX-|5T??fRMT zi{`sl!cb^~`7UbEZ_Iak^Q8U$=KHewu4DcuB+F_R`aRx7W4_|qPx|@)`}DszOEW<1 z*ADTs{Cn|ptQNME`MkF;e}t>0cq~>Hg8a)^%>;{YBH=_||m4LX-K(^gIqjhTmgMYa_hPqPQHpe*bD{i?EN z;!(dD(O8(VqR6m3bI-AdBx$)~V`0XMBE#~`J;xrNq#fHjM{F$2SW#qHp1J4PBa^gT zBk6`Q!}826;jH(Ad}YDpqA`qIkQtU|?m5=`x~(!=uBAM~$VtnvJaf;n-WOk$(Q?H` zvT@QfEYI9?toMabwWsA>q?CZOyP#FS_A5lchJGHHpoJd`$75Nb@^Q5+H6}LC%BYxaT zI}IDrGEZvDR&mGFKubH8h?aR$TegaOj4jTF813{51xK9`WNlM&heC}~K^bwlT!kGKefR@IbjjCE1 zvjj+>AAaa-G_R*IPoYu0 zjJX`O>}|{;=v%Z=A7h?Dqx%|jC2HNzn8VQbXp{cDVt~dB;1vVZcAzmwpdZovLA+vs z#t!Bc1Jr(qF-M`F(Sqf9#Q=>P8lSQfY0V54_qYiSPcXCD^ErFVCXtq=s*hjr^e|Pu zP1UfViKjz!%|;hvBCY8-?r{?uo?vFP$9c4oEJYjXzk%O(8BG+R2pj)x(`<@ zbPOqkV^2t@arUy%*foa`?wx}Tn_LGeqhwDxTxYb9`_voA-h*0T6;e*YFAuTaT||&j{lIoxDc&_f9TZA_|7I0 zjL>#X7i~LZ&y8rz`&<*bvb&>y=+t!YY$Cx3ZP#?swm0@{kLFUCxe+5*c6ahQ)O7D` zuo$83n$&)=r$n(q%Ntu~pF_TghJ|Qd{V?J+kengd0aDQ+s#tW z8@HZ}D{~jdpnw3!p`6DxW4680JMKhrf1W0sv1YV-<+v#@sp-`*;>yi)-KlSeb2w|bu&>og<+iqp&EkUbs4-Z0EAcXetblcuu zDYhDE5W)f>v`3`d_V+?G2w{N`+9T6#`&c0wgs?ye?G@5(drKi2gs?ye?NRBreV`Bx zLRcV#_KNAYo#$PXIZHHiK?no#`+t&-l1|cjELVKlj+uoZuFrFX91|cjELVHZQ zZJ#d`8-%bx2Kj03xv>K zC1%I`wu={=`|G#zK3DfN8a;&tLTHbR+1wHWzx^p|Y}^lmM2TX95EclbJw9fK&Q*;4 zH7hN3Bq4+aLTFEj*`afsv72PQN>XVM!U7?*C&uj1Io{X<3Y|9yVSy0ZlVW!0oWPqS z3&jQ@ED%C_)tDVRCmQ=?*7KISQh*Q^2%$YWW{1v6#`eq_TPh7gSRjPu4?RG zg<^vc76_p|C1!`t$;S5gV#|`~i`k)bim~e# zI&Tod0wJ_lkJ+Jfs1 zPgv8~N!5;Ime&>`goSez+B0Hy=v>R#%?r`!HMOjr?zf*5nz`sTwaiTS+s_Ko=ry&h zlkT^N6dFl-O)az1{kBda8oj2Lb<_QJX|?&5<&{i&O)az2{dV<2vC(U4SufphZz@Ei z*VHm6-EUiXwA7g^%Sh5|YFR(sZ>JWDjb2mB+;qRazEEuRnp#Tfe!E(=v9a*4@s6{B zsh6kNrq$B2%*yllTF4y5u3d<>p{bXr*ja^W8}W6JIg0I6h_YT_3{*ZVIkU9re2<6w=YE7+SJQa>?MV0+n9QJioLuLZCg_>Pq8oXPV%ZL z{{GxqzTxbirK+)|sw+y%9^yH#Mt@XBe=Tlj>g6eRN8Ybq)xoD7?i{UrxhEHWivDNcA)Y*!?CP~Y6-l}{Kb+%%!OVV38uPIgGYQ>KVw5Gv_ zHnJJESD}$?=1*1Bt}tzpW}zMW1H(42ffm0#1S8p)Pa>L2QFCrn2cfUgJZ@D_p;2^r zIcf>`5cDnbJ~ZOJ&1p2Zt1D4!Ca}ZM_h=KQm*>zJ?wwbowk)HMK;BORdS6@p0vgN5 zKCeaX`Pk=C=x4NmkAA*{#&Q4je&DwwANxE8{feSfP4L_jsIwLOnYW0KmzNuqHRBHj zc0?l&xg}6%E7tp=$+GTq(FiQ<))(C*gPWoASno$BYfmGvv|C?vlMHT#&SSkFn5;dm z!YxtU4;cmP{kUWqE$zB3dqVswA+WStpS&45kM(|7vaGXQ=Z%{lw+(UYtIlJ+AC;^< zjlj4!RJbvgKV-chl&n3Cz_?pfcUKgC>;0Hy?P&zY-9p^@s`FUyha_uHBQS0l8E%H| zIoA6T$=cHhj2lLVo1uG-HQt6myyUtj35;7pw)-JZvvms52&{RIyP~ZsL?f^k!96gz z?=8C}rZsJYLNo$v8GMuxyQX3r6`~PXtJudkX;v(@Ng*16wT^v!lV-(Yn-!uFSew|# zH)&QZ*87pj+GhZPwT*pzlV-(YTNk1cSi9KAH)&QZ*86eD+Q&v$?cZerI|toMVEWwg8f@5V_u%bU>(kH9)D`}m^!5M$-q zb}K|9u+GaqzUV&0Sh=>|4?&j2mg^osV9N!c*Tk-=Sno$5YfmGvF2UzDv1=;U`zn~) z(+I3<@Oe$_nu_gTh(=)Dg3oJW*HrAlBrVr9NnqWB&ue1WRP5j+E!R~-U_FA*Yhu?_ ztoMVDwLfnJ*3%CUBSW#?k3H6&MqvEqMxCu#?}r}CXt{Qm39MJ}c}?t^iuHcvv5c1M zyn*WN12Hlb>;1rE87ChRJV6G*ESe?SJf=ie0M^4OG2g`yaceV!dBOEDI*XNseLz zRh6>SFZceP$9lhnSVqe=lAySNsk0U9{R(0kEmv%y*kYj0R;>36h_$DI;@U6Y)2Pt2 z-mf2)(Q<7Zi4Bd)TOZc@<-;;suJe|8qr+{0SnoFo^U`!*j*L%3By7AXY`YdyT~*uI z3xv5&1(Q*{kg)Nlu`J>fX4e>7Vh-Z6NO;Pd_ArkYzcO-- zWMU4gX=1W_6^bn}4RH}BJmpQhyGM&(hq+?QI~iT&(Jqc%hq-8ZC!=c$(K7G4F57!O zq7W_fuIsYB*Z&owW!`ml`?IzW%fQ;7w`{LMF8iLjrhHVc5G`$kwbI_}z*^A$zk4~- z-3h}xgt!xi_end?d+)`$!E`#P&N4fk{w@d};%PyNCUWMR@HQCUA>5r1xV$B<%HIW1!rft`-BS;xHDq4J=&w?EKzJOFc(#Lhj2~E&WP1^U|DR8q?=|l z#zvPwTu9+9#5F^|Yx=ca*Q3n{!fRJrW`~}&gNI`AN3qc*5EoT=hj2|!nloax-6X4R6cK@fVil_TSyqBFzk@B*upq7#s&(Aiz>W@gh2|!dfy}+U6Y}m@w|Zo;-U&~ zAz_fhu)_+)1`3FaD!he+K?=jJQ-}r%h>I$`g@i#0!+JkJRQr(x#XRMr3U47{kixKU z@Yaqf1F+qkmGLSGgBrDI8Aps+NX)x|Ax9t{%Vhafv;Y)*YXSr?X6^bn+V1zFX#+~K19ao4J z5-_;--3x?qXSr>6C`3!V{>Tf2;Sqt$vYNxc5Z3xo+zdDCuMh?aQ$krxOPp7N&M zwGb`w`Xet8COqX$yL%y8;`K*TF5xL}+C4p5{I=p&TN&3}HNF0rc!APx=F!5wLp$_T z&VZU;e@whUY4u&1hDR!Gev>sVsh;*-4+IXkkga zn?;WXPixHY-k6=xduTd)GF!#3rK^5Dz04uCOqX$>wSKuZ05){ zl8Frwwkr~z@}~7Z+?kTX8DlHo4e_qegr~e|JA1VFb?9QtNQ-ZmWU#IGi`TV}t$a76 z!bXXE$o^hvo-E%DsrlX8JqpEEz8g~ct=l|mdwH~DVuR`IjOVRrEHskk zyCKp3Of`Pnu~2N~yCKp3Of`P{ccIwIcSEB6nQHv@ze2R~-H>R1rW!x9CRd5eXqR|# zJ2e&KYp&Q z{sJ1yg8W+4o(1_)=x4Nm%kCvKj*hQG9hrrXLEiWOZoz{56*Peb`3^ET9jU*J3$ z{fl;J#jk#%Y5W4`9jF(-zYhqOyuRO`wC6_ zNg*16)wI};|0!TUEkq-*nil)hVGcW(`Z%JCNk!0b|S~2tT-~O4T<%*5KSk+at%$I)qPm-1^HWv58f)3QgOt5RJfiIkEi3&P^#Aa{$WZL)BrVsP3)G<4k5JOASnSG4TCUhY4UYW?CC!S(u2P5w zicJjaY{iaG(sGUDkk~I!X0YwVBrR74EN`M;qs(C2$%SY`jraSI)Y*!inxvhX=d;M5 zhWkK_48=|_L<2=s)Y*z%s}{7zL)b*V2lZnU`Ak%o4dmU>M`#9{$oHWE?3132yrJ3y zEkZNdM1BAbViWmX)PN1-z0hJbi$CoiLf*uEKC)~e?}I)=v)M#`1Px^q`9jo~4dngM z7ibQf$d94nY$9KbnzDg>09u0PvWffz8p$T|r6~Fn-tD2XWoCjmRfHZ4oaMzXCd#VQ zVt=1u9}svj4vjq&{23R~>iX}cVB@S5ys0AeVBjn-win~baOElyt)74M)(;FjEO@Y8 zoUz)z!9;2~EJwEVYOpHAg98^SOPNLUFeqh*)8#M(FwTm-W+cP-VWv`Xz8c8-* z>9w)XbT&W?Jk(*Rfnh(d;k>2o#z(Pneb8$YpXqFx70N-8c7ZYzPz#Je)uW zkJa`7?<$ca=}uRT`Nq{i_bvPy8x92n4>3Di)b8tA^IUt`0eU^tJ1 z$7<`n7cM0>7j2C+t_Hei_k|i84h6$`96VNA@B3D3PvdH!dv=znvEfiKoX5dqwQW== zHm(M`XUmKl8x94-c^o`e+wTg+#??Ug>?~1Z!=Yd}kAuf*`$HibR|DO%Wk$_K2#12x zc^o`e+usV&xEko5Ei(s!L&51h4j!xR&xL4Q4Rp_znS;Qg;B+1bkJYxHca`KU(X7nX zK=*8!IS3pIPUms(SZ${ix+b|A=$}~f3_Z>t)OM0bi@(n;*SdtOf$rHjqjm)p&bTLhsDrWpdgm=?i86qzf$j;3 z+7(bZS=EJ}m|@#_v4tfbq{W79)HPAiR2em7paI&fkJu$|hG8dtA<{V-e&8pPwAw7*bAK6}PbE41C?A~m1qM?0^xezt(%Qh$a z0?p~iHYXb1-Uils$xm3r$Q&Ky_#-6~}^S{E`i#Fu;H&y2Z z=lGDo;0ZV>Z!fzkM;92=9fZ0;fq;$Ec`zEqJbXpeTb%1EAk>tNV&p9Yr=x|>iO0s| zM#n_xinDRjU(rV{=Cor#0|9BL-LK7y~CLYz%fjoQJx( ze=5sk3u6EnbngWp`s1{QerFuID|CtBoY;I$lbsLeq2>b~-+1TEm8SxO=AD5Z8sXF8 zG%f=ox74nhe5=u1PKeI^)n?VJgRPP6uJJAaLleI08-w z2g}X}4>?a8WA{zQ7T)dSBZ)J0B)JIOq0=$N**F~>2s;!;CG&m#(E!~jtI!0bP#qv@H)a0WFIItY6np`Sn52USaRQB|gK5zs3& zT@rvZs5xB@!k$Oy?_ul;)zY$Lfa{f-E(ysQ)SNB{VcP>g>lK3OG0u6HK)tLyZe6lG7I<{nUp=6a=e zqvs52P8S}qJ^g?&X!bGoph7g)E43RvXHavxxGcf;@|hSsp|7#edo)+#Yp(Euti0x; zSGu8gqvs52P8WW#y@NeLp3u+OsS)j}01KR3k2{2LY6%Z2et)A^x}kQXhhh9Crwc#W zK0XtJC-gUVZSNl7N<6kOr1%;(cxH4>(ktCiyU`1qoG$#p`}#}_o-n}Jr_y5!Lkfco zP#juBqgT42=IDtkY;wBr1Me4v$`b|}`+G!7jV%l^l}4|0L(S1s!X~E+Kk)uO6N5(w z89T8Mjb7=7nlMVf;hLN-2Or=wISQUI*x1zy(dd`8)}Z;8LsAZVQ>_Kd?p4@sAKHSQEZb^%^h!6>9KADK&FRA6 zD2Dn>44zPB?2Qqv7Uzv#>4uu4cZRDuT^Jn2FrSIR6Y3lLSRop{(hW67?+jOSx-dA3 z;XV_CC-BQ8-W%VRU5eGk7TynnXGSAQuXIDr(L2M{oGuKGVua7c;0X_qeI^FsEpP1nh!&rr!rNMCgaaPGo6;-YxH>dwa=K`86f5}$fm8z<{2gGSSEl#6Xj@#9tL6g%(lbzm)z5$lzXk$N(&RZ6mPmVHxUO8@8hXzef z7fphk6c{vDGWL@~vC%8X?ds5=$?2j=kgEm;%`wJ)yo^@6^G2@(;Ofwz$?2j=kdp(0 z=E}x?P>4pa1mNn>pxM^<6Xa@v!J}i19k-0e2}xX&ZebTLzGBx(bl$iK2*A~$LDP8% zvgAJjgGW~}_M(WE@haK6VMOC1AOKf~22JN7$U6QLFnDyFv6tqi^{*4rxCl6ISBC~o z=OIGlKLLYB$Fo0~o7SRVMB^ghxLq9@G@XYC>-tZ?;L!=jZk?MJkBy6f<92mu&~zRm ztmi)ggGVPC+b&uKWjt?j+7$m3xtajNrZb4J%6|d|k4`eSV?;|_lkOsv*JPVgG?G*O zQ{-v_2%F9z!utLbFnDxTV>?H*TEsTZKSi!4fUxNdB5dG40fR>;8(TLwZDzeFw$=Sp zm zpDR}rK-hE!5#po-hHVnXmhmcy-{02skK5G*5H_7bgg7aIVVf7Ct>quLs|g@%I)eyt zQUb$X7Y$m*Ycd|&4F9-YO#orj8AOPa5*XI|Jc6F}H>1`*<< z1cn`1h_++GVW z-FOD9=O4GL3BVbpz#u}Ll)$hnM>LrM{2?XpIC0t>|F~UE0M4ir7=((G5*YT>h$dqj zS+9oJ*7uLw)db*-x`9EcI4OZ)?~7=$v5F>`G-os`yHnK0KY9WPjds3=P;pWM!%p{T z;mN_ExIeL13g#I1gz!1>k#wi1t$*|c5E|`$5250u1cvoKn3<%xKe4mW+$kawj-C=4 z9sK6pz#kZPfj4O3al6=-_%C#1p}A8;Bpf{@G&=gt4FZ2)*o7%0nVrT#S19v>M;UPc zY4)TP8qrc@Y{4c*bd_+>70QOeqhS4~*`d)~BJ&Mq<$R-?3T30)<`w*$msi z5REOUJjD(wM9chVllue9p2TMWtB!3Q70zM2nPxZUGlFIex*D}*X>|np5zS|5^#U5p z(&}2|{bJNn=x5|@Mn%)P`{Ox0SSHxePBZMiJYIDP_v+XRswO+4arHt7S7a<=LOac{ z4|=qP-Wv>-mF~gYgF}xnA{rW-w4ZvkcCme|i8W_>6kB3B#>Q2` zQ{J>+6&gvFV9ZeAq6}JSry2HvBrSfEtmb@1v9Sb$5H89fhjyA_zwu}p2=ObaF@NHi z9_VD`eb#CRrt){tG^X-9P;@x(Njd6l#h$|_&Eu%5$8A|N@u=U7Xv{8dc1xS2NNYZkh zH!cx|v3zc>(6m<-qPf7z=jIACx4otoH1Eq%jrZ2G>yY<$pJULkXbaNg73BS}`whtZ zWyj;t?`SK|{A(yW4V-ZXCd?got+{60A3VYC;VlJkjjcnR9eOT|JrrDe5iOBE?pkxH zl$KWZNRF)bGy>rIav?d}MVs&kPq1gzKuf#6qu2<5>nltjY!_|9A3VXH?9twd%|*@* zJ@F-q97zHrm@s|fsT8+^C)h2L=gkF^@w^cXy@u(-Iv~{!oc6F9VtXkTwu}uFLr3ij z>wr`{aN0AH=gkdW#@NaiHQuO(9@Ye*9T@f;j~2faa%DjIqQ;9e^spuf?ZB`nc;_vC zDdeJ+FKWt`Jgf}FqxRH7=dFBEQ?}$`Wgs54-mFw911eu7X-k`B3m-;RJZcwuwD6h; z?Qm=>&s=Fsn`H|hc8SEJ_QZ5r$gfNjn^4h?71yVD)E=Eq3$M~NTH{gNINm|ixM|#h zysx7^6)ikUAa%B4`+36{FB8j~@rMFCqH!N# z0u1gZH5&GiB<;{VH0~ozfWh6QM#G-S87qq|7mZu)M(h9 zy-6}&9xiXj9}4W~yfKW-gu&gUM#By)blw<7X2RfZQlnvKCTSD%#Ktf(69#va8V$Qg zl6Ghw8pFs;C~hm&dFToAu(AkLo;jzd|&IksW;h)s8H+U8@j{VPpqiyz)_< z$9nhIvY9K_Rl+c`k1t;NsLo@zOVV;>H^a!gNwd8i!qe;lg=h>T?sst}D~?BEY3MuuXC7NRkX9sR+?$WZKrBrVr9$uM^E2NNShv1608T-PMS z*x4UUj10xDREWkfF6R#>MuuX&Us*59?hMUnUBWPS@dpzlL$Q;Rv|J;}Fn09^6C*>h z>lUIhjNSaf#K=(WdWC2VV|RZrF)|dpO(7b?*ux)8j10xDUx>yq_Vfo6BSWz}7NRkX zz5Kz%$WZJCg=h?8Z+|c`G8B7IlJ;=T=@;c2!`R0kOpFZ0u9l?b$~T6wuRoX=8H(L1 zNy`-*!`ROsOpFZ0Zjz*#JR`|4_V))9BSW$C3(*+H0sdfOWGHsSBrVr@V;BeegNc!$ z*v$*k7{)>VU}9t_cCRFDVxIHHFb?(y6C*>hyB4A`j3s|CF)|c8EBPu(u2;7h#yb9B zVq_?GP9Yk@Sl1s+j10wYkfcrQR^!4Unz@GfU;ROyt=J6(t$q&L^8QzUP-iQ4<3hBd zK8HG6v707ohc?L(+c2L)ovql-3ekoKUowP|q1ep}(MI@DQD-Z5%R;n~K8HG6v0E3S ztq^?A4@QP!w=G07u~$qp*!G0vJKECT!j^cCTVr;^%_MXa@;-vS5dDd^VSD}!G@0%B zTTnM9Vei$3ztMJF>TjVbY(7QPL*fvb218HW4xDzZmoU%7UdVN?Bg8#oIS|p9)9IDk z6{f*dJ8;@|Nt)wiq=AA!?Ml7Cpc%J=Cs_Xt5%Ior(OfXpu2cmE&A1&r!H!AB=3Z@z z^DB%b0mMuFSTk-1&#^6%v|Oh9NWpGeHL3@I6LmC5E}u+OT$<*ZU@h? z9Xwjj5?zx75HB{?w})o5bwEY5RM$_*u#o8(mgc z*c%rQ*%b<%H@d8@a1O;ocE$9OjGswySw`1n=IwU34R6PJw46onElI(x$h%Q7b;p~+ zws-S*m5IF_I(`9E6GAjF!F?#@c9nR@Z`#X}w2CLd4PitJ?n5cJtHeWo(_ZM)@|}r@ z7TkwYZdZwi{HDDk8C!f*YaGeoKD6wnm3E7Y-_PtNJ}veZTNAg_V~%1A?nBFNTAZAO zr@U#;^Jrz~Dt5)x7+Y{3T6WXoE|Kt*H|ZXk7yao3md1p%X*lP-nWN;rUyJ=PLw72@S*wWX;?ev(V*n;~|beF2= zv9}kZi5rrg?byVpsL9*hR6E?CfV_9x*vY zC!AS_nKQgkRA&cIuu}`sTrmEP!MlGj-=^Au(@sdz+!T>9HW!S4WAK7xI!(0$r(G>c zbCYdGT7{bj=PL0iUvxerNpt6|Y!XbSYjobq?+xDU8hV(>Lpw0+9FG?N_@J|E_qPsL zLwL7<9NK|lXL_{wtt!_wS$=QuX711vw*#kLGkqj8p0~u!gV{aw#O=Uo=N1~t#La^% zBlIw-hjw7t)jeALn#eVh)!!$)30^#E=M{>r!mWatUOZ}N6*_MfZXR5p;!!(0J+}B& zD(1{1!;gPDC$6Sk_%w2r)`b9>zOG`7U-4p@=j`=F3L-SdBm)fmHgKQePMYRbOX z0cZ)D%YS+Tjikd%QFET`z3>-hHc8`(VYWyn%?*Kr!P|XDfDCk|w^` z-x1<<6dNc43#RxQ4Lc%9i)Vv4W69Wp$vv9-D|+nYBrR8LVwRWle%xcH7NP}{yPWP* zJ$6(fS}?iG=|0tCS1LpcCiiISujsK83(+^hW#?3wr?wzDv(%j8;73ydtD^7ZHZnXO* zX*V;aBv+#ePejW*4enovmUkLFun;ZpGp?l4gFFy?gh)J);)1|3}|Wx_k1YDgRe*^j{=y zbXDu*8Fp^*+tAUn&mCHH>jlN#H}mb@?pcTiio0*-+r8a8Nvmm1L3mMY zpt$>HzTMkz3!OJm+Kg<=E6YB%%k-fonPE!X}+-Wz@U zBrU^8Hum;j?%=bv9r#@B0q8?CiOorY zZ^Sm+pl8vLUdEh)en#u}=Cj9WxjuY@D*6OX>1)h2sBu4Ic1EwD75ekn6#5HoGQgOJ zQLll<9F3NswFdD9E7WQ*e^H^g(byrzT!c!?8?z;P3Jn};%!%j+G<%paccPB$P92Co zLaUD8TU$}Xk$hJTdJzp@!I(49?`XqO`~`=)uV~B>=yNoEv@zGC<|`SqJ9-1HG={(8 z(0^zFKdJCI>NnPyy%tdzvxFps&!3)s49swVrOw z-sl~)${K9Yp*m~w)F4SplHtEpEX!1;Bu0nPlV|GL@p%JtA z3_1D(ZM3d2527BkjX4s1f!0`$FEc?c=I~cBdJ~OV-ozo9YvqYu!;jritWRDWaMEQg*)LpL$zH1sRlU{n4IM_uO|a~S#*P20?v|DmP} zjM){vhF091zr@i$X#N()Jc{~kY0Ru$M6>pzqPTdz1gD!#?Cc`VdXpm;6T! z_9Oq%3uxH>dI}9Zjr>PHpxLLB z|ES{`N4^lJ%^URocu?>pt)C&|ESBA zKgJN{f#!gmi$M(|406#uh5L^$bZ!Odh#E=gI2kL{6}?e zB>&OVXwXgMKl%}^cQg5qI^9D4qmR+#TgiW9ZzKQFOK8OHlK*HCTJ0tBA2oWJ{6{aNk*|>d z=ufoqtK>iG`5O6;zC>%jPX42oZ;Y>Apg;CXx@k9KkD`o`HwzBtA9-Xqh^c9fAl&U{R#Px{zaQD zCjU|2PsxAu4Vw8G`H$LuPX43!(D*ONe^l>F@*h2mhAbif(a&i8ugHJ2+}Gqk`UFk+ zhWtm3za{_CD`ZX<~G!hAHmxXy^kia8odlvRh7)P=sC1J zKM{5+`UTBxP%`(TE)7fOP_!6LS`60Kx(K~3B7A12rs>4sVY=xdigIbl$N$5wkUh9&%3w3H!G6$iL(PX}# z^(y53B;tfRx%tG`Xn$@jjZb$9Am(2d?12nNm$y|==_bi$1(DP_$uaY?p{fai|T{8Ef zu6;`8F!U*!*0*H-hnn^)nO)IqXvO{|b1wP^&1cL0QPgK($sCKmMr#i$nOjgBemG|z z^e!4Vq+~8Zb(b%ht&OpDT4L2>B2T=FWUfce7nIEI=nb^e z<|T7J`VTGGg8WDQwj}@2w`iTM$bZysYw{nxk0xwG{-dgG$$#`5T7En7AN_*nZcqNB zE<2F_Xfc|)Bl(Y->_q;fSJ9}Q$$#`W+H@E4ANAgq{6}A*8M~4HsP*pTKY9nPvIqH( z>g-AWqo>iJy~uy`BU*27@*j2Dhx|t$qsjY{|H$q~{-c-Bi2ccb^atAL0P-L8IFS5D zU!XM(BL7i~gUNsNCK_`H`Hz;O%?~C2QUAlpfAk%ibvXHt+8;swqYu!;BgubM|0wbw zJ&%SSP5z@_(FVtm|ETM+|Iuq`#f9WQ`UlNFf&52(P9*=)*J$mN z$bZ!4Wbz-qi^iQo{-e65lKpoKF6u&S#MSXc1cNO!6N!I*a^AFQbuX zlmF;XwDCFQKk9id`H#LtYo15`qn78B|L85W@&)8SG8dBn=t(r-BJv-7kJi1I{6`%w zA^*{bXws$RKWcCp`Hx;e!!9TP(Qjzp734qab|v|bK0~WtMgF5^SCjwfbu{`K@*n++ zHoKPmM}7ZC{-bZu%LEF%BWn`q1@of8nwf~&_M<1Yx zUy%Q({+HxGdL9j3LjI#)(FR|U|ETNN}^beZf_OCa zJsw&<=dto;8hd*W@i5Pe1}f?Y@J^}Z zpOarIBc7IsuTl_Sr}+4vnO;SC)_dL(I*9%#{-!{8Y1kKnLx~XIDkEN!i0@MnKcx85 zjyTQts)zWF4x%W2EYMvVg7>;5uc)7t5pPPw&&r6mC8EfX@v(h%=U#4pMN z^`S)ks*K=Wi^(hMH)RBGf=nWQS4Qxj$|T|sWyBW}kru^Y1+Ysz#GiB!O(1_4=#Jjp zp!i#wuKGIgMTmct5#LJ0zsiX3B_b_~{|aDvr)=_EEG^I-y@_+d8*h^rt!W~kmiAw> z`gjj-5>Zk{@K)d?qK-0xcNHfQb(ImkNjZt&Q_;>9OCO$9Yaj1|9T{(X z^ZSdkyS_4_jzlz2M%0sthRTQr5@D4QjU=LxGNP$OG*(8mkccMAh*lEOR2k7$BAO{9 z+Dk-pWke^5XrYW)P9j<=Bf3gND`i9viD<2i=p_+tlo5R;qOCGwfJC%YMhudO4$6oj z9-=*+Mt8lA%7|eS(McIGLJm}CWyA^+v79nuv_y1KMvRe&uF8m2B%+%#V!T9jS4K>d zh#ty_$r90188KBNdMP8OOGIyF#99*3M;S3wBKj&L)|H5U%7{4<(O(%cS0V-|BQ}(X zfy#)DC1Q{=V!lKSRz_?t5kr&_TS~<8%80EcVyH4=JBb*kjMzaUhASg>mWUC`h+QRO zq%vX;iC94yv6n=QQbz0}5i2Sq_LGRw%7_CbVkKq7K@u@W8F7e2tgMVUOd`fABaV=W zRg@7&OT;*3#IX`FUKw$`L`+adoFEYsl@TXP#3W_JsS>fOGU5!0n5>LAOCnZNMw}}V zQm_1_GU7&w zSX&u!vqa2PM%*e9>nJ1ckce5zh`S_WU1h{Q5;0pDalb^Yr;K<|BIYO~_%4v-i_z;V zBOa58xylH>og^8>2FeJ&>?Dbpr;K<;A~sY;JTDO&DI;Ezh>evId?8HoTx_C@;QM8g zh)tCdZ%D*^WyD(&v6(XB9f??=jNrR@lILP`WdvXIlSFKxjNsdXl87yp5q$Ab60wys zg6}a(BDPjW@O4N@#5T%^B@(f%GU6MF*iIS2cRVErYI|h_Um2A|?4XR`Tc?tU9hDKk zOT=5vMC7W=X^u%81z#ai%h2jzpZLjF>ACXDcJ-NyItI zh>axTTxG;25^;UwvdPml@VJ@#6`-8Z6)GjWyB5=afvcwCyBUJ z8L^8*T&9fJO(HH=M(iOGS12R)l87sn5&KBQRmzC{B;smi!~qgS4JEq5jQ9!j**BPl@Z5D#7)YGg%WYIGU7yuxJ4OpvP9gfj5t*y zZc|2_E)lmYBhHkFJCqS;OT?YZh;t?4E@i~|5^=XO;zEhIM;URkMBJ;4xKtwUQ$}1a z5%()2u9S!elo3};#DmI+YbD|#WyEz7@vt)D28nn?8F7O* z&q&0J%82JA;w5Fo3lj0NGU6qPctsiUibTAsjCfrlUQV67jY&VzETLqm1}WBHmR-d?^v{DI>m;i1(Ed-$=v<%82hJ;zMP`PZIHw zGU6AB_*fb7n?x*9M*JZWpC}{#l8D91h<_yFQ)R?biTF$zQKznW%kJmOhExJ3M^j95V;{!&JamWaQV5o09cA7#W?iTGC;F+cMATPC%#w%(%81z#(NGyNMnbBk^~BpmXDcJ>O2m4~h$@Mgql{=M5$h`>8cD=l zWkeH+*gzT4Od{qfBU(trhRTRm60wmoqK!mstc++U5t}F@I!MH(%7{)9F<%+6oJ4G< zjOZ#63zQMvC1P`BL{Ev>LK)FpBDPdU^p%LMlo95!*||p~{GzB;qh-#4ZwXxH4ili8w+Tv8O~F zsf^fLB92l<>?;vRDSSsxsmK2XFA*0iBW{$4ih}$IM5@p045^N>CbpI2Sw zRfd1nSNC~{%Xwb(ahn@!{$G{*Og#FKjN&F`#3K@MvohjwiMT}>@svc|s*HG6B5qSg zydV*`D{$IHs{YWDG+d{5RDnEIVMBJgA-HRpS zPG!Vr5^dx>~P8PQQ9o>fM4mWby)#LFS)70-GhY`zp){?g{f@@Cp{r;CSpj^{-a zNYq{0f5`9aCZou3V7WLwBqA{sxw=bxaxaO9PD9#%$nWbT5&rqj-&3{!qn|{)TJuFx zZFgx843LP|lo5j^;&o-j@)GfeGGe$yys3;BDG_feBSuNY+scU167h~QVr7YVR~fO2 zM7*br7%vg;Dr2EJ%7_gl;!9=3h7z$v8L_cMe5H(-FA-lWBQ}?aZ3t#Pt$kl@T{dL?dOytrF2#8F7b1G*L#}EfGzX5%)<%GiAhs z646{4@rXpUP)0m15iOMwPf0{8WyG@*(OMbtf<&}YM!YN$ZIuzPNkltk#2XUPUK#P0 zM08L_ydx1El@aetL?>m$M-tIl8L>zrmQzM7mWVFOh|eXWt1{wCiRh+`_*x>mD zh#ty_A0(ouGU8{6=%tMKO(J?LBmR(xKFWx{C8Dn~;y;P#r;IT5m;I3)yoWMhusTm6Z`AC1R{H zVw6OzqKp_V5#y8*VdJ_@5;0vFv7tn)p^VsABGyz!Y$_3JDI*q0#0+J` z780?xGGc3qn5m4|P9oM(M(iLFvy>4#OT@a$h+QROwlZQ5iC9k=v6n>5QAX?|5$h`> z_LGRY%7_CcVgqHw!4fe~8F8pYY^aPlLLxR&MjR~>8!ID@m55E05ep?^Q)R?S5;0#H zaf(E2ri?gEA{Hnk&X9=Bl@Vu4#1_hkb0uO+WyA#%v6V97B8k{q8F8sZY@>|0LL#J=qKvp(B6d|q+$Ryc zDI*?`h~1SD4@<-z%7{lLVoznn;}Wr#GU7>z*jpL#v_$NqjCf8W_Eko_AQAg1BVLw> z{gn}~O2h%mh}R|JKxM?65^<0+;%$jISQ+uIL>!`wcwZt8RYrUy5r-)w7D>e6%811h zafCABbBQ=o8L>nnj#5T^EfGg6Bfgc0W0Vo!OT@9th@T|lIAz4I5^=mT;tz>fsEqha zB2G|7{38)3DkJ`rh?A5Nrh#}<-zh1GQ&W7^etItPKwS@UG95(k8!XaYqIbVpUq*3S z$`PNQ;!Eo;&DT&yQKY*xL}MAn87W76W{NMZyEI=@8AXxq(h$vM6lbLz@!2W9wC>V; zEoBr%x=TZ}mQkEj;E2-@Z6)GdWkh?4I8PbTQ6kP)Ms${l3sMjlrufpvJBvbdynBlybxur})ykOY`-RQ55Me4be+RaY@P%Uz*}e>n_dLM@CVkyEH^U8O3EO zM|^pTFRi;Y-vAj!k?ztEgJcv}q#W^;DZaGs(tJZ?6h*pALkyKsT$OUfSEu;Wx=Zs7 zmr)eyE)6kKMsZEb5nr3)OY1JpH%dlPq`Nf4Xc@)-QjYk#6kl3*X}&QsiXz>mA;!um zu1`7Q8&Z5}-KF`)$ta3+mxh=iqqs5Uh;K^qrFEC)nV;^JEl7x=TZBB%`=L<%l0h@uhW_=G#O@QKY*x#C#dWgDFS+P>L_DyENYd8AXxq z(hyt7C>~BZ;zv?^Y2Bsywvtg4=`Ibijf~>alp}sD#h2Dynr}N9MUn2(5Ie{y9#1*q zCsKTA-KF_qiB;OG8{N zqbPF3X^2ZD;$!6~E|-W!%7`l^;uB@W)e^B-8F8&de5#DNP9i>2M%*9~pDQD7l87&q z5w}Rhmnn!PDZaEcOY_|(5nrWrR|IjVM0~A`xLYE=QAXS=5#K5!?w5$~QV`##_|i^o zn(sjmQGUPpA*H(_h=(QOM`gsL67f?CB5eS&`W~0(;%8;VlM+!R&C()!S|WZ?j^bH~ zD020rMe)2u{Hh$qixTmhGU8>4_+1(Cszm&ujCfrl{!~W1DG`4uBi@#Xzm*a1O2j|P zi1#JpUuDFH67ioh;$w+es*LzVB205`glUsaEq$L#L`fO(xkS`aMtms|b(IlcNklzm z#5WRArHuGaBI+w6evpU;%7~vNqMiD;~h_*){HC?o!ph^ESj zQp07_YP28KOc_y6BAP2B8c0M7Wke&1XsL{7DiN)e5iKO5wKAf$M6^*xw3CRo%7_jU z(M}oBSt8miBf3gN2W3PLiRh?|=q(YQlo5R;qO&q$fJ7{(j2J8tU6c{aOGH;?#Bhn| zri>UV5#5y$D@sHUWyBbX=&6iYMIw4BBPK{hZ)LPv?5rdTxb0lJjGGYUXSY8>ip+pQ-MrGnNj5tCfR#iqEB@vUA z5ywcxYRZV?Bw~s(VxdG#RYsgB5z~|rCriZY%7{}XV!ATobct9)8F8jWtf`DRTO!s{ zMw}}VGn5hMOT^mBhzliRrZVDUiC9M&aj8ViQbt@Z5$h@=u9S$`%808aVm)QVwGuH$ z8F8INtgno?K_ccVBW{+64U`eLO2j;6#O)HXp)%r5iP%UPakoTltcRXTq5>RMtms|dnzNol8C*O5#LJ0-pYvYC1M|C#E%lOuQK9i ziP%pW@vB7auZ;LzA`VbS{3#I!DkJ`uh=Y_7|4PKc%7~>BafmXa#3wEM4_id<3O-aB zQCA`kQ%2O6h{Kf;4JG0TWke&1I8qtWL?Vt-Ml_R%qm>aYB;pulL~DsSRvFP&B92o= zw3mqEl@T2!VxcmkvqYSrjOZc}Cn_VlNyJIYh#nGgvNEE#M4Y0G=qnMYDkJ(!#A(Wi zff8}LGGd5CoS}>uCJ|>UBSuKXS;~kNB;ssk#EKGejxu5;i8xmov9d&*r;J!dBFnk^$^$5X|xA&gK`uLWE3|lBesx;o0Jh-NyN>{h;1a|7G=bC5^<|C zVh4%1O&PJ1MBJ{7*hM1lP)6(~5qByh_K=9Xlo5ML#NEn>eI(*uWyJm-;vPDUrosD^ z5eG}e1Ima)J;eQGQ9P)OI6@*GQbrsl5sxS%j`a`^mkrdT%7}#$@t88=M2UD@8F8{i zJfVy@RU)2LMw}rLPo*H9PVxC`re~^qAX-tKT#77?D^D@Mj%7{gBpuSQ@EcOsf%A)v28S$Bi___@7tuo>ZIZ)pz zBbG?S56XydJjC~91NDXMl_WJRYw`oTq5c!BU(vBJ!M22iKtRWwD%C@S5$pvL`NA#LuEu~57B^5 zqr9-nh%PdUM#_k8@?11lM)Z_XG*L$M_7LSOkfzFrz8<1{j%u!q7~mnA(P?x=wNOS3 zlINn8GGciT(XuRx*2;+C646E(v4TXjRYt7nAWyBg1(N!5SLn685xtZV8%acOWyB^D(MK6EUn2S{BNj+RKV`%g64757v6Vy&P)2Mc5d)PG+eySA zWyB5=F<2R~lSB+rM(idL%PS-Hl8B+oh^;OLnPw= z5O+TCRn6}MKet*rTa&5DWHOmdRwk3F$z(DK2?>>uko?cTgphy9|0GG0WF<)^>6=U@ zE0f7&GMP*!lgVT<{odyu_qpfZbE|uL?(6mYzRvr6Kj(8l-p_f?bMC$8bMD>km>7o` z?+%e2;}G|{LmV695EI-Xdc-)y1MU#V#W=)6?hrXK4l&Uk;`kVcnB)%8GsYnvbBE{^ z;}B1{L*&Ld#8d7NC&W0!WOs<(F%B`s9pc0ohnVUPkr(3-)7>FXigAb;?ht)q9O5N+ zh?8R+VzxU(evCuRafdi1#vuybA^OHR#5{M1Q)3)rzB@!gj6=NP4slwHL%it@(J#g! z-g1XHJ;ov4c8BO6;}Gw-L!1%g5bwG}oEhT~%iJN(igAeL?hpfF9HQ7A;_MiQSm6#a zFvcN1a)&r4#vwj-hd4LJAy&CVoEPH|pSVK|igAcf-6778afr{{AqK}d#OLl17sNQk z7w!-j#yG^6?hqHnIK)@(5JO@d;%j$^p)n5ejXT7!7>D@Q9pd5`hxpDNVt9;0eD4l% zNsL4M;0|$Vj6?kB4sltGL;UOxF(SqxesPDmJjNk@b%z)k;}G@k5Ld)F#8!8RD`Om@ z!5!kN7>D@F9b#0BL;URyadnJC{NoNWI>sUXb%(en#vy!xA3h0wv*_9whiL8&ab1i< zv~-8KKE@&Ta)-Df#vu~iA#RLuh(vdYn_?WIjXT7c7>C%`9pdH~hiK;xaZ8Lt?B@<~ zYm7srxI^3);}9L(A#RUxh*Woou`v#Dusg&ZF%EHvJH)schd9(7;?5X{ILsa5t{8{N zaEG`%#v!`6LyV7ch)j2gdtw~oD0hf^V;tgWcZmC993tBtVnU2V^l*o`KgJ<)+#w!_ zafqJo5D&&UM6Nr;Lop7~+a2QJ7>CGnhnN`S5PjSs9*J>?zU~l{VjQBMJH(?g4$BsT9b#&XLtN$#@m!2UjC6;X7UK|CxYv4)Jn~L)_^OF+0W~ z#=Aqj65|l}xS4o34CEt(lESVy;*4~0j2#1YvM!MO{;XoPC+4@e`5 z#XL?GjZiK80ck|Bm_1d|2o>iKNF$2Hyjc~EP%ZrdX+*J@52&IMs+B(=jVKl~R~3y= zd-(&>h+;8M43Bn-mvfR(ravH!C>C=>cr;JX07Aw41Ja0MG4D`CBUFMvAdM&%^HNnb zLbdh>q!GnpUZ{#js6>B28c{6fovLVr+S?zHMih&AQg}2^=Om%p_yf|2Vll4>kLKx| zBowdytfO1Z^TMNDzL)dmK4Lrg9VRmg_p(5S4C@U zwD7W+Lsik*87;gl<^)x=WTSLOl#) z=2`|lxdbSL_Dql`z*ZQ}BzX5~goBtzn$o0tF(9N(%{hPsPToo~IWF6gN{-laVV$2((m=@b(%yLyU5@X&N z#kANSW3E+2BQfTUQA~^NF=mA-8i{d=L@_P4$Cz)1NAq+G#p~pFU3fH4=cL!kagi#T z*U9m6RWz@Y<4RRDuao0ORWz@Y<5j9?UMI&ttDFC zi&fDG#dJ05`LS87ibg2j*`l5wo9n})d7AipnHe*UHopyz=IM3P%gmT*wE3MXnwOa| z(`fS(RWvU%W2VvOFX7Ry_i`2FWoFDY+WcM>&CAS~X|%aQ70t`cm}#{6t}2?BnK9F7 zvqTlm%gmT*w7F6h&CAS~X|!1r9?jFU+sn+DX|(xkcr;JX053CRrqO1-Dw>y>G1F-C zkML+YyMJ~kq%f7c64rrr7jhA#F`au1nqU;uxk~8Em2?qwVixrT?10e(wB8B|n9ePR zbf$Apfsd)2^{?Vu|71%)rgKXmIGN&#oHrYpy4mv_do$9M&fLUa#C_^W#eTC{8t8F8 z6qv>ZqY(gI9egO z*%OW^a|@fa+4CH`Gt!jK{4D%P+J`R6Xkn8!Dkd{IX*kB1jaD@01S;ES&A?OqYZ~?@ z4aX9!TiB$HiZS7_JEh?mW1ejtN#|vVr`$*&Y+=G<_ejGrz+9_3lJ3tknef=1(r}D1 zYgN(QpJg)Pu{)*V7-LqbqPaiIWWr;2a>lqGHMd2MCg;trpWW`yGMVt$orHBgYOaeM z?UQEzorJrN=Kd^`36I^$`RRJp{5o6CQVGpvU|saJ#2vfTp}-p3`A2b8M}WYRKuBE*e-)EyrE2mR$LyB zfsHVLOUvbu$)(CPFu6Rw1+0HfZy=Y*)-QN<<5Q365WEoLg^}k0>*yBqC?Yv8siJ8I zqw&JX^MG}9i+Qvv8dt_V59D%rcMWrWG|7aG3FgL?G0%gri{_ngn#ZVe<5HOCf#ZUB z*KM;YY`>$~4CcnAFwXG*KPCLXp#vV6U>cEVQyhKE{J#C zHoprqMY9=<#-%W!92dm9Zkw~ikK{LTyA2qO#sx7~sjkc7o%NV=RnZ8=)rsq}cxOH4 ztEy;R5c8Vlx-8yVkNE+we<6o1(p6o^0O#u@*TEDma5cQ!hFKCG%~Rd%3;)2?@GdTt z?T5^j;n7xk`Klb(!MrvGu7-EpFiXRudCHCJU|tmiSHrt)n5)C1{Ti4~h1Jus8GHtC zLh>RR^+mH;79P!0Zd@+&A{q5Xv$-Zbny1{jT;@eG>WgO6`tC!>3GOL3E)#gyj{2h6 zTpJ$k!L}j6!}i6$8LS(Z3A}7YebH=Igh%sqB)LrBsU7u2v$-xjnx`YlWdcv_s4tq$ zN>wy26L@MzebH>LS4HD8fv0xV7tN;ihbtkcg{LFQWdcvOs6X#8H-ty~BXGMgY%d&} z!E=(!1fFbBf8JqMhewMdw}hjZ0+c{^rT{ac4O4(|V9l%tGX+=)*}U`3f+UXIT~G%X z@@85JJ(vQ_hPF%r#={mE!W3XN}$rqpsp*?>kGy%54 zaQ^YxHDLWi0M?&ir6d`~1JD4M?#q{{pm$roOa&d<8OB4f4T6V^bAi`hjv5Vlp|X4I z&d~P(a|3%G*FSJZ(6Ha6Y1p0eP{ab+VqT(X$eI(xe$k>cbTNl;Y=ZZYry6lj`6JU{ z;URnN2t{WwH(Sh06b;q{VNF){ix!=si}@y%3o5-vLyV7?C>pE@!kU=&ix!=si@Df} zCWniLeOrl!-6;<_(hKHhC&Nn=4b}up4ZBkwig+aLWO#|9Aum_Nv|qI7 z3|-7oRy4T<==ChIli?+b25VB1wcSa-V=>j(5e#c^#>?WF&G~!u;m>l>>mIiCu z1hISUPWl~-X}t@CJiAZxpOaBOyKOyRR;Iz4P`og*w!gkiXXs+C*iCMcW>Ue|62$iG zS{lyDHl3l1xz>tyUf^Ppt4906ku{ya1U4OqG2~U*{#g59|6#P((&OB;JNa0HEBpPR+r)VS~ zOQ+Dbb2Bi;To)3}>noR?gS|e~pO3Vin}K2GH>zkPAWOQVO(mV1fidQ%JB?)c3SXG=zehs^IHMWqicEh=LM)tSO%T>{EH}@~nus5aC8N8WcUZIMHwS|9?hP^4B&fv`rbDSy~);Rwn z4SQ2Moxxie=H04jSX=rRY1o_6=?orcnD?lnVdcg@i!|&_>2wBfX_!~3qH$$xpX1VS zp7L~tF6Py$Xym|6Ru*a4o6_k_buYubMimWff`5^Qy(yi};HF{Tr;3J^Te>XLus5aC z89c!-?^i{`n&@AoVQ)&OGk9ym9IJ|k)&8_b8uq4iI)f(~=5?xQSna!X(s16ib4K>J z%^OwGqW<{M{#em`cn_i_9LNpUF|ZM=Kl)t`ncQHV1}1M|w}5pqH;`vzF?8d?cRD0+ zgY`Dp1m|+Aas^~@!)68~a)Wg&)WRTcvRa=2c4y~iLK|+d2H$v`Pw6Py<|XWvTzN;? z2u5?gk?s1+7iKxfB+4K%EEp~HU2L~szA(?SZg+WHg3&_X#diDU3-d?nyywwE-^F(Q zg$o|Fzkcm8U@*7Pcd=c6;etoay*OX@Jh#wyv0Z=Rf=A84s=9@~i-oe8LV6AyV%aYY9ak*0He*TD2{6INIE`ZbAH^mv$lD(D!0JrYyW+M zxw}oXo$4%ce8lGbxNT=`bCT-1#PJcE^W(Oiwaw2|S9p$(*qk4??X2zoQPe2Tk_4Wh zhV^%m4?qK0zlK;2!PAFH0axuZHE_12)6p;=wVw0N4;Y>8o$OLD8hWnUWt!k@OQ)k@ zerZKJm`l#UOO3NFouQ3jH1zDcOcR`K>2x&gmuu$-jLvpw5ZR+(G_MncuGU-8`;IRd zI@`OA=5>P5We=hy>DF=#$?Nal+|unk7+XBcZCuf1U`fYkjBVs6zvV+)dPFZ_X8uBQ&g|D%qIiKEk`)Wu0T|{#~9XMs}PH8yCnD>O|=5ot( zP8z}7+)oGQw05U79AnJutY{vWU^Mr9nK`Z9DGkRM^Ho(e_k5W-t=%aN#~5>N&CJr?l!iRYP3Zd~M~m{6%ht=RnFvfV?M-ROqkD5ZKXSAv&k|eD+Fppj6w_`? zLmuVVm>!HAEy~<%J!^X*!j2vPwV7^8f1qLB8aY~&=OlWptnI~~(AsULo6;X>m@lfL zp~q?mvD>oAbW{2R4RfwF6S~pyHgK!I9p#b4jg_^%*b`d2&2&@x0}b<4RW$Ti?I3nr zHkocpf1qJLZbf^|k=t92_D-r7d{xGcm9@Rt6I#2?bW{2R4ReJm8hWgD5W6j#%rB)s z&@gYYqCM&OHvKGrJId!9Zmg{B#h$_1ZLYJVKhQ9rj2z8*UF15R!6S*DNvs{jZp)@L z*XD<+XebZyN3i42mQ88c z5Bb;T8CEpstFotOH_A?qZ>!RlO=;M>;9r}!S#{gv_cxS>I=-z+TQ;R(?}C4AK5IpD z=4QX+ytJ$Lo#68gWxC_*skCKN8ul*u*Jg2eZUkqE^0frzVUDk-(w0qW*t_6gn`PE( z$sQj`l${-4Po*uJ(y({Izc$NN(NG@l_X00k3$|D?KPo*uJ(y({Izc%ZvXwKIX`+iB3R|+V*IKG}rTQ;R(?}C4A z)`Zt>Cr8hI*S6QeBZ=}z$JbM7%ceB!UGT5Xm%^U`o~~X|W;(u}N?SIiVef)}Z9Zp3 za~?@Mw9Y1q5qUz=;fquF)a)Hl<-d zBBiM0h%ceB!hx}{v z?eN?@J-fMI5w;lqn;2o8fz93C!H9J8JXkjpNc87pXGMGOz@{|phx}{v^*uO}|Gz)U zv|r%!4G!b(7UkCioBQY2tfO1Z5qoejgQaWX&xdt%i#akpTBI{0>=hswEzX}6>*yBy zgCpn5$>(jt-0sa_w3hyR3aq1B?2mGs(L7D`TlsG&u#RrAZ_+!XdAj+um(hY-2CSo7 z%s0a8=8U|PcJN4={(B0nqg%|E!lQZ0E#7~Au#Rpq9}K@Vxx2ahv+vQCzJ8UpoYkyX(qg%`c;n6(h#w+nYfzJSF?`|>shS$wgG+ygDhODDo%-6zm z+sS$8EM4$Ow(&pHSVy;*{|nE}(>cjuW`5VoU{rTMSRkW~& z0-M2T9B3}$cX_y-kD75Iq40T%=JnA36P{c3u0DsccP*G3iE$XCo1-wy{oQ0w69;A| zOc|n^qga3GvsINFp(t8(a}IxawU!j$;`942W)aB9j=?^$Va;9LWS; z)eOD|8u}6z_3IZ$(_9<=t{=q{FM$_PgRhnvV^yIa34h~?B6RRfjrw)dehoEW-h*h? z-;WxpFcBJIBnP|#`XCGLikAa!9dp-R64zjm*l#W7^6+P- zo#)O&aXfea%;c^y`0?ciC%Vf1v7==uqMPtiz>fKfl^-9N!^|Mr_JA7{eB+(?Y4VARif_fPOo^K!XO zD4qdPKj+qnENOAJw@Z@HFtz|cMDqvxPOA*Q#5X2bBaWFBb#CFpWyctjnkh~B)S{f z40Hbkzo%#vjZ-AL8`%tV{{+9MXxzf)6p8LeHpARM!S5-W=X=@wab5U}*Y0|PuO*z2 zoFdWP$Yz-PC-`?4id_pv;}#`{F}fSs40Hbkzo%&2q9jywH?kS#{t13h(YS?8sOWBF zGtB)H{GOt53!6~U-NV%xX5 z-9Nz}MYM#UxvsN*(taD{@fWKTp#nPc7pqsoB4~oX{N?HsupZL+>(y&v2{h-gSNp>h zsD>{5wf7iU4(0*;suWCzO_0Su{WTU!pbbAuH5g_=9rWN%!FX5=$p`TlxKIdNA-5xc zVGHHZ;b8uf78XDw^hq;}Nw5ym4&fi!g(BDi1)U7zDX4m%%U(8ld-)hVc-r zh15)Le!xQ54*6XT<1wg&PTly&e_=8Bj^ZErg~_l1GPn_cBP@efNAv4lFb!&;TX%k) z3syklG2EYrnXnnMv-t~XD22Ai@|Vsq2kN0`55t%MYarz~{$d&C!#2pvq5e<-9gnB} zun3xmj`t^@kJO_SxexV+Lf8tqCsThYhYtDF9~M9(^f`t4!#YUoOZ}k;c0j?Y)E}y#a{={-r4V-- z^@pjj5iJO#R_Co3pbD$o2UPS$24WtaA{xBc5LEcd64;9dH81;um&;)%irv9)V(uY%j zSOU#2q5d!hs-erJ)E}0Ec^UPG>97g1Mo@n!fi{;@f0zYz&|@U^ht-gL1@(tQ*b2E< zQhz9i4p&isSOAUCXB72^b&z&7^@k$Z0R^L}KU6{IYp6dgg}7^}KTL&Thhj*$ zp8CTKsDM^@n-T0KIRf{;(EOZ=wFM5Vk}9t<)bX zq0?>D9~Oh}cIpq4VFP50rT(xCTHQhYVH(sxw{g@TRzTvN)E{QTX2`ya`a>zSy_@>O z9H@t$GxBASOU!-p#Crgs-eq+ z)E}0E`4IJo>97g19;W_K0&ONzf0zYz(Bl#6533=067`2d*b2FiQhz9i4v$fPSOAUC z=W*%}>mcn3>JLS*0}7s`{!j&-pQ8S-6ylzy{xB6bLgr-Z556ZD-+{b4<%&!hgZ1e(7_{b34JLznr~AC`mpI`xO?unDpj zP=6?aHg8aWm<4svV(3b~7@Ka@jJLjHZVB~=sjv|;-=+Rg3<*oAKg@ty=>9+I4=W*Q8TE(Rumy77qyA6^ z?Uz%3mF$S9%yunby#MEzkJ z)IhhD)E`zr;>XkJL@Wxr+M3Qi%JO z`omP%2$>tGKNLg4chnzdKrM8yrv9)JlD?<@FdMc&&PM7FWzhZy>JRgv0eaU^e^?8t zKT>~K2-_il6ZMBm==2lyhsEHlrT#D(HbBPD)E|~XtIgCOra=vK`-S?$3P`M@{xB0Z zL-w!KA4;L^7U~akpdNbuM*U$8q|{S?m=D_^?|14C70_`j^@l~!1bzRY{;(d>8>l}l zf#!cwf0zQ*&}AF-hvi`YMg3tqY=W#t>JKH*=5Oi`v!D)oY^VOP8j}B^{!j>8A-9S8 zLpgN#m-@p3XoNmHs6VWOG{a|%f+E-f1wNng6jVXyWr$nDI8Ww|ZZ=cZ*Cc_5EXyY?(gk{ibAD=M*ra=vKOY#}F z!3s#+*JliZnXnnM+xm>VpcLA+^BF^64%9=>WS=ns)JP<`a0K;-8Bhz|yHI~v2}ws%f0zwhASaXh zLm9O1O8sFTG(hie)F0MD>QU4m7Q%MO&!YZN37w9n{;(K){5yF4U@~lgjAN)jEQ40r z)E}ln4Rkw}`ojuH>_PouCTxc6xVGX48r2a4;wn1Jm>JJsr zF_-$oB4~oXCs2P_59z(BKP-XfCsKcy0@ctZkNU%MFi)cXFda5QRv+pQCD7(%>JPJ^ z4tnHMe^?F4r%-<=gsqUg^@n-T0KLzl z{;(EO&!zsb5Vk}9dDI^&q0=Dh4~xNfKJ|ymumLg#Q-4?ntuCPcFb!&;+lAC0RzTuK z)E{QTX2>2w{h<`v4yFDu2kN2cFzOF$Amw7}5A$IgJR16VKnuJ1<(k6uA%<04$`ir{!j!vpx`>{4^`0ldg>2LA?^n14^v?yWZp>q zp%@ZwqW&-gYN7iW>JKX+>1OH=vtbM5+(P}K4BFpH{b3$7K=0eAKdgn++o?Y+gzb<& zmij{_bh?B3!(#A_qy8`%HbBOm)E|~XtGj$g>qLVKj}+cmrzEg?b01c3uxd%SVZIe; zwd}#Bzt6D>?F*W$U%sXApPYcBKk<#>rm{uxH3&r%Y()6a7N|mNXVp^p%y(OmAN>h=TK2e(9 z7E_thv{+1^DoyW*$@=w9&1>coF@2^qy(^}2rRjfS`dn#RCZ@HPX$Svvyd%72y|-Lu zt$4%w?_FkR?=A0%>5B-aUY4Ytwc?h=ZcNL?RH4kSSWI6kO&^G9on`7o5{~0^q#Pap z5#vE4?0q@-9=t+KU+vO#>u!(JhhnOXVB)gtzvKMdZcQa(`r0yC`|rpuwBq(rf-y{kHu7_G?j|!Tcv50m^LU)tHt!4()5X#s+FcPF@3KzeJZAnO4AxK z{h%~`CZ-ytsa#AyDovk@X_L~lR!l!BO<#zqHiGE_>s86WvR-a>{i;$Srk^92LSKt^ zZTeD7o0X<@V){jC`btc7N>innepQ;j7Sk4`X}y?!Q<}aJQ@zquC8pn%rfOntl<}4yCD1Oh%IK+INeXd`eTjn3_c}d8ys+Vrm}2ll5;&+n-LRDNXx`=@6wUNlcxTrhUb9sM6F{OzBEfJ24%mG+FE1a57Co{!#g3{DgOudz+Zelu7X*xlr5%Hl%`|F)K_WhA*NH6rsKp^pfu%(=`^M3cro=;ntF=qbfu}6 znEESCxnep)X*xknXDUs-#dMa^bfTCBC{1}{I$LQvNlXKkraodiM`=1)Oy??1`C>Xx zX*xwrgDlhId;SffzG6CGxlgBxX|U2%Af^kHrqjf9q0-b(OcyClr;BNb($rr}LzSj8 z#57E4I#Wy+D@|vKX}HofKunh?O=pYgQl)92m@ZSA&JoiHrRiKTU9L2pC#I1~(;zWj zp){Q@rYn`E!D6~fX}Um6qm-r##dNjObdi`wD@{YhbdAz9R7}?@O~b@=ozir%n66iv zhKuP2rRfqe-KaEODyEy1rpv@MMrj%$rkjZ%?x<*WQDYLs)Om{0y*NJJo(saF;?opa< z5YxR%(~V-fPieYIOcRu*F=D!3X}VcV4=7Eyi0MJ4=~gj4q%_?oriYcL+r>0dX&Ni0 zN0g>J#57518YiYlm8Ltz^qA6gmzW+`n(h|U6H3!~F+Hg?-6N)_l%{*d^t94+pO_{q zO%ufQjM8+!n5HOA4~XemrRhO2O;ws664P@^)5Bt#rZi0y)ALHxBVwAaG))rI3rf?Y zVw#~eJtn3Xm8QqVG*fAMLQF3yO;3txmeTZ;m|j+zo)*(=rD?L5UQwE!5z`!{X^NO$ zRhpg^Q=!r{RZMf0rsu>oPidMarq`6F=fyN%X__vk*OjIh#I!(Znjxk)l%^NOv`}f9 zDW*4-rkBLDNNJiSrne%P{J&qobp5|SRQ0z)`+|Q1|FW2hl&0BYdRu9FMNEq$n7sVW z%^WekqcpuLrX@;Kp_txPn&ygWsnRr0O#f4wUK7(YrD?vH-cy=h7t?a3X@QvDSDM}s zQ?b&tP)r|0Foizv?Y}nY9#bWwcX?jOYrApHhF|AUX-WAj82qrJ*(^4^gqBQ+aOl3;bGBJIsG`%OLHA>TR zF@2^qy)UM6rKwm%{bv z()5*>YL%u+G5xGGeJ!TVO4E8V{h~B|Bc?i~sY*=0Dox*tX^YadK}^3XP2Y*BUTLZp z)9*^t_hQ5z`K(={GSM`~Fv*J^by{dNKKw zrr*WXOljIGrshi1A7bL4eOCPyW`mgGl%_w$)KY2MCZ<+O(_doR%Q7jxGQ?Vq z+3kCaPfSTlQ!_E`t28wiQ(L8pf3W<&hTEIw(!nJuUlrcc9XgD5g}UX>Tzdq%^e=Q%9v~A2A)QG$n~C zO=;R!Oou2N0?QA}Nxrh~=QO=(IK(@~b`)IEO>K157e%6;l2rlXanL&elx zX-XHL#WWl%}J^)Y~#yA4>1xU85{9ov7TWqs5e`G<6r#NlMc(V(OzbWsB)# z%cQuka;%v0mHX5~Os6PK$BC)0WoozQ=TnZDPF3#H@nR}antF=qG^MGRnEEMAxneq9 zX*xkn{gtNPVmd=VCZ@qkQ$I0XpfsH>rVEv({$jdFX*xqpLoCxld;Z>XrkI8* z_vtJ#4O5y1i0NX>q_{3PTTH{1$7!ILE>UK8j+ic0n$8u|WlGa|Vj7_|4HDDkO4Ipb z8flrrJ|*$;Y4>0;U7<8xAf_vo*n3%3nnl2X8 zwMx@)F#?ZdRJE5YsJ6 z)0JYnRcX3POt&dbqr`N(Wx9CJ&w{JPG*-D!qs4TG(sYfO#wktLis??J={hmpr8HeH zrn{A<8^knTX}VEN_b5#_iRoUYX^fceQ<`oT(*&jI7BStgG~Ftu2b8AU#Pp!jbi0@y zQkuq!>0zbm4lzwsn#PIg5vA!)F-=mM?h@0ZO4Hq9dQ52=FQ&(prhCNngwk}cn4VOc z?i15fO49@}J*_m|FQ&;#(*t69MrnFbOjDGmhs5-(()6&HrYcPn#q^xg^oW?IDNU2a z^t{sasFyaO*6&xhSKzsm=-EcFN^6-rRjAsEs9{u20OyO))K2nih%a9i{0lF)dM=W{c_F2&Q1|t)K4R zb?sge(^92rj+p+ZG`%XOWlB?_nBG&G=89>#(lk#@?<-BOiK$p=nlGjgl%^svt%zXq z@~ZN-m_AgR7K^DwX?jOYA1O^s#I#ardRI&zD@{wqRH`)nPfV+nre$JUtu(zSrcacn z0>c{ zsWg>}X`RxvN=#oVO`lk%uaTIQVp<<)we<4dQYNNv0{^|aXQofZRHZbn5!1Iy(`RDZ zpfr_>={u$AbIbJRKCG(6^cI_uu1+KM1?Mem#q_<>^o5uQcN{U(>gKz zs5E^grcFvyrI>zFn!XlOtHlbHTgntl?~Hl?Xn zOn)g&KZ~hRY1%BNzm=w6#I#*$suR;cO4F}mYO+i}?)mG}7BT&++^65fv_omC7n9NU zziXX6eD(cZOg_tW-<}_*tzv4X+^0Xp)Ldz55K{}K=}$4mDNWnN)KY2sOH8elrbaRC zr8NC5CR1tJE~a>;=^rsAC{0abYOOT=E2c!HX@{8hR+@~x19Pc1N|R4a`zTG##FV5o zH5b#qN>d9lwN;wp#MDk{YAL2tE2r1-@MQ%w6S_bFaXDN0jZmj&iRoaaXZvqkim8{<)KyHmN>ev6ouD)wC8pj=Qjd= z&QY395!1O!Q(rNir!<`^ra?+mftb!$nobkbV5O;_m@ZJ7P8ZXKN>hI^U8FRfA*LZp z)0tu#sx+M?reR9c05M&xG@UJ`;Y!m$F#?ZdRJE5YsJ6)0JYnRcX3POt&db zqr`N((sZ?$#wtyt#dL?#bd8wCDNWak=}x8TIx*d)G+i&IyOpLJ#57)Mx=~E`C`~ts z>0YI2jF|3Inr;@;1f}T~G2O2;-72OBl&0In^q|soyO zrRh#FO;Vcf64Rqf)7@fvOlcY~rpJ}0d&KmF(sZwwo>ZFd6Vp>l(*!X+tu);)rpZdv z17dncX?jphQ*^7AQ?GiRlfcX_lB4Dorno z=}o0+wwM+vO|OXQEv0FWn2MC9SH<+U(o`s>#Y)p$F}y{k0M7t>Ou z>2)#vPia~pre#Xg8)AA-X<8_z^tPBjRGJox zsYGddM@%0nO-sbIQfYcuOdl&vOT|>GH2qIZtCXf?Vp^>~|F@32tm5OPd(zHrU zUnxzi#Z;*@eIll>m8LQ=tyh{p71K9L(;6{VDNUb=>070#Tud93rq9Lnozk>cOw~%$ z7h?KeX{r#@My2UXG5w%4eI=$ErKwU(KPpXMi)oY6v|daCx{!p5J z5>tcH^s|`$RGK!6X`9mYihWFnkh|ximAEMv`tJcl%~JL6sI&bim9d2 z^tYH=DNWnOw3pKKkC;rQsYy)nO4Gk$N>G}1h^e*GWV8wV)>5L<ej2wNaXy zi)kOFsfC!5l%_Z_?W;7k6jNKJsg;=8DNTEcDOqVU#k8MgI%Cg&5inj%?Jd(edu~b) z)BeirT8k+~X-X8+0ZP-}V(OqYwGq>SO4B}KN>!SY#B`9-w6B;tDot(0bgQzxaVy_gPFn)Vk{y3&*)ro)t`1H{x>Y3d-R!LRA&EYmrAp52jR%2Do9rkIXbn!1Xq zr_$6-Oudw*qr{Y}G-ZkD1f}U{G4)oOx{K*VrRf+kL;f2m8R3hG+1fsFQyBWrZdEJq0)4wm@ZP9&JxoQrD=eehAK^Gi)onBG*Cai4 ztu#F-rpZdvLt=VHX?j>pQBCO4D;< znxiyL6Vt0o)AM2~RGOxXX|B@rf|%whO*6#wn$q;5nC2@@GsX0}()5y;7AQ@##Po*J z^s<;1DowM+^rq7EikKEDO>@NbmeTa9n2MC9LNUFqG|d&$Vx{RdF}2&N0< zzD)2AO=w^6zRK%jdN+b8^lprO*C(_uXj&kqrApHqV)~!bv`|dTl%_Yu^q$hRNKDI> zrnkiOzS2}AredY(Z83eIG%Xg>3Z>~CF@2~sy(^}Y2&Ntpo_C>r!Dq`-F@2;oEfdp9 zrRhB}eXKMs7gMRyR4k@dO4A2oTCFs#5Ys10(}!XzQ<_S|^r_PHk(kyfO)JIpSp-w) z`^c`}TRs+3xzbcBrq7k8RbpDJG_4lX7ZFUMuORku3hfKNs(d1*3ZO?u){E%}rRf_n)hJC>V){{O`c_PvBAC29TQ-R4 zrwAr5&zA4RRI4;qi|J>j>3cD4R+=`7=@+G`Moe`|( z^-5Enn0{B9eihSJrRg^@{h>7dE~W;hX{(t2RGR(}(>A5)Pci+aH2o!}My2U*G5xJH zZ5PvarRg6r{i8HBiK$6x+99TYl_q1Kz;C|nP?~&VGLrxMCfFYSZFe&<`IM&SVrr%| zwGdNtr72EKEtIB~Vv19m_7YP|rO6aiE2Sx3OnWI!31Tvprq*JLSDF&Vl%O=V5mRfW zX&*5qDoy)}X>X;et(e*LRAj5lmj5 zcSnlp@CYU^&$~=9WhhNu#dL(y)J;rXl%}J^bfnUhC8kWJ>1Z)^RhqhsshiStjF^s6 znzF@|r8FHYrlXan9%AaQG#w|VW0a;GF=Z=F$BXG$rKzWwdMHi3#B`j}lq;qjrRfAQ z9j`R?7E{j%CNHn!CyJ?81e2H7@jNl*DorPe=>(;zkC=KZO(%=#M5QTTOnFMvDPlTF zY3eJcJ`qe_&ZkqwbaDifm-DGWO!-RFX<|A>Y3e7YzDm>SVmei6>My1OrRfYYou)LM zDW-l((^+CVU1=I1rv4F3q2F1xzh4mA7yRbS*!sXDNV!0G(>5-L`*{?n7q83Un-_y5lmiQ=`It~#Y)o%F%4ImE*H}!O4CR& zU8*!)A*RcerYprXLTS26OqVN7qr@~)X}VfWS13)R#dM|8bd8vZa!DNVPDX^hfz zyO?fPn#PLh7NzM9G2N;(jT6&tO4FTUx?O3yOH5;xrn|*-htf1&OyiWMd&G37(sZww z?oyiW6Vu&F(*!Y%SDNk@(>+Sl17f;YX?jph_bE*eiD`n;^st!jk6`k0Jw8!P4=7EK zi0Q!yCNEd^lf?9p()6g99#)zj6VpVc>2WbVqBK1rrb$ZElVW;QX?jXbk10)0i|KKt zX|kA}h+y*aYUw=>;)8r!>tF(=?^&MKL|EG|d##bfxJfF}*jM@I5rZUd;`o19XKvI0r_;?Jx;mghlWXRKhQ? z1NLoU80l~v^n;;rJ=_OVU@k0!&tN0`31*yO90=XuBsdqYfU)o>%!IdKC43EaVEu}3 zTR04I;B*)UH^2mV7UscwP!2!9Hi&O!7^!d+^nvr>O1J|agO{KPK8E%1EBN*@jCRl& zj)(rxnqy=PIsoBFR_0Qw7wo#x>RJ}kb+^^^UP#wOt7~~k*A%Pk{gAGgt*+vbt~ac% z4??>BXLYRz>H5g(`Y@#H3#+Rnr0YAY>!Xma%~sdSkgi6n>*J8FxDIrcy1Q0|bR}7% zR)=(@T3w%nbal15%0jx1x4J$J={m*gS`*SW(CYduq-&VfRUXnc%If+&r0W)|Yi&r^ zeOA{OAze>fT@@i+FIrt+hIGxhy4Hns`So9gbS<_H5m*S|8H&z18(i zNLQWJRTa|JWOaQT(q$e<*M^X;WUK4DkgkqaSGBwAdw18ykgl%QfA~X4SFY7n6Vg>+ zb^RF9b*|O5DWq$-)%8;* zbS<*FwuE#QTV20}bbV@d)rWL_V|D!=()EkgwKb$`yVdoFyQ{(7^=C*|>s0>3Z6RG9 ztggR8x(>Ix8bi9Wt**aAy7H{9?IB%fT3!EybPct-n%rIghICzFjoJ~?b(7U)?B{$f zyxZ#Xg>*e`bu|m=^1tvk59xZr8r34CYp&H5=k975()G4As#QqW3ae|ckgjs8>sHgb ztKV8(cZ77+SzRxNbTwLCi$l8N4x;Oekgk2Lu5;p@`h%^m8$-IfT3ypZx_Vh%uZMJ< zYIT_*d++c1&^;>NJu1Q7)jFhWkfr}A#C4g~Rghp92|x4xJijgPf&Ag+xnTXcr1giP z1E{-oL1vwC{n5>Y1}JE67}KF1^7l84sZa-bDTXl_Y9W_*lP91Ca(LaE1l5quGsJpA zS3wp>c>+{ICVMj;Dj=hyVT^-vNI#fsA1H&gG{YDJrI30E*Bnp+DV+>sG!#Sfp}g0_ zGDu1{j1jN|5)U(s;ZOu-XReQ6A;cYS7=vLx_%g^J3ZV%G96|oj2>rW|KQutWk>n5c zke^BZPzQNk$scMVw;TCG4dfg}{!k6sS>z8@kaaZqLnUN(Cx57bjAO_j${{_Q{Gkle zjwOF6g;efITn{CXavb?XF(l`ZKP-c!oW6hrbE{GlH52a!M2LEib~54DgxnEasz zaxNf$sD|td$sej9>mu@pO2`~S{!jrKL&+b?A$=J6Lm8x9O#V;`sl&-1N+9JD@`qwb zzLfl786;gs{;&iRN02`hfq6Ok!$OD~N&YY&d{>Y^6hadWxRU&B<6{?GsgqsSlX zA^&RfhdRg`P5w{|xz~_C)IiR)UkeD23FU$sbA}&EkC8tV zf%!Q3!$OFAg8X4V_?{$xD1;^$@D%w&BlLfo{GkB~CX+wZL;f@54|R|?h5Vrwa-SuC zsDYfRkn$X*0+lN+I<{@`n;gnMwXo z49PE%KP-c!S>z8(An|4Lhaxa%lRqqkxL3#@=7Vnz`9mQz!GKrE9~z;5A^AfC6wD=m zsE7P{; z25E1RKa@gh5&1(2q`Xc3Pz=e7$sd+M(mUi2OCWIx`9l$y?~*?(gt(>T5A(tIKk|n{ zXo3OD$R8S^|9j*Q4N$P0{GlH5-zR^lgS=w$hg!(}fc&8ba#oN(R73WM}KU6@*O7e$tNdK7pp$yVW$sbA~brtzT38bthe<+6JPsksZK~fp{!xBjRl>DIx z%r)c>3nA_^@`w50D<^*_geDm9Ir&2)^j}N<&;SKrkU!Kzeg*kM9prsU{!k0K>&PE! zAm=Ochib^KB!8%atgp!*Dj{<{`9lR{d_(?F4(V0o4`q<{E%`$!q;4R8D1nsk$RCO! zxtjc886!KWbD!}LR6$k? zpD_U{Av4ZrjE4%yXz4S?K{=$i@)@^58KmvyGsZwEq?$hCdMJUEc%LyEiXl0{XIu%( zAgQ&_7y(NlG0|rXhaxcd_8CK9A;h)u8G~Uy`1bJ`=RzSg!GI*6F&i48|GqwBCNw}n zTc0r<>LI_K&zK5zke5vUPz$;Hkw4TxPJ8l)YRKN7{Gkf6Qpg`FA@cz8hYHB(K>kn; z=?9WOltEf5`9mqB9z_070x2EIABrLQVDg7$kd#LLumlnhA%7?WvlIElLWnz*{9!)$ z(#anRp$P^YM*h$U{X3ICG(f@O@d7n46MfyCkD4@F>JLjJH2;w~kBm=C_o z$R7%!2?mTHe`tjMmyr*BKQutW9pn%7kUx(6p$_uyB!8%d z+`GshY9Qxs@`q~39#8&I1zGoyKU6~Iz2pxSkZ~XRLph{RAb%)>wEM{)N+I@d50gJEfy9aA4@F=;LjJH2;wF(l%m?426)f`E$r0>LBk`@`qZ;EhK-aft{$h~)0VSXoHGMsqI52@#=pAcHwek9IE0%M|d z&auW@E2r}<%ehjV#nzZzK6`?XTIc*1f$>gfHJ#?i;`}u*CitK3v}HM)rTw=LL1(l0 zHguY$;yf@gW~Zj$1D3N}V7$}W%W|#~XF*_0@IT#Y%W@74j1M|}@uMu~YH{8g7_(DT z@Bzy?DKOsYe9m%yBF;I1F~R?Ir!C95EHK{bTxB`S#JMgoW~Zj$1D11(HU1w~PN#VY z&QHa;ADhAdYS%5x*(EUE={(MIt`TQ`V9c&{{zon6h1U2hSUH_zEazw9yvL*S$-sE0 zbB5(C7w2n%F;VX4N7neYtb$G>{yWS0xj5^*INvhjcLc^eoz`>PTr1AjojlZtp*wee zA#exunIbT@nbFLm*RZTqjO4Ne9&p1-{v}Tz8n}6 zP2JhWojbo0=er)A5s#<8?v>*FOz-r?|A@r=TAW+GIH}RzhyHi&1&^mMz5|`+dT|~e z7!%F$#F-ly?{uDKIlmF-pum_YotFp32c1Uzjh3@YoOcJtMC0sb#6KPwA9VWSr(4c% z#W^=HCK@NXFAa=$IzP6Y8^l==7!#%QhroEJv)*!kC(eHZW1@7nNq5!Vh(C}{vs#=P zficlI6~jhe-P*5 zz?dkVs{-Sl&UKcvMw~wc#zg7dYK=Dz3w`~xzDHpGD9!`ej6&xhV!an1ZjH|lbDm^5 zH;MC1kIst&h~ zZI<&_ao!&o6Q%RTz<8%~zUAB^&UXW2qI7;181HmeS&2PEW)wRA5dXDzV7$|LoaOvoocVzul+Mk8@j<5%|Ciw%F__}nrSm4a#mc##)^~Z$cyXTR(RqzEerzOXf;bQ45P^ML=#Op^V4a95JBqhL8_TI0iy=j)bp zUvVz===?a6v%+$=73cRJoekD_Yvp_%HS316ojBXD8J6NsH?7*7$WHP9y#Y%elWe>pePK z9fh+UtKjkU#iy}triinvH73IO9jVW%QLZ)qv@qu&%Xxq}FZ1XeYmI*}%sJU|b`a-F z9-T|9@gIdb*ILd4#rd5_XTSc}bP@^-f z@fWfRI-A8`!M52kDPS67jq%`&kh?GbQOkL-IH!4Z7Fpx1Rd7Fj@gJ~lrX>aTZjCj@ z!+!o^jSqeOG~ydA=ON;3d9*iY#N0a~F*}L#NRQ5b*7);TIddOjIS&=*4IZ6OSmUjg z)A@qsOc&=okIql5@z&oa1)a^}f3%#3iF2z*r`a86XpNf1??}M&MxBo z$D?!aW7y9Qtb)07jrh5iv#U54 zdvva}#)sGF|605Ac&ny14&dk9RQ8ssWJpnoWJppf&4!ess8obzA|;Wb0Yy|O6=g`F z3`r?NC}l{45E_I?2+@GVTN&QxciiW<);agw-u1klf1b}>`~L3tK5MVN_c`~TX(h~) zXs$P!+mKJxOy8gT$~dYkQv5y-mvK~+=CQ~aj``D(&s?LHFi)k~(P;KZ zey9|`&(Sbz(VS>BXCXg7!(0ZlHqA9g^JnD$$}r%#jOyC<=OM^v_E||bMlEQbY&4r>Gh4$vmu4rU zc?0q&{;_mB%=2j8XEbLbpE>t=Fk8}GYBbj&ze$Sg^WWn;I-lkaizysWj{;^Zng`bN zgYHMNeO1(tI#ZqyD@b$!&Ds`I{%3VQ@|Q~S&8uLxrg@{$9E&`PZ%&5UhURldbDrjX zb1BTWG*@dT+YZdwhX2>$Utp=t&P>EVz`T&=cB6S<{Ve7YvN38$^LWi<^ptIgKAULX z^(ha|!fa2olV-9Z8QWkE(!4YC;t?=A&>XLsjGxaogo)EK^*v`My_i^tnUxzFDk+m>p@Bl3~V=7CMA^vgUoW0nAHiHrGs{lKTeC9-4Qi zJf{@qr8IBVjQi0-zk+!`@+i(s#*f3ijOI+E`L5=jDgUpB*@@=2nklq9_YL%!^;r5H zW@nm38rs&V6!Iv3pXFs7b)k8p(QK-DXC~veFuT(1q8T^ELchY?uR$KgHwVG&MstMG zd=hyS-+TdPcbab)&Ciifzb%&QC(Ir+w;Rpkjl@K8eahoBGL9~%SpgZ|!0!Gl?9W=r zpP6RL4Ij)aXkKbGuS5Q}4D()?J!w8{G-n_`H^W>4^GceljOO>qXRgt2Ft4JSY%H13 z{VC4}J4o|xjq>6OvN7sKv#MqSV64&En)l5%Ft4WBSu=s=0L?qINPHK}-ZbymOrSYK z^UjnPqv5g0J~ZcQCeU22dEZ4GzZq!VmS?u)uHTBI>vN7sQv%F>k%`Desc?=rn zwKVHlOgWY=(7fw25nl$gAI)Bx3F%YJVaTI6GcO(s^E#T7Ev6iwuV~&k-+_5O&5tz` z(x;f4H1ABga{{wJ&0=R5&P_27(!4VhaRu2J-9WRdW&-e^??c9`&(LkEzH4|vo z*1YR85uXKf5X}oT6KG~R-{nPfFbC7@Z8V2y-u0OmkAis%%||q|Cw;yE^H!Q~7|qql zqqshk@i#DUqxrMZ-0Q3?>wchYjE2xWLNkGLucmp|XI@+%=1`jFXeQ9?s(EM1{ZW{= z(;TFkK=XdhJ5&DdfO!YanVJbP-%G~JHSf$sycXs#nj19}V#@XNZ{+uBlD_VT$~d}{ z=Fu_?;8GFXx2c1ClMJ&p%)4lIGMa-l@8+J2N5C9TbG&8(nnj<}H1C^pV2+@3_#1 z| zd6&_gjC|()d=BP=G+#5CE3=vFVLn82i_uJ;BYmRy`*S}TM-S6H9GTF+-(`(XLOyfu z^1QW&+K3H1Etr{4vZaG}mb+(EM5RzWEo-sWjsjw*7gy=A9`QK-m~Q zNwcPA0{hJRH`nPfpQ72)Xm-`S-{&z-*|1akq+%Z=tBdFXQNq z19iqzkSS~jW_$zt^DX4l`%J{kVZKRotdgFW^4m1a zTTGdI9psxxab{lJTE@{rnw^a1&B))GX6DcR9h&1TX7;(~n~P{p-*YoBUMxtonC420 zDf=_aF`wV(5}MmAX7;%!<9%C8pG#?$kzvN6UFZNJ4 zo{2_uw>uFZnb2Ay&h50qjrbe>^@+kh?d%*mLW)_7iI2mKQCy$$4|bS8(tOrv&eyzeE`#|K%{7`S zbT7JZV1MExJ5yVnnTUUdxrydKnsGl`=vOfJzer3JXC~vaGLAOWtb&Z;wxgcrotcQ6 z!Q4XgLd^ug=(D%xohk1b4s$EbyEGGMW;x&GU94dKOmnu;T#WomDSn^$eAVa|np=!! zv5Un-@y${)j((+C9vQz1$i37@CqjIt_`h(_i$QahBK|xdgO9=BnG}{}^ z%Qf%!c^%9hG;h;PK(jbE$7tS}|IRboNpq5BLQL6Bg`2x*E-;$wH1GGhNj64*(%hk$ zkUnMZ`(9FD-SgryvN8ILW@Tgy>t0v$exFTY{!O#3W&&WW(N&svro6Tq=07y=&`hBD zfaZPk37CnJI^*Xx6KKAJJc={rPYIYwn(K__ugIe~Q{KoCW**HFmukoVd!evD4@Vxw zH;cqjGY{9iZyqZfqrGX?)J#CL=(C09eX|41h-MGX1e!xN@0+7x#xy5t zCeWO#dEZN{sOZE&A*LisZRN8>YL?dW3(^L6EzdqXI;(vW>c8^ z(QK=kK(mkLeRCkp{b>%@OrZI==AD@r&xCmZ&3T#$G*=*xQouZr=2y8e^EykPC28(2 z!+;i35u8Vrkw@|StO2tW&BjKv1M(=&lo#{DJcwpLqd5|J6lWHRC%`OCbE?tgEsQf0 z@vATorn$&yexZ5a{1N6MH2=^{z(Qe-N_LUCA1TE*PmpnRD9t*^a6-HP3T7M4J5yfU z0`oAMy*0CYF7;iQcWB<3dGQ#SWoS;)OrSYS^Ujp_qJnui&1ISiG&gA8nR)TAFw4^X zM>BzD>8|ow6}1NAo1j1e&doM{%Y+b_VkZnpYalfykry=5Uxt(tN;ZKCOA* zyrsODfGfietOo>TU1kZ}x>*h2~(R`6%+wW|*(QJdWl& zM)OnTzsoSU!91R3qK9M*w;lMn$pXiGNkO6$XdY=a8z7%~9yNz~BF*+j^Gf7V{584( zW>uQE8_h>G@0-uUJc;HjnhDscI6kxd|5Ki$3$q%{4Mr1BMNa*C*QcCUFi)nr*X8+{ zz&=YOUr~xP<;4^-j;hnFXEa-B-kEvvB`{B+d8K9o`@C86&P>L4!mL4aoMr;er!?=I zFT$)z^G(eJnxAOinR)TIFi)lVi)I4N_=+s+eu!+0YSFBunLx9q=3Sr3_;i@HX|~i% zpxIUPzIhGIIy47qCeXZ3^S=2g%+qK-tC>J^k>-7K1+M=A9|mPneBq?scX7Uc>EXCC&Th$+9szon`~g1i-lMXs3B+CgW}}&!E{?GlAya zn)l5IVV+6zNzDYBuW8;l7sEV@=1R>3nyL5V-YP%jOnE&g%qBFWt88nO^|ttUL87y1 z);5|=HShYA_sD|Tlx7#r1kU|>%{x=>?#21bGx^%8O`Vwxs!p(R^O>zWF-LRy5z$Okkg%Y2G)#hj~8D-!v0w?tgWbbuTL$ zqYG$O(M+IOA9)nlr+kJD%+@s98O`3Bccwf?0%jYUcWEZD&nJ+7UW#wN4zn%Ica7#( z$fGz@-a{Pbg*0~>&9c44%)EWCA{(Q2G*3mwaJ$(8`3_QCpYs1?nC)ryGnx-0|8$0# z`mBu(G+#2B%aF$h{rP>ak&V$sG&dN{KatPepQ-<`Tud|SBN@Z~JOcSl^LW`9b);F_ zXf{J0#h?3yFfXCm)o5O?d1vOuLttJ?bChNRb^z`#J*IhQ?iJ5~c^S>Qnh7+s+;$}6 z_hELT`I*t&qIuV6Uc3utXPSFoV_WxQH1C_I$i}D(%|@CDoO?ITJ5%2H1!h;8gEbRq zjzJ#9nTdE3%x*NN8_flpcV;qv4`z3opK2zs&&`_m&7ClN&@A59wnm2{kK#;u?xu{R z%V}0Onr9=A;+t(?UO}_7(d>sjiZhe(tuTAiyvJxhg8VaSW+HwW=9M(xHkzxD$Mcc> zKEH-}70sXIs*g^b}k-wyfA zKD)u}O|!4jOkL~JO?hrM%sw1U(o`8(uSZa=Z zdnv9@dCU*yO*F4HnyGUWJvdYDFTuQ-<|v~%UGvUN#;?L0Ky#610(Jn_eVyiga}&&g zGySrrW?p<7%sXh_YcwC%yffu<#b6GjIZrczeSV~QXC~t> zVctpeC(Q(!|7hMfOWYvlT{I7qVE~tkr0y>vUt5YZ6LIQ2bB5DA%VNswcH3#bfH{I@ zH_Zezi`N2YG3EY}Akj#gqb#OeKOaW^X(@i6FTuQ<=37Q{CGzXj%w)U;<~=lb8O;N3 z6cfeovz&~hdubkrjNx{(A@VKKO!@pcn4@U+Fq(sqACYFt>&#(}ra8rEzJUB2X{P*7 z0Oox(KQo$Jkl&SI?tPP(V`!F^p=Ey_jeK<}ZjF+0LzrV}wlJEPA>S*_OvE?A97l7Q z(VT?*^fXiMhrqm_<|3n+x_wW-?=A0n4f6q--x$q(Zk9d|mE!Nuqh%b8r&%2t!!h3g z`Q{mBdzcewb~l>+ksq32j)wUl&51_yInDcXe+}kCG#6_oU_f%yo{dYTD`oJg~$(Zo~13OpZd1k6WijyIaq zkxxJ77c)*4In`j5TVldEe{= z^KqJ2YbMYfj68~Oj)eIH%?U8i7;qTzd_Pt5Zht1@Ghn_zvz2B7V4O#n zA&=rrxjzc?MVdDm%`wPN%4WVqbNZf}$@pzSqL*oYXf(e^9>vW)-<(79w>>xIeGqPy zK3}0(N`?W;!*#EMJc{cx-+YzkssE38PKJrwr|31B?JTB0CBM&DIWyW__c18SUqW;@M0Q(ij&b2ZJrnh9tY*N|H@@61GeH_T6HKB$>M6aSizUyvX2%{O4Kq4~bi z{9g0E`5VknX(sP5tWmKPX6v~);GQJPyI+~9fO+0O@fH@oHS2PzG&6S#WbC<`xV6LaRMKghO zkB4RH^AOn>eND5HW&+LH$WJ=WKjxG1Sunq$d4bXFrg=Aad9EhRZ)pzJOkkh)Yu=gi zzYLfgXwKA3pg9lurBa-kj90__j^;N;^Eb`=X7Wxkzo)sM3Nrarsm z2bxukW-a8;%rMWFakP=)U?`5^L7W|%L){E6lpM)M=h`}^}t zn44(+q?v$)!Ww10F71H1nP#!OWG;r=;=_&}?Khv-a5z=2n{BjOI|y z`+bgv`7_OlnhDqe*q_g9-kFK`b(p`5i50Q;gQJR&IF|7M3 zns

-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

56-INu{CMiu`{wt8M7?SLW;74@F^gGFHb#AD z9;cbWx!2RY-)A$J*U-FBGl6C=&HLs}F#FORrkOzVQO!G3o=*?+TAHtDCd8Cu{zK$Z zoSBTjfZ31cj}}vo&*V>8)@b3eVqQmcKh1>nDP~#C`+aVoCFb=st7s==0KYLH51t9@oTr&UbG7Du z^Bb6hY5uI4Kr`Mf`xC{PiTDs1N4LETWE|Z_v!Br%iTs2#Q(of$a|q4ZMzi98{C(y6lsEZ@Ih5uKqq!A%6yN+4=Iu12 zE&0DUV4-k-zO3ebvx;nt?x1<9W&+KNkw%667nq}H{;ion zv&_#0_NV+WNH#{JY1Yt8h$+|Pvo!De%s)5pquDJN=jH|Ia}3SP^!JAJDc7YNH1GQS z_k)(Au{3YjjAu^3wy7wyQ5K-QCk5BKtbfO0V>FKDr}%-4+qlixwiBiJFH#OdsUT(d z=KVCQ;s-L!!iKvyAE0@5&dl*NyXMTCK=YQInGe#OoHO$wnzM6eK1}n2oSBc%{3d7S zM4G?k%zTt)*QD! o`6SJKw*4Q+=l&O^-&aiCc05J1^8aJvhM>T0+|xAc{J-XZ0YDMw;{X5v diff --git a/romfs/source/ui/param/database/ui_bgm_db.prcxml b/romfs/source/ui/param/database/ui_bgm_db.prcxml new file mode 100644 index 0000000000..3e52e9b495 --- /dev/null +++ b/romfs/source/ui/param/database/ui_bgm_db.prcxml @@ -0,0 +1,24596 @@ + + + + dummy + + 10 + + + 13 + + + 14 + + + 27 + + + 25 + + + 31 + + + 28 + + + 40 + + + 87 + + + 66 + + + 38 + + + 39 + + + 34 + + + 90 + + + 98 + + + 99 + + + 101 + + + 100 + + + 12 + + + 23 + + + 54 + + + 53 + + dummy + dummy + + 70 + + + 69 + + dummy + dummy + dummy + + 105 + + + 104 + + + 15 + + + 16 + + + 32 + + + 30 + + + 103 + + + 108 + + + 42 + + + 44 + + + 93 + + + 94 + + + 88 + + + 55 + + + 56 + + dummy + + 76 + + + 67 + + + 68 + + + 102 + + + 106 + + + 107 + + + 109 + + + 43 + + + 45 + + + 41 + + + 49 + + + 51 + + + 52 + + + 47 + + + 89 + + + 57 + + + 58 + + + 46 + + dummy + + 36 + + + 18 + + + 33 + + + 59 + + + 7 + + dummy + + 29 + + dummy + dummy + + 20 + + + 65 + + + 64 + + + 63 + + + 62 + + dummy + dummy + + 61 + + + 11 + + dummy + dummy + + 60 + + + 86 + + + 37 + + + 26 + + + 22 + + + 24 + + + 48 + + + 50 + + + 74 + + + 81 + + + 80 + + + 77 + + + 78 + + + 97 + + + 19 + + + 71 + + + 72 + + + 73 + + + 82 + + + 83 + + + 75 + + + 110 + + + 111 + + + 112 + + + 96 + + + 95 + + + 17 + + + 84 + + + 85 + + + 674 + + + 675 + + + 678 + + + 679 + + + 685 + + + 690 + + + 695 + + + 697 + + + 698 + + + 702 + + + 701 + + + 687 + + + 672 + + + 683 + + + 691 + + + 689 + + + 682 + + + 680 + + + 686 + + + 696 + + + 699 + + + 704 + + + 700 + + + 693 + + + 676 + + + 694 + + + 703 + + + 681 + + + 684 + + + 688 + + + 705 + + + 692 + + + 677 + + + 673 + + dummy + dummy + + 123 + + + 120 + + + 113 + + + 116 + + + 132 + + + 133 + + + 136 + + + 117 + + + 139 + + + 124 + + + 115 + + + 114 + + + 126 + + + 138 + + + 140 + + + 127 + + + 125 + + + 118 + + + 134 + + + 119 + + + 130 + + + 131 + + + 129 + + + 128 + + + 137 + + + 662 + + + 663 + + + 661 + + + 664 + + + 665 + + + 666 + + + 667 + + + 668 + + + 670 + + + 669 + + + 671 + + + 141 + + + 145 + + + 150 + + + 152 + + + 154 + + + 155 + + + 157 + + + 156 + + + 161 + + + 169 + + + 165 + + + 167 + + + 170 + + + 172 + + + 146 + + + 153 + + + 162 + + + 173 + + + 174 + + + 160 + + + 166 + + + 163 + + + 175 + + + 176 + + + 178 + + + 177 + + + 142 + + + 151 + + + 158 + + + 147 + + + 185 + + + 184 + + + 183 + + + 182 + + + 181 + + + 171 + + + 179 + + + 168 + + + 148 + + + 164 + + + 180 + + + 159 + + + 1007 + + + 1014 + + + 1019 + + + 1021 + + + 1060 + + + 1061 + + + 1070 + + + 1057 + + + 1058 + + + 1059 + + + 1069 + + + 1067 + + + 1066 + + + 0 + + + 1 + + + ui_gametitle_hewdraw_remix + 2 + + + 5 + + + 6 + + + 966 + + + 971 + + dummy + + 988 + + + 989 + + + 990 + + + 974 + + + 976 + + + 977 + + + 979 + + + 970 + + + 981 + + + 982 + + + 983 + + + 985 + + + 986 + + dummy + + 987 + + + 967 + + dummy + dummy + + 968 + + dummy + + 969 + + dummy + + 993 + + + 994 + + + 991 + + + 992 + + + 972 + + + 973 + + + 978 + + + 980 + + + 984 + + + 975 + + dummy + + 1065 + + + 1068 + + + 1071 + + + 1000 + + + 1009 + + + 1029 + + + 1020 + + + 1062 + + + 1063 + + + 1073 + + + 1072 + + + 1064 + + + 189 + + + 192 + + + 194 + + + 196 + + + 197 + + + 198 + + + 199 + + + 201 + + + 202 + + + 186 + + + 193 + + + 203 + + + 205 + + + 204 + + + 206 + + + 200 + + + 195 + + + 190 + + + 207 + + + 210 + + + 208 + + + 209 + + + 217 + + + 214 + + dummy + dummy + dummy + + 212 + + + 218 + + + 219 + + + 213 + + + 223 + + + 221 + + + 222 + + + 224 + + + 220 + + + 247 + + + 228 + + + 231 + + + 233 + + + 235 + + + 239 + + + 240 + + + 242 + + + 245 + + + 249 + + + 226 + + dummy + dummy + dummy + dummy + dummy + dummy + + 234 + + + 229 + + + 238 + + + 248 + + + 244 + + + 250 + + + 251 + + + 255 + + + 243 + + + 241 + + + 257 + + + 232 + + + 246 + + + 230 + + + 252 + + + 253 + + + 254 + + + 256 + + + 258 + + + 259 + + + 260 + + + 261 + + + 262 + + + 227 + + dummy + + 651 + + + 653 + + + 264 + + + 265 + + + 270 + + + 274 + + + 272 + + + 277 + + + 278 + + + 271 + + + 266 + + + 275 + + + 273 + + + 276 + + + 281 + + + 279 + + + 280 + + + 286 + + + 288 + + + 287 + + + 289 + + + 292 + + + 293 + + + 294 + + + 297 + + + 295 + + + 296 + + + 300 + + + 301 + + + 304 + + + 306 + + + 298 + + + 299 + + + 302 + + + 305 + + + 303 + + + 307 + + + 308 + + + 311 + + + 309 + + + 313 + + + 314 + + + 315 + + + 312 + + + 310 + + + 316 + + + 319 + + + 331 + + + 334 + + + 336 + + + 337 + + + 338 + + + 339 + + + 340 + + + 341 + + + 342 + + + 320 + + + 317 + + + 330 + + + 327 + + + 324 + + + 322 + + + 326 + + + 335 + + + 329 + + + 325 + + + 328 + + + 332 + + + 333 + + + 321 + + + 358 + + + 363 + + + 366 + + + 378 + + + 376 + + + 377 + + + 381 + + + 380 + + + 382 + + + 379 + + + 383 + + + 391 + + + 367 + + + 373 + + + 372 + + + 364 + + + 384 + + + 385 + + + 387 + + + 389 + + + 395 + + + 393 + + + 394 + + + 396 + + + 392 + + + 386 + + + 374 + + + 388 + + + 369 + + + 398 + + + 365 + + + 397 + + + 370 + + + 371 + + + 375 + + + 390 + + + 359 + + + 348 + + + 344 + + + 356 + + + 353 + + + 354 + + + 355 + + + 346 + + + 352 + + + 349 + + + 345 + + + 350 + + + 441 + + + 438 + + + 440 + + + 437 + + + 439 + + + 442 + + + 445 + + + 444 + + + 443 + + + 448 + + + 446 + + + 447 + + + 449 + + + 436 + + + 425 + + dummy + + 426 + + + 432 + + + 433 + + + 430 + + + 431 + + + 427 + + + 428 + + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + + 429 + + + 434 + + dummy + + 435 + + dummy + + 542 + + + 539 + + + 543 + + + 545 + + + 547 + + + 541 + + + 546 + + + 548 + + + 544 + + + 540 + + + 549 + + + 897 + + + 896 + + + 453 + + + 451 + + + 454 + + + 456 + + + 455 + + + 465 + + + 466 + + + 467 + + + 468 + + + 469 + + + 470 + + + 461 + + + 459 + + + 457 + + + 458 + + + 460 + + + 462 + + + 463 + + + 452 + + + 450 + + + 464 + + + 414 + + + 412 + + + 415 + + + 413 + + + 421 + + + 419 + + + 416 + + + 418 + + + 423 + + + 424 + + + 417 + + + 420 + + + 422 + + + 873 + + + 871 + + + 92 + + + 864 + + + 862 + + + 866 + + + 876 + + + 877 + + + 878 + + + 879 + + + 887 + + + 870 + + + 875 + + + 861 + + + 863 + + + 874 + + + 483 + + + 860 + + + 868 + + + 481 + + + 883 + + + 884 + + + 869 + + + 882 + + + 881 + + + 859 + + + 867 + + + 880 + + + 898 + + + 900 + + + 411 + + + 79 + + + 889 + + + 909 + + + 906 + + + 893 + + + 913 + + + 910 + + + 894 + + + 908 + + + 923 + + + 904 + + + 914 + + + 902 + + + 903 + + + 912 + + + 482 + + + 932 + + + 488 + + + 492 + + + 493 + + + 936 + + + 937 + + + 472 + + + 478 + + + 476 + + + 916 + + + 918 + + + 919 + + + 907 + + + 925 + + + 490 + + + 940 + + + 939 + + + 885 + + + 886 + + + 890 + + + 947 + + + 943 + + + 473 + + + 477 + + + 480 + + + 950 + + + 917 + + + 905 + + + 924 + + + 930 + + + 926 + + + 485 + + + 484 + + + 486 + + + 487 + + + 489 + + + 491 + + + 888 + + + 895 + + + 933 + + + 934 + + + 946 + + + 944 + + + 941 + + + 951 + + + 948 + + + 949 + + + 927 + + + 928 + + + 911 + + + 479 + + + 920 + + + 899 + + + 935 + + + 956 + + + 901 + + + 960 + + + 931 + + + 915 + + + 471 + + + 474 + + + 475 + + + 929 + + + 921 + + + 922 + + + 938 + + + 953 + + + 954 + + + 952 + + + 955 + + + 360 + + + 361 + + + 368 + + + 891 + + + 892 + + + 957 + + + 958 + + + 959 + + + 961 + + + 962 + + + 501 + + + 510 + + + 504 + + + 945 + + + 942 + + + 575 + + + 577 + + + 585 + + + 594 + + + 570 + + + 578 + + + 586 + + + 593 + + + 595 + + + 596 + + + 581 + + + 590 + + + 583 + + + 572 + + + 573 + + + 574 + + + 576 + + + 579 + + + 587 + + + 588 + + + 589 + + + 592 + + + 597 + + + 571 + + + 582 + + + 591 + + + 598 + + + 599 + + + 600 + + + 584 + + + 580 + + dummy + dummy + dummy + + 617 + + dummy + + 634 + + dummy + + 618 + + dummy + + 635 + + dummy + + 612 + + + 613 + + + 614 + + + 615 + + + 621 + + dummy + + 638 + + dummy + + 623 + + dummy + + 640 + + dummy + + 620 + + dummy + + 637 + + dummy + + 619 + + dummy + + 636 + + dummy + + 622 + + dummy + + 639 + + dummy + + 624 + + dummy + + 641 + + dummy + + 625 + + dummy + + 642 + + dummy + + 626 + + dummy + + 643 + + dummy + + 627 + + dummy + + 644 + + dummy + + 628 + + dummy + + 645 + + dummy + + 631 + + dummy + + 648 + + dummy + + 629 + + dummy + + 646 + + dummy + + 630 + + dummy + + 647 + + dummy + + 632 + + dummy + + 649 + + dummy + + 616 + + + 633 + + + 514 + + + 515 + + + 517 + + + 518 + + + 521 + + dummy + + 523 + + + 524 + + dummy + + 528 + + + 519 + + + 526 + + + 527 + + + 520 + + + 529 + + + 516 + + + 513 + + + 530 + + + 531 + + + 532 + + + 533 + + + 534 + + + 535 + + + 536 + + + 537 + + + 538 + + + 522 + + dummy + + 525 + + dummy + + 1026 + + + 121 + + + 1027 + + + 215 + + + 236 + + + 8 + + + 143 + + + 187 + + + 268 + + + 284 + + + 998 + + + 1001 + + + 1033 + + + 1008 + + + 1031 + + + 1030 + + + 1032 + + + 1015 + + dummy + + 1025 + + + 550 + + + 551 + + + 552 + + + 554 + + + 553 + + + 555 + + + 556 + + + 557 + + + 559 + + + 560 + + + 561 + + + 558 + + + 562 + + + 563 + + + 564 + + + 565 + + + 566 + + + 567 + + + 568 + + + 569 + + + 601 + + + 602 + + + 603 + + + 606 + + + 607 + + + 610 + + + 611 + + + 608 + + + 604 + + + 605 + + + 609 + + + 9 + + + 35 + + + 122 + + + 191 + + + 211 + + + 237 + + + 225 + + + 267 + + + 285 + + + 290 + + + 323 + + + 347 + + + 865 + + + 410 + + + 21 + + + 291 + + + 362 + + + 872 + + + 343 + + + 91 + + + 1010 + + + 1022 + + + 149 + + + 1016 + + + 135 + + + 188 + + + 269 + + + 318 + + + 1002 + + + 1017 + + + 351 + + + 1004 + + + 1003 + + + 1011 + + + 144 + + + 216 + + + 1023 + + + 1035 + + + 1036 + + + 1039 + + + 995 + + + 1034 + + + 1037 + + + 1038 + + + 999 + + + 996 + + + 997 + + + 1006 + + + 1012 + + + 1018 + + + 1056 + + + 1052 + + + 1053 + + + 1054 + + + 1055 + + + 1047 + + + 1024 + + + 1005 + + + 1048 + + + 1049 + + + 1050 + + + 1051 + + + 1013 + + + 1040 + + + 1028 + + + 1041 + + + 1042 + + + 1043 + + + 1045 + + + 1046 + + + 1044 + + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + + 714 + + + 715 + + + 711 + + + 712 + + + 713 + + + 708 + + + 706 + + + 709 + + + 710 + + + 716 + + + 707 + + dummy + dummy + dummy + dummy + + 724 + + + 723 + + + 718 + + + 717 + + + 719 + + + 720 + + + 721 + + + 722 + + dummy + + 726 + + + 725 + + + 727 + + + 728 + + + 729 + + + 730 + + + 731 + + + 732 + + + 733 + + + 734 + + dummy + + 963 + + + 738 + + + 737 + + + 735 + + + 736 + + + 740 + + + 741 + + + 742 + + + 743 + + + 744 + + + 745 + + + 746 + + + 747 + + + 776 + + + 749 + + + 750 + + + 752 + + + 755 + + + 757 + + + 751 + + + 758 + + + 759 + + + 754 + + + 753 + + + 756 + + + 761 + + + 762 + + + 763 + + + 764 + + + 765 + + + 766 + + + 767 + + + 768 + + + 769 + + + 748 + + + 771 + + + 760 + + + 770 + + + 772 + + + 773 + + + 774 + + + 775 + + + 777 + + + 778 + + + 779 + + + 739 + + + 780 + + + 781 + + + 783 + + + 784 + + + 782 + + dummy + + 399 + + + 400 + + + 401 + + + 408 + + + 409 + + + 403 + + + 404 + + + 402 + + + 405 + + + 407 + + + 406 + + dummy + + 964 + + + 785 + + + 787 + + + 786 + + + 788 + + + 789 + + + 790 + + + 791 + + + 792 + + + 793 + + + 794 + + + 795 + + + 797 + + + 798 + + + 799 + + + 800 + + + 796 + + + 801 + + + 802 + + dummy + + 808 + + + 806 + + + 804 + + + 803 + + + 809 + + + 805 + + + 807 + + dummy + + 650 + + + 656 + + + 657 + + + 658 + + + 655 + + + 659 + + + 652 + + + 654 + + + 660 + + dummy + + 494 + + + 502 + + + 505 + + + 495 + + + 496 + + + 497 + + + 498 + + + 499 + + + 500 + + + 503 + + + 506 + + + 507 + + + 508 + + + 509 + + + 511 + + + 512 + + dummy + + 810 + + + 811 + + + 812 + + + 813 + + + 814 + + + 816 + + + 817 + + + 818 + + + 819 + + + 820 + + + 821 + + + 822 + + + 823 + + + 824 + + + 825 + + + 826 + + + 827 + + + 828 + + + 829 + + + 830 + + + 831 + + + 832 + + + 833 + + + 834 + + + 835 + + + 836 + + + 837 + + + 838 + + + 839 + + + 840 + + + 841 + + + 842 + + + 843 + + + 844 + + + 845 + + + 846 + + + 847 + + + 848 + + + 815 + + dummy + + 965 + + + 849 + + + 850 + + + 851 + + + 852 + + + 853 + + + 854 + + + 855 + + + 856 + + + 857 + + dummy + + 858 + + + ui_bgm_hdr_abyssal_ruins + set_hdr_abyssal_ruins + bgm_rarity_0 + record_new_arrange + ui_gametitle_pokemon_black_white + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + 2511 + 0 + 283 + 9835 + true + true + true + false + 0 + true + 1 + true + true + true + false + false + + + + false + + + ui_bgm_hdr_team_skull_megamix + set_hdr_team_skull_megamix + bgm_rarity_0 + record_new_arrange + ui_gametitle_pokemon_sun_moon + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + 2512 + 0 + 282 + 9836 + true + true + true + false + 0 + true + 1 + true + true + true + false + false + + + + false + + + ui_bgm_hdr_versus_julius + set_hdr_versus_julius + bgm_rarity_0 + record_new_arrange + ui_gametitle_fire_emblem_holy_war + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + 2513 + 0 + 357 + 9837 + true + true + true + false + 0 + true + 1 + true + true + true + false + false + + + + false + + + ui_bgm_hdr_cloudrunner_fortress + set_hdr_cloudrunner_fortress + bgm_rarity_0 + record_new_arrange + ui_gametitle_star_fox_adventures + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + 2514 + 0 + 263 + 9838 + true + true + true + false + 0 + true + 1 + true + true + true + false + false + + + + false + + + ui_bgm_hdr_projectnx_theme + set_hdr_projectnx_theme + bgm_rarity_0 + record_original + ui_gametitle_projectnx + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + 2515 + 0 + 4 + 9839 + true + true + true + false + 0 + true + 1 + true + true + true + false + false + + + + false + + + ui_bgm_hdr_w_hole_equation + set_hdr_w_hole_equation + bgm_rarity_0 + record_original + ui_gametitle_hewdraw_remix + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + ui_gametitle_none + 2516 + 0 + 3 + 9840 + true + true + true + false + 0 + true + 1 + true + true + true + false + false + + + + false + + + + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + + set_hdr_abyssal_ruins + + info_hdr_abyssal_ruins + + + + + + + + + + + + + + + + + + set_hdr_team_skull_megamix + + info_hdr_team_skull_megamix + + + + + + + + + + + + + + + + + + set_hdr_versus_julius + + info_hdr_versus_julius + + + + + + + + + + + + + + + + + + set_hdr_cloudrunner_fortress + + info_hdr_cloudrunner_fortress + + + + + + + + + + + + + + + + + + set_hdr_projectnx_theme + + info_hdr_projectnx_theme + + + + + + + + + + + + + + + + + + set_hdr_w_hole_equation + + info_hdr_w_hole_equation + + + + + + + + + + + + + + + + + + + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + + info_hdr_abyssal_ruins + stream_hdr_abyssal_ruins + sound_condition_none + sound_condition_process_add + 0 + 0 + 0 + 55 + 0 + 0 + 0 + 55 + 0 + + + info_hdr_team_skull_megamix + stream_hdr_team_skull_megamix + sound_condition_none + sound_condition_process_add + 0 + 0 + 0 + 55 + 0 + 0 + 0 + 55 + 0 + + + info_hdr_versus_julius + stream_hdr_versus_julius + sound_condition_none + sound_condition_process_add + 0 + 0 + 0 + 55 + 0 + 0 + 0 + 55 + 0 + + + info_hdr_cloudrunner_fortress + stream_hdr_cloudrunner_fortress + sound_condition_none + sound_condition_process_add + 0 + 0 + 0 + 55 + 0 + 0 + 0 + 55 + 0 + + + info_hdr_projectnx_theme + stream_hdr_projectnx_theme + sound_condition_none + sound_condition_process_add + 0 + 0 + 0 + 55 + 0 + 0 + 0 + 55 + 0 + + + info_hdr_w_hole_equation + stream_hdr_w_hole_equation + sound_condition_none + sound_condition_process_add + 0 + 0 + 0 + 55 + 0 + 0 + 0 + 55 + 0 + + + + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + + stream_hdr_abyssal_ruins + hdr_abyssal_ruins + + + + + 1 + 00:00:00.000 + 400 + + 00:00:00.000 + + + + + + + + stream_hdr_team_skull_megamix + hdr_team_skull_megamix + + + + + 1 + 00:00:00.000 + 400 + + 00:00:00.000 + + + + + + + + stream_hdr_versus_julius + hdr_versus_julius + + + + + 1 + 00:00:00.000 + 400 + + 00:00:00.000 + + + + + + + + stream_hdr_cloudrunner_fortress + hdr_cloudrunner_fortress + + + + + 1 + 00:00:00.000 + 400 + + 00:00:00.000 + + + + + + + + stream_hdr_projectnx_theme + hdr_projectnx_theme + + + + + 1 + 00:00:00.000 + 400 + + 00:00:00.000 + + + + + + + + stream_hdr_w_hole_equation + hdr_w_hole_equation + + + + + 1 + 00:00:00.000 + 400 + + 00:00:00.000 + + + + + + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + + + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + + + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + + + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + + + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + + + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + + + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + + + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + + + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + + + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + + + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + + + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + + + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + + + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + + + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + + + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + + + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + + + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + + + 53 + 53 + 53 + 53 + 53 + 53 + 53 + 53 + 53 + 53 + 53 + 53 + + + 54 + 54 + 54 + 54 + 54 + 54 + 54 + 54 + 54 + 54 + 54 + 54 + + dummy + + 55 + 55 + 55 + 55 + 55 + 55 + 55 + 55 + 55 + 55 + 55 + 55 + + + + + ui_bgm_crs2_01_menu + 0 + 10000 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + ui_bgm_crs2_04_kumite + 8 + 200 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + ui_bgm_w30_sbdx_menu + 3 + 850 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + ui_bgm_w33_sbdx_menu2 + 950 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + ui_bgm_x02_sbx_menu1 + 950 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + ui_bgm_crs01_menu + 7 + 1050 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + ui_bgm_x01_sbx_maintheme + 6 + 350 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + ui_bgm_crs23_asobikata + 10 + 150 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + ui_bgm_t21_sb_characterselect + 200 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + ui_bgm_x27_sbx_staffroll + 14 + 200 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + ui_bgm_x21_coinshooter + 15 + 250 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + ui_bgm_x07_sbx_onlinerenshuustage + 16 + 200 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + ui_bgm_crs07_online + 17 + 300 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + ui_bgm_hdr_projectnx_theme + 2 + 3000 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + ui_bgm_hdr_w_hole_equation + 1 + 6800 + + + ui_bgm_crs2_23_edit_common + 19 + 400 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + ui_bgm_w44_sbdx_targetwokowase + 11 + 250 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + ui_bgm_w41_sbdx_figuremeikan + 12 + 200 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + ui_bgm_x19_sbx_figuremeikan + 400 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + ui_bgm_x15_sbx_rest + 13 + 200 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + dummy + dummy + dummy + dummy + dummy + + + dummy + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 0 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + + dummy + dummy + dummy + dummy + + 0 + + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + + 16 + 16 + 17 + 18 + 16 + 18 + 17 + 18 + 17 + 19 + + + 17 + 17 + 18 + 19 + 17 + 19 + 18 + 18 + 19 + 18 + 20 + + + 18 + 18 + 19 + 18 + 20 + 19 + 19 + 20 + 19 + 21 + + + 19 + 19 + 20 + 20 + 19 + 21 + 20 + 20 + 21 + 20 + 22 + + + 20 + 24 + 21 + 21 + 24 + 22 + 21 + 22 + 21 + 23 + + + 21 + 25 + 22 + 22 + 25 + 23 + 26 + 22 + 23 + 22 + 24 + + + 22 + 26 + 23 + 23 + 26 + 24 + 27 + 23 + 24 + 23 + 25 + + + 23 + 27 + 24 + 24 + 27 + 25 + 28 + 24 + 25 + 24 + 26 + + + 24 + 28 + 25 + 25 + 28 + 26 + 29 + 25 + 26 + 25 + 27 + + + 25 + 29 + 26 + 26 + 29 + 27 + 30 + 26 + 27 + 26 + 28 + + + 26 + 30 + 27 + 30 + 28 + 0 + 31 + 27 + 28 + 27 + 29 + + + 27 + 31 + 27 + 28 + 31 + 29 + 0 + 32 + 28 + 29 + 28 + 30 + + + 28 + 32 + 28 + 32 + 30 + 0 + 33 + 29 + 30 + 29 + 31 + + + 29 + 33 + 29 + 29 + 33 + 31 + 0 + 34 + 30 + 31 + 30 + 32 + + + 30 + 34 + 30 + 30 + 34 + 0 + 35 + 31 + 32 + 31 + 33 + + + 31 + 35 + 31 + 31 + 35 + 32 + 0 + 36 + 32 + 33 + 32 + 34 + + + 32 + 36 + 32 + 32 + 36 + 0 + 37 + 33 + 34 + 33 + 35 + + + 33 + 37 + 33 + 33 + 37 + 33 + 38 + 34 + 35 + 34 + 36 + + + 34 + 38 + 34 + 34 + 38 + 34 + 0 + 39 + 35 + 36 + 35 + 37 + + + 35 + 39 + 35 + 35 + 39 + 35 + 0 + 40 + 36 + 37 + 36 + 38 + + + 36 + 40 + 36 + 36 + 40 + 36 + 0 + 41 + 37 + 38 + 37 + 39 + + + 37 + 41 + 37 + 37 + 41 + 37 + 0 + 42 + 38 + 39 + 38 + 40 + + + 38 + 42 + 38 + 38 + 42 + 38 + 0 + 43 + 39 + 40 + 39 + 41 + + + 39 + 43 + 39 + 39 + 43 + 39 + 0 + 44 + 40 + 41 + 40 + 42 + + + 40 + 44 + 40 + 40 + 44 + 40 + 0 + 45 + 41 + 42 + 41 + 43 + + + 41 + 45 + 41 + 41 + 45 + 41 + 0 + 46 + 42 + 43 + 42 + 44 + + + 42 + 46 + 42 + 42 + 46 + 42 + 0 + 47 + 43 + 44 + 43 + 45 + + + 43 + 47 + 43 + 43 + 47 + 43 + 0 + 48 + 44 + 45 + 44 + 46 + 46 + + + 44 + 48 + 44 + 44 + 48 + 44 + 0 + 49 + 45 + 46 + 45 + 47 + 47 + + + 45 + 49 + 45 + 45 + 49 + 45 + 0 + 50 + 46 + 47 + 46 + 48 + 48 + + + 46 + 50 + 46 + 46 + 50 + 46 + 0 + 51 + 48 + 47 + 46 + 49 + 49 + + + 47 + 51 + 47 + 47 + 51 + 47 + 52 + 47 + 48 + 47 + 50 + 50 + + + 48 + 52 + 48 + 48 + 52 + 48 + 53 + 48 + 49 + 48 + 51 + 51 + + + 49 + 53 + 49 + 49 + 53 + 49 + 54 + 49 + 49 + 49 + 52 + + + 50 + 54 + 50 + 50 + 54 + 50 + 0 + 55 + 50 + 50 + 50 + 50 + 52 + 53 + + + 51 + 55 + 51 + 51 + 55 + 51 + 0 + 56 + 51 + 51 + 51 + 51 + 53 + 54 + + + 52 + 56 + 52 + 52 + 56 + 52 + 57 + 52 + 52 + 52 + 52 + 54 + 55 + + + 53 + 57 + 53 + 53 + 57 + 53 + 251 + 58 + 53 + 53 + 53 + 53 + 55 + 56 + + + 54 + 58 + 54 + 54 + 58 + 54 + 502 + 59 + 54 + 54 + 54 + 54 + 56 + 57 + + + 55 + 59 + 55 + 55 + 59 + 55 + 0 + 60 + 55 + 55 + 55 + 55 + 57 + + + 56 + 60 + 56 + 56 + 60 + 56 + 502 + 61 + 56 + 56 + 56 + 56 + 58 + 58 + + + 57 + 61 + 57 + 57 + 61 + 57 + 251 + 62 + 57 + 57 + 57 + 57 + 59 + 59 + + + 58 + 62 + 58 + 58 + 62 + 58 + 251 + 63 + 58 + 58 + 58 + 58 + 60 + 60 + + + 59 + 63 + 59 + 59 + 63 + 59 + 0 + 21 + 59 + 59 + 59 + 59 + 61 + 61 + + + 60 + 64 + 60 + 60 + 64 + 60 + 0 + 64 + 60 + 60 + 60 + 60 + 62 + 62 + + + 61 + 65 + 61 + 61 + 65 + 61 + 0 + 65 + 61 + 61 + 61 + 61 + 63 + 63 + + + 62 + 66 + 62 + 62 + 66 + 62 + 0 + 66 + 62 + 62 + 62 + 62 + 64 + 64 + + + 63 + 67 + 63 + 63 + 67 + 63 + 0 + 67 + 63 + 63 + 63 + 63 + 65 + 65 + + + 64 + 68 + 64 + 64 + 68 + 64 + 0 + 68 + 64 + 64 + 64 + 64 + 66 + 66 + + + 65 + 69 + 65 + 65 + 69 + 65 + 0 + 69 + 65 + 65 + 65 + 65 + 67 + 67 + + + 66 + 70 + 66 + 66 + 70 + 66 + 0 + 70 + 66 + 66 + 66 + 66 + 68 + 68 + + + 67 + 71 + 67 + 67 + 71 + 67 + 0 + 71 + 67 + 67 + 67 + 67 + 69 + 69 + + + 68 + 72 + 68 + 68 + 72 + 68 + 0 + 72 + 68 + 68 + 68 + 68 + 70 + 70 + + + 69 + 73 + 69 + 69 + 73 + 69 + 73 + 69 + 69 + 69 + 69 + 71 + 71 + + + 70 + 74 + 70 + 70 + 74 + 70 + 0 + 74 + 70 + 70 + 70 + 70 + 72 + 72 + + + 71 + 75 + 71 + 71 + 75 + 71 + 0 + 75 + 71 + 71 + 71 + 71 + 73 + 73 + + + 72 + 76 + 72 + 72 + 76 + 72 + 0 + 76 + 72 + 72 + 72 + 72 + 74 + 74 + + + 73 + 77 + 73 + 73 + 77 + 73 + 0 + 77 + 73 + 73 + 73 + 73 + 75 + 75 + + + 74 + 78 + 74 + 74 + 78 + 74 + 0 + 78 + 74 + 74 + 74 + 74 + 76 + 76 + + + 75 + 79 + 75 + 75 + 79 + 75 + 0 + 79 + 75 + 75 + 75 + 75 + 77 + 77 + + + 76 + 80 + 76 + 76 + 80 + 76 + 0 + 80 + 76 + 76 + 76 + 76 + 78 + 78 + + + 77 + 81 + 77 + 77 + 81 + 77 + 0 + 81 + 77 + 77 + 77 + 77 + 79 + 79 + + + 78 + 82 + 78 + 78 + 82 + 78 + 0 + 82 + 78 + 78 + 78 + 78 + 80 + 80 + + + 79 + 83 + 79 + 79 + 83 + 79 + 0 + 83 + 79 + 79 + 79 + 79 + 81 + 81 + + + 80 + 84 + 80 + 80 + 84 + 80 + 0 + 84 + 80 + 80 + 80 + 80 + 82 + 82 + + + 81 + 85 + 81 + 81 + 85 + 81 + 0 + 85 + 81 + 81 + 81 + 81 + 83 + 83 + + + 82 + 86 + 82 + 82 + 86 + 82 + 86 + 82 + 82 + 82 + 82 + 84 + 84 + + + 83 + 20 + 83 + 83 + 20 + 83 + 22 + 83 + 83 + 83 + 83 + 83 + 85 + 85 + + + 84 + 21 + 84 + 84 + 21 + 84 + 23 + 84 + 84 + 84 + 84 + 84 + 86 + 86 + + + 85 + 22 + 85 + 85 + 22 + 85 + 24 + 85 + 85 + 85 + 85 + 85 + 87 + 87 + + + 86 + 23 + 86 + 86 + 23 + 86 + 25 + 86 + 86 + 86 + 86 + 86 + 88 + 88 + + + 87 + 87 + 87 + 87 + 87 + 87 + 87 + 87 + 87 + 87 + 87 + 87 + 87 + 89 + + + 88 + 88 + 88 + 88 + 88 + 88 + 0 + 88 + 88 + 88 + 88 + 88 + 88 + 88 + 89 + 90 + + + 89 + 89 + 89 + 89 + 89 + 89 + 0 + 89 + 89 + 89 + 89 + 89 + 89 + 89 + 90 + 91 + + + 90 + 90 + 90 + 90 + 90 + 90 + 90 + 90 + 90 + 90 + 90 + 90 + 90 + 91 + 92 + + dummy + + 2150 + + + 10000 + + + 1004 + + + 1004 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + + + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 0 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 0 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 0 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 0 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 0 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 0 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 0 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 0 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 0 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 0 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 0 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 0 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 0 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 0 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 0 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 0 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 0 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 0 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 0 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 0 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 0 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 0 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 0 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 0 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 0 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 0 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + 0 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + + + 0 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + + + 0 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + + + 38 + 38 + 38 + 38 + 38 + 38 + 38 + + + 39 + 39 + 39 + 39 + 39 + 39 + 39 + + + 0 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + + + 0 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + + + 0 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + + + 43 + 43 + 43 + 43 + 43 + 43 + 43 + + + 0 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + + + 0 + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 0 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 0 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 0 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 0 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 0 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 0 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 0 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 0 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 0 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 0 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 0 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 0 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 0 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 0 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 0 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 0 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 0 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 0 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 0 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 0 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 0 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 0 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 0 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 0 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 0 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 0 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 0 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 0 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 0 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 0 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 0 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 0 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + 0 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + + + 0 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + + + 0 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + + + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + + + + + 3 + 3 + 3 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 4 + 4 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 4 + 5 + 1 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 1 + 4600 + 6 + 5 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 7 + 6 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 1 + 7 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 8 + 8 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 9 + 9 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 10 + 10 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 2 + 11 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 12 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 13 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 2 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + ui_bgm_hdr_cloudrunner_fortress + 0 + 8750 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + 2 + 3450 + 4 + 4 + 4 + 4 + 4 + 0 + 4 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 4 + 2 + 5 + 5 + 5 + 5 + 0 + 5 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 5 + 5 + 6 + 6 + 6 + 6 + 0 + 6 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 3 + 1200 + 6 + 7 + 7 + 7 + 7 + 0 + 7 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 7 + 8 + 8 + 8 + 8 + 0 + 8 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 8 + 9 + 9 + 9 + 9 + 0 + 9 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 9 + 10 + 10 + 10 + 10 + 0 + 10 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 3 + 11 + 11 + 11 + 11 + 0 + 11 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 12 + 12 + 12 + 12 + 0 + 12 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 13 + 13 + 13 + 13 + 0 + 13 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 14 + 14 + 14 + 14 + 0 + 14 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 15 + 3 + 15 + 15 + 0 + 15 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 16 + 15 + 16 + 16 + 0 + 16 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 17 + 2 + 17 + 17 + 0 + 17 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 18 + 16 + 18 + 18 + 0 + 18 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 19 + 17 + 19 + 19 + 0 + 19 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 20 + 18 + 2 + 20 + 0 + 20 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 21 + 19 + 3 + 21 + 0 + 21 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 22 + 20 + 20 + 22 + 0 + 22 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 23 + 21 + 21 + 23 + 0 + 23 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 24 + 22 + 22 + 24 + 0 + 2 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 25 + 23 + 23 + 3 + 0 + 24 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 26 + 24 + 24 + 2 + 0 + 25 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 27 + 25 + 25 + 25 + 0 + 3 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 28 + 26 + 26 + 26 + 0 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 29 + 27 + 27 + 27 + 0 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 30 + 28 + 28 + 28 + 0 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 29 + 31 + 29 + 29 + 29 + 0 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 30 + 2 + 30 + 30 + 30 + 0 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 31 + 31 + 32 + 31 + 31 + 31 + 0 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 32 + 3 + 32 + 32 + 32 + 0 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 33 + 33 + 33 + 33 + 33 + 33 + 0 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 34 + 34 + 34 + 34 + 34 + 34 + 0 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + ui_bgm_hdr_team_skull_megamix + 0 + 10000 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + ui_bgm_hdr_abyssal_ruins + 1 + 5750 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + 1 + 0 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + + + 1 + 7150 + 3 + 3 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 3 + 4 + 4 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 4 + 5 + 5 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 5 + 6 + 6 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 2 + 3350 + 7 + 7 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 8 + 8 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 9 + 9 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 10 + 10 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 11 + 11 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 12 + 12 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 13 + 13 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 14 + 14 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 15 + 15 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 16 + 2 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 17 + 16 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 18 + 17 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 19 + 18 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 20 + 19 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 21 + 20 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 22 + 21 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 23 + 22 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 24 + 23 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 25 + 24 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 26 + 25 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 27 + 26 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 28 + 27 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 29 + 1 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 30 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 31 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 32 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 31 + 33 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 34 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 33 + 1 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 34 + 35 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + 35 + 2 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + + + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + + + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + + + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + + + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + + + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + + + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + + + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + + + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + + + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + + + 51 + 51 + 51 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + + + 52 + 52 + 52 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + + + 46 + 46 + 46 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + + + 47 + 47 + 47 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + + + 45 + 45 + 45 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + + + 48 + 48 + 48 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + + + 50 + 50 + 50 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + + + 49 + 49 + 49 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + 52 + + + ui_bgm_hdr_versus_julius + 0 + 10000 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + + + 0 + + + 0 + 1 + 1 + 1 + 1 + 1 + + + 0 + 2 + 2 + 2 + 2 + 2 + + + 0 + 3 + 3 + 3 + 3 + 3 + + + 0 + 4 + 4 + 4 + 4 + 4 + + + 0 + 5 + 5 + 5 + 5 + 5 + + + 0 + 6 + 6 + 6 + 6 + 6 + + + 0 + 7 + 7 + 7 + 7 + 7 + + + 0 + 8 + 8 + 8 + 8 + 8 + + + 0 + 9 + 9 + 9 + 9 + 9 + + + 0 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + + + 0 + 12 + 12 + 12 + 12 + 12 + + + 0 + 13 + 13 + 13 + 13 + 13 + + + 0 + 14 + 14 + 14 + 14 + 14 + + + 0 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + + + 0 + 17 + 17 + 17 + 17 + 17 + + + 0 + 18 + 18 + 18 + 18 + 18 + + + 0 + 19 + 19 + 19 + 19 + 19 + + + 0 + 20 + 20 + 20 + 20 + 20 + + + 0 + 21 + 21 + 21 + 21 + 21 + + + 0 + 22 + 22 + 22 + 22 + 22 + + + 0 + 23 + 23 + 23 + 23 + 23 + + + 0 + 24 + 24 + 24 + 24 + 24 + + + 0 + 25 + 25 + 25 + 25 + 25 + + + 0 + 26 + 26 + 26 + 26 + 26 + + + 0 + 27 + 27 + 27 + 27 + 27 + + + 0 + 28 + 28 + 28 + 28 + 28 + + + 0 + 29 + 29 + 29 + 29 + 29 + + + 0 + 30 + 30 + 30 + 30 + 30 + + + 0 + 31 + 31 + 31 + 31 + 31 + + + 0 + 32 + 32 + 32 + 32 + 32 + + + 0 + 33 + 33 + 33 + 33 + 33 + + + 0 + 34 + 34 + 34 + 34 + 34 + + + 0 + 35 + 35 + 35 + 35 + 35 + + + 0 + 36 + 36 + 36 + 36 + 36 + + + 0 + 37 + 37 + 37 + 37 + 37 + + + 0 + 38 + 38 + 38 + 38 + 38 + + + 0 + 39 + 39 + 39 + 39 + 39 + + + 0 + 40 + 40 + 40 + 40 + 40 + + + 41 + 41 + 41 + 41 + 41 + + + 0 + 42 + 42 + 42 + 42 + 42 + + + 0 + 43 + 43 + 43 + 43 + 43 + + + 0 + 44 + 44 + 44 + 44 + 44 + + + 0 + 45 + 45 + 45 + 45 + 45 + + + 0 + 46 + 46 + 46 + 46 + 46 + + + 0 + 47 + 47 + 47 + 47 + 47 + + + 0 + 48 + 48 + 48 + 48 + 48 + + + 0 + 49 + 49 + 49 + 49 + 49 + + + 0 + 50 + 50 + 50 + 50 + 50 + + + 0 + 51 + 51 + 51 + 51 + 51 + + + 52 + 52 + 52 + 52 + 52 + + + 0 + 53 + 53 + 53 + 53 + 53 + + + 54 + 54 + 54 + 54 + 54 + + + 0 + 55 + 55 + 55 + 55 + 55 + + + 0 + 56 + 56 + 56 + 56 + 56 + + + 0 + 57 + 57 + 57 + 57 + 57 + + + 0 + 58 + 58 + 58 + 58 + 58 + + + 0 + 59 + 59 + 59 + 59 + 59 + + + 0 + 60 + 60 + 60 + 60 + 60 + + + 0 + 61 + 61 + 61 + 61 + 61 + + + 0 + 62 + 62 + 62 + 62 + 62 + + + 0 + 63 + 63 + 63 + 63 + 63 + + + 0 + 64 + 64 + 64 + 64 + 64 + + + 0 + 65 + 65 + 65 + 65 + 65 + + + 0 + 66 + 66 + 66 + 66 + 66 + + + 0 + 67 + 67 + 67 + 67 + 67 + + + 0 + 68 + 68 + 68 + 68 + 68 + + + 0 + 69 + 69 + 69 + 69 + 69 + + + 0 + 70 + 70 + 70 + 70 + 70 + + + 71 + 71 + 71 + 71 + 71 + + + 0 + 72 + 72 + 72 + 72 + 72 + + + 0 + 73 + 73 + 73 + 73 + 73 + + + 74 + 74 + 74 + 74 + 74 + + + 0 + 75 + 75 + 75 + 75 + 75 + + + 0 + 76 + 76 + 76 + 76 + 76 + + + 0 + 77 + 77 + 77 + 77 + 77 + + + 0 + 78 + 78 + 78 + 78 + 78 + + + 0 + 79 + 79 + 79 + 79 + 79 + + + 0 + 80 + 80 + 80 + 80 + 80 + + + 0 + 81 + 81 + 81 + 81 + 81 + + + 0 + 82 + 82 + 82 + 82 + 82 + + + 0 + 83 + 83 + 83 + 83 + 83 + + + 0 + 84 + 84 + 84 + 84 + 84 + + + 0 + 85 + 85 + 85 + 85 + 85 + + + 0 + 86 + 86 + 86 + 86 + 86 + + + 0 + 87 + 87 + 87 + 87 + 87 + + + 0 + 88 + 88 + 88 + 88 + 88 + + + 0 + 89 + 89 + 89 + 89 + 89 + + + 0 + 90 + 90 + 90 + 90 + 90 + + + 0 + 91 + 91 + 91 + 91 + 91 + + + 0 + 92 + 92 + 92 + 92 + 92 + + + 0 + 93 + 93 + 93 + 93 + 93 + + + 0 + 94 + 94 + 94 + 94 + 94 + + + 0 + 95 + 95 + 95 + 95 + 95 + + + 0 + 96 + 96 + 96 + 96 + 96 + + + 0 + 97 + 97 + 97 + 97 + 97 + + + 0 + 98 + 98 + 98 + 98 + 98 + + + 0 + 99 + 99 + 99 + 99 + 99 + + + 0 + 100 + 100 + 100 + 100 + 100 + + + 0 + 101 + 101 + 101 + 101 + 101 + + + 0 + 102 + 102 + 102 + 102 + 102 + + + 0 + 103 + 103 + 103 + 103 + 103 + + + 0 + 104 + 104 + 104 + 104 + 104 + + + 0 + 105 + 105 + 105 + 105 + 105 + + + 0 + 106 + 106 + 106 + 106 + 106 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + + + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + + + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + + + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + + + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + + + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + + + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + + + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + + + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + + + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + + + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + + + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + + + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + + + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + + + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + + + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + + + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + + + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + + + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + 39 + + + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + 40 + + + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + 41 + + + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + 42 + + + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + 43 + + + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + 44 + + + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + 45 + + + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + 46 + + + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + 47 + + + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + 48 + + + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + 49 + + + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + 50 + + + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + 51 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + 28 + + + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + 29 + + + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + + + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + 31 + + + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + 32 + + + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + 33 + + + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + 34 + + + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + 35 + + + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + 36 + + + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + 37 + + + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + 38 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + + dummy + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + 3 + + + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + + + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 + + + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + 6 + + + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + 7 + + + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + 8 + + + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + 9 + + + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + 10 + + + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + 11 + + + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + + + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + 13 + + + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + 14 + + + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + 15 + + + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + 16 + + + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + 17 + + + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 + + + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + 19 + + + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + 20 + + + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + 21 + + + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + 22 + + + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + 23 + + + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + 24 + + + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + 25 + + + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + 26 + + + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + 27 + + + \ No newline at end of file diff --git a/romfs/source/ui/param/database/ui_gametitle_db.prc b/romfs/source/ui/param/database/ui_gametitle_db.prc deleted file mode 100644 index c29294a01c0c5f079297402c249bfa271871eeda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34508 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 T5jP&D@S|>QC_KlFGX(!14?-?9 diff --git a/romfs/source/ui/param/database/ui_gametitle_db.prcxml b/romfs/source/ui/param/database/ui_gametitle_db.prcxml new file mode 100644 index 0000000000..41f011e700 --- /dev/null +++ b/romfs/source/ui/param/database/ui_gametitle_db.prcxml @@ -0,0 +1,581 @@ + + + + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + dummy + + ui_gametitle_star_fox_adventures + star_fox_adventures + ui_series_starfox + false + 0 + + + ui_gametitle_projectnx + projectnx + ui_series_smashbros + false + 0 + + + ui_gametitle_hewdraw_remix + hewdraw_remix + ui_series_smashbros + false + 0 + + + \ No newline at end of file From 5167023aec5c045c132dc8565a3321010aa108e5 Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Thu, 24 Apr 2025 07:41:57 -0400 Subject: [PATCH 15/19] fix snake --- .../common/src/general_statuses/rebirth.rs | 13 ++-- fighters/snake/src/acmd/other.rs | 60 +++++++++++++++++++ 2 files changed, 65 insertions(+), 8 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index dcb1aa3777..4039624efc 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -332,8 +332,6 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { let lr = PostureModule::lr(fighter.module_accessor); let kind = fighter.global_table[FIGHTER_KIND].get_i32(); - let move_total_frame = WorkModule::get_int(fighter.module_accessor, *FIGHTER_STATUS_REBIRTH_WORK_INT_MOVE_TOTAL_FRAME); - CameraModule::reset_all(fighter.module_accessor); ControlModule::reset_trigger(fighter.module_accessor); @@ -353,10 +351,9 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { MotionModule::end_frame_from_hash(fighter.module_accessor, Hash40::new("entry_r")) }; - let start_frame: f32 = match kind { 0x4 => { - end_frame - 73.0 + end_frame - 75.0 }, 0xA => { 0.0 @@ -376,6 +373,9 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { 0x21 => { 15.0 }, + 0x22 => { + end_frame - 75.0 + }, 0x2A => { end_frame - 80.0 }, @@ -396,7 +396,7 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { } }; - if start_frame > 35.0 { + if start_frame > 45.0 { VarModule::on_flag(fighter.battle_object, vars::common::status::IGNORE_INITIAL_SOUND); } @@ -671,8 +671,6 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { fighter.global_table[SUB_STATUS].assign(&L2CValue::Ptr(L2CFighterCommon_bind_address_call_sub_rebirth_uniq_check as *const () as _)); GroundModule::set_ignore_boss(fighter.module_accessor, true); - - WorkModule::set_int(fighter.module_accessor, move_total_frame, *FIGHTER_STATUS_REBIRTH_WORK_INT_MOVE_TOTAL_FRAME); } #[skyline::hook(replace = smash::lua2cpp::L2CFighterCommon_status_Rebirth_Main)] @@ -681,7 +679,6 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV let lr = PostureModule::lr(fighter.module_accessor); let kind = fighter.global_table[FIGHTER_KIND].get_i32(); let cmd_cat2 = fighter.global_table[CMD_CAT2].get_i32(); - let frame = fighter.global_table[CURRENT_FRAME].get_i32(); let pos = PostureModule::pos(fighter.module_accessor); let pos_x = (*pos).x; let pos_y = (*pos).y; diff --git a/fighters/snake/src/acmd/other.rs b/fighters/snake/src/acmd/other.rs index 132488b0df..3b1e0507b8 100644 --- a/fighters/snake/src/acmd/other.rs +++ b/fighters/snake/src/acmd/other.rs @@ -227,6 +227,63 @@ unsafe extern "C" fn game_escapeairslide(agent: &mut L2CAgentBase) { } } +unsafe extern "C" fn expression_entry(agent: &mut L2CAgentBase) { + let lua_state = agent.lua_state_agent; + let boma = agent.boma(); + + if is_excute(agent) { + notify_event_msc_cmd!(agent, Hash40::new_raw(0x1f20a9d549), false); + notify_event_msc_cmd!(agent, Hash40::new_raw(0x24772eddef), false); + if boma.is_status(*FIGHTER_STATUS_KIND_ENTRY) { + WorkModule::on_flag(boma, *FIGHTER_SNAKE_STATUS_ENTRY_FLAG_SPYCLOAK); + } + } + frame(lua_state, 13.0); + if is_excute(agent) { + if boma.is_status(*FIGHTER_STATUS_KIND_ENTRY) { + WorkModule::on_flag(boma, *FIGHTER_SNAKE_STATUS_ENTRY_FLAG_SPYCLOAK); + } + } + frame(lua_state, 18.0); + if is_excute(agent) { + if boma.is_status(*FIGHTER_STATUS_KIND_ENTRY) { + WorkModule::on_flag(boma, *FIGHTER_SNAKE_STATUS_ENTRY_FLAG_SPYCLOAK); + } + } + frame(lua_state, 30.0); + if is_excute(agent) { + if boma.is_status(*FIGHTER_STATUS_KIND_ENTRY) { + WorkModule::on_flag(boma, *FIGHTER_SNAKE_STATUS_ENTRY_FLAG_SPYCLOAK); + } + notify_event_msc_cmd!(agent, Hash40::new_raw(0x1f20a9d549), true); + notify_event_msc_cmd!(agent, Hash40::new_raw(0x24772eddef), true); + } + frame(lua_state, 38.0); + if is_excute(agent) { + if boma.is_status(*FIGHTER_STATUS_KIND_ENTRY) { + WorkModule::on_flag(boma, *FIGHTER_SNAKE_STATUS_ENTRY_FLAG_SPYCLOAK); + } + } + frame(lua_state, 44.0); + if is_excute(agent) { + if boma.is_status(*FIGHTER_STATUS_KIND_ENTRY) { + WorkModule::on_flag(boma, *FIGHTER_SNAKE_STATUS_ENTRY_FLAG_SPYCLOAK); + } + } + frame(lua_state, 56.0); + if is_excute(agent) { + if boma.is_status(*FIGHTER_STATUS_KIND_ENTRY) { + WorkModule::on_flag(boma, *FIGHTER_SNAKE_STATUS_ENTRY_FLAG_SPYCLOAK); + } + } + frame(lua_state, 60.0); + if is_excute(agent) { + if boma.is_status(*FIGHTER_STATUS_KIND_ENTRY) { + WorkModule::on_flag(boma, *FIGHTER_SNAKE_STATUS_ENTRY_FLAG_SPYCLOAK); + } + } +} + pub fn install(agent: &mut Agent) { agent.acmd("game_cliffescape", acmd_stub, Priority::Low); @@ -255,4 +312,7 @@ pub fn install(agent: &mut Agent) { agent.acmd("game_escapeair", game_escapeair, Priority::Low); agent.acmd("game_escapeairslide", game_escapeairslide, Priority::Low); + + agent.acmd("expression_entryl", expression_entry, Priority::Low); + agent.acmd("expression_entryr", expression_entry, Priority::Low); } \ No newline at end of file From b95391fe776b8624ede1aa6b36538364a35d725e Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Tue, 14 Oct 2025 19:04:15 -0400 Subject: [PATCH 16/19] add use_entry_anim_on_respawn param to each char --- .../common/src/general_statuses/rebirth.rs | 8 ++ .../common/hdr/param/fighter_param.xml | 94 +++++++++++++++++++ 2 files changed, 102 insertions(+) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 4039624efc..8da5702e16 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -7,6 +7,10 @@ unsafe extern "C" fn sub_rebirth_uniq_process_init(fighter: &mut L2CFighterCommo let lr = PostureModule::lr(fighter.module_accessor); let kind = fighter.global_table[FIGHTER_KIND].get_i32(); + if !ParamModule::is_flag(fighter.object(), ParamType::Shared, "use_entry_anim_on_respawn") { + return original!()(fighter); + } + match kind { 0x0 => { ArticleModule::generate_article(fighter.module_accessor, *FIGHTER_MARIO_GENERATE_ARTICLE_DOKAN, false, -1); @@ -332,6 +336,10 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { let lr = PostureModule::lr(fighter.module_accessor); let kind = fighter.global_table[FIGHTER_KIND].get_i32(); + if !ParamModule::is_flag(fighter.object(), ParamType::Shared, "use_entry_anim_on_respawn") { + return original!()(fighter); + } + CameraModule::reset_all(fighter.module_accessor); ControlModule::reset_trigger(fighter.module_accessor); diff --git a/romfs/source/fighter/common/hdr/param/fighter_param.xml b/romfs/source/fighter/common/hdr/param/fighter_param.xml index 5cbe72796c..d3dfefe4e3 100644 --- a/romfs/source/fighter/common/hdr/param/fighter_param.xml +++ b/romfs/source/fighter/common/hdr/param/fighter_param.xml @@ -7,6 +7,7 @@ 1.0 1.5 1.8 + false DONKEY @@ -14,6 +15,7 @@ 1.0 1.5 1.8 + true LINK @@ -21,6 +23,7 @@ 0.85 1.5 1.8 + true SAMUS @@ -28,6 +31,7 @@ 1.0 1.5 1.8 + true SAMUSD @@ -35,6 +39,7 @@ 0.95 1.5 1.8 + true YOSHI @@ -42,6 +47,7 @@ 1.0 1.5 1.7 + true KIRBY @@ -49,6 +55,7 @@ 1.0 1.5 1.8 + true FOX @@ -56,6 +63,7 @@ 1.0 1.5 1.8 + true PIKACHU @@ -63,6 +71,7 @@ 0.85 1.5 1.8 + true LUIGI @@ -70,6 +79,7 @@ 1.0 1.5 2.65 + false NESS @@ -77,6 +87,7 @@ 1.0 1.5 1.8 + true CAPTAIN @@ -84,6 +95,7 @@ 1.0 1.5 1.7 + false PURIN @@ -91,6 +103,7 @@ 1.0 1.5 1.8 + true PEACH @@ -98,6 +111,7 @@ 1.0 2.5 1.8 + true DAISY @@ -105,6 +119,7 @@ 1.0 2.5 1.8 + true KOOPA @@ -112,6 +127,7 @@ 1.0 1.5 1.8 + true SHEIK @@ -119,6 +135,7 @@ 0.9 1.5 1.8 + true ZELDA @@ -126,6 +143,7 @@ 1.0 1.5 1.8 + true MARIOD @@ -133,6 +151,7 @@ 1.0 1.5 1.8 + true PICHU @@ -140,6 +159,7 @@ 1.0 1.5 1.8 + true FALCO @@ -147,6 +167,7 @@ 1.0 1.5 1.8 + true MARTH @@ -154,6 +175,7 @@ 1.0 1.5 1.7 + true LUCINA @@ -161,6 +183,7 @@ 1.0 1.5 1.7 + true YOUNGLINK @@ -168,6 +191,7 @@ 1.0 1.5 1.8 + true GANON @@ -175,6 +199,7 @@ 1.0 1.5 1.8 + true MEWTWO @@ -182,6 +207,7 @@ 1.0 1.5 1.8 + true ROY @@ -189,6 +215,7 @@ 0.85 1.5 1.7 + true CHROM @@ -196,6 +223,7 @@ 1.0 1.5 1.7 + true GAMEWATCH @@ -203,6 +231,7 @@ 0.8 1.5 1.8 + true METAKNIGHT @@ -210,6 +239,7 @@ 1.0 1.5 1.8 + true PIT @@ -217,6 +247,7 @@ 0.95 1.5 1.8 + true PITB @@ -224,6 +255,7 @@ 0.95 1.5 1.8 + true SZEROSUIT @@ -231,6 +263,7 @@ 1.0 1.5 1.8 + true WARIO @@ -238,6 +271,7 @@ 1.0 1.5 1.8 + false SNAKE @@ -245,6 +279,7 @@ 1.0 2.75 1.8 + true IKE @@ -252,6 +287,7 @@ 1.0 1.5 1.7 + true PZENIGAME @@ -259,6 +295,7 @@ 0.9 1.5 1.7 + true PFUSHIGISOU @@ -266,6 +303,7 @@ 1.0 1.5 1.8 + true PLIZARDON @@ -273,6 +311,7 @@ 1.0 1.5 1.8 + true DIDDY @@ -280,6 +319,7 @@ 1.0 3.5 1.8 + true LUCAS @@ -287,6 +327,7 @@ 0.95 1.5 1.8 + true SONIC @@ -294,6 +335,7 @@ 1.0 1.5 1.8 + true DEDEDE @@ -301,6 +343,7 @@ 1.0 1.5 1.8 + true PIKMIN @@ -308,6 +351,7 @@ 1.0 1.5 1.8 + true LUCARIO @@ -315,6 +359,7 @@ 1.0 1.5 1.8 + true ROBOT @@ -322,6 +367,7 @@ 1.0 2.5 1.8 + true TOONLINK @@ -329,6 +375,7 @@ 1.0 3.25 1.8 + true WOLF @@ -336,6 +383,7 @@ 1.0 1.5 1.7 + true MURABITO @@ -343,6 +391,7 @@ 1.0 1.5 1.8 + true ROCKMAN @@ -350,6 +399,7 @@ 1.0 1.75 1.8 + true WIIFIT @@ -357,6 +407,7 @@ 1.0 1.5 1.8 + true ROSETTA @@ -364,6 +415,7 @@ 1.0 1.5 1.8 + true LITTLEMAC @@ -371,6 +423,7 @@ 0.9 1.5 1.8 + true GEKKOUGA @@ -378,6 +431,7 @@ 0.9 1.5 1.8 + true PALUTENA @@ -385,6 +439,7 @@ 1.0 1.5 1.8 + true PACMAN @@ -392,6 +447,7 @@ 1.0 1.5 1.8 + true REFLET @@ -399,6 +455,7 @@ 1.0 3.0 1.7 + true SHULK @@ -406,6 +463,7 @@ 1.0 1.5 1.7 + true KOOPAJR @@ -413,6 +471,7 @@ 1.0 2.0 1.8 + true DUCKHUNT @@ -420,6 +479,7 @@ 1.0 1.5 1.8 + true RYU @@ -427,6 +487,7 @@ 1.0 1.5 1.7 + true KEN @@ -434,6 +495,7 @@ 1.0 1.5 1.7 + true CLOUD @@ -441,6 +503,7 @@ 1.0 1.5 1.7 + true KAMUI @@ -448,6 +511,7 @@ 1.0 1.5 1.7 + true BAYONETTA @@ -455,6 +519,7 @@ 1.0 1.5 1.8 + true INKLING @@ -462,6 +527,7 @@ 0.9 1.5 1.8 + true RIDLEY @@ -469,6 +535,7 @@ 0.95 1.5 1.8 + true SIMON @@ -476,6 +543,7 @@ 1.0 1.5 1.8 + true RICHTER @@ -483,6 +551,7 @@ 1.0 1.5 1.8 + true KROOL @@ -490,6 +559,7 @@ 1.0 2.5 1.8 + true SHIZUE @@ -497,6 +567,7 @@ 1.0 1.5 1.8 + true GAOGAEN @@ -504,6 +575,7 @@ 1.0 1.5 1.8 + true MIIFIGHTER @@ -511,6 +583,7 @@ 0.8 1.5 1.8 + true MIISWORDSMAN @@ -518,6 +591,7 @@ 1.0 1.5 1.7 + true MIIGUNNER @@ -525,6 +599,7 @@ 1.0 1.5 1.8 + true POPO @@ -532,6 +607,7 @@ 1.0 1.5 1.8 + true NANA @@ -539,6 +615,7 @@ 1.0 1.5 1.8 + true KOOPAG @@ -546,6 +623,7 @@ 1.0 1.5 1.8 + true MIIENEMYF @@ -553,6 +631,7 @@ 1.0 1.5 1.8 + true MIIENEMYS @@ -560,6 +639,7 @@ 1.0 1.5 1.7 + true MIIENEMYG @@ -567,6 +647,7 @@ 1.0 1.5 1.8 + true PACKUN @@ -574,6 +655,7 @@ 0.95 1.5 1.8 + true JACK @@ -581,6 +663,7 @@ 0.95 1.5 1.8 + true BRAVE @@ -588,6 +671,7 @@ 1.0 1.5 1.8 + true BUDDY @@ -595,6 +679,7 @@ 1.0 1.5 1.8 + true DOLLY @@ -602,6 +687,7 @@ 1.0 1.5 1.8 + true MASTER @@ -609,6 +695,7 @@ 0.95 1.5 1.7 + true TANTAN @@ -616,6 +703,7 @@ 0.95 1.5 1.8 + true PICKEL @@ -623,6 +711,7 @@ 1.0 1.5 1.8 + true EDGE @@ -630,6 +719,7 @@ 1.0 1.5 1.7 + true EFLAME @@ -637,6 +727,7 @@ 1.0 1.5 1.7 + true ELIGHT @@ -644,6 +735,7 @@ 1.0 1.5 1.7 + true DEMON @@ -651,6 +743,7 @@ 1.0 1.5 1.8 + true TRAIL @@ -658,6 +751,7 @@ 1.0 1.5 1.8 + true \ No newline at end of file From 12ae14727b3f002464470730192b51449e5376ba Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Tue, 14 Oct 2025 19:09:18 -0400 Subject: [PATCH 17/19] db --- .../source/ui/param/database/ui_bgm_db.prcxml | 24596 ---------------- .../ui/param/database/ui_gametitle_db.prcxml | 581 - 2 files changed, 25177 deletions(-) delete mode 100644 romfs/source/ui/param/database/ui_bgm_db.prcxml delete mode 100644 romfs/source/ui/param/database/ui_gametitle_db.prcxml diff --git a/romfs/source/ui/param/database/ui_bgm_db.prcxml b/romfs/source/ui/param/database/ui_bgm_db.prcxml deleted file mode 100644 index 3e52e9b495..0000000000 --- a/romfs/source/ui/param/database/ui_bgm_db.prcxml +++ /dev/null @@ -1,24596 +0,0 @@ - - - - dummy - - 10 - - - 13 - - - 14 - - - 27 - - - 25 - - - 31 - - - 28 - - - 40 - - - 87 - - - 66 - - - 38 - - - 39 - - - 34 - - - 90 - - - 98 - - - 99 - - - 101 - - - 100 - - - 12 - - - 23 - - - 54 - - - 53 - - dummy - dummy - - 70 - - - 69 - - dummy - dummy - dummy - - 105 - - - 104 - - - 15 - - - 16 - - - 32 - - - 30 - - - 103 - - - 108 - - - 42 - - - 44 - - - 93 - - - 94 - - - 88 - - - 55 - - - 56 - - dummy - - 76 - - - 67 - - - 68 - - - 102 - - - 106 - - - 107 - - - 109 - - - 43 - - - 45 - - - 41 - - - 49 - - - 51 - - - 52 - - - 47 - - - 89 - - - 57 - - - 58 - - - 46 - - dummy - - 36 - - - 18 - - - 33 - - - 59 - - - 7 - - dummy - - 29 - - dummy - dummy - - 20 - - - 65 - - - 64 - - - 63 - - - 62 - - dummy - dummy - - 61 - - - 11 - - dummy - dummy - - 60 - - - 86 - - - 37 - - - 26 - - - 22 - - - 24 - - - 48 - - - 50 - - - 74 - - - 81 - - - 80 - - - 77 - - - 78 - - - 97 - - - 19 - - - 71 - - - 72 - - - 73 - - - 82 - - - 83 - - - 75 - - - 110 - - - 111 - - - 112 - - - 96 - - - 95 - - - 17 - - - 84 - - - 85 - - - 674 - - - 675 - - - 678 - - - 679 - - - 685 - - - 690 - - - 695 - - - 697 - - - 698 - - - 702 - - - 701 - - - 687 - - - 672 - - - 683 - - - 691 - - - 689 - - - 682 - - - 680 - - - 686 - - - 696 - - - 699 - - - 704 - - - 700 - - - 693 - - - 676 - - - 694 - - - 703 - - - 681 - - - 684 - - - 688 - - - 705 - - - 692 - - - 677 - - - 673 - - dummy - dummy - - 123 - - - 120 - - - 113 - - - 116 - - - 132 - - - 133 - - - 136 - - - 117 - - - 139 - - - 124 - - - 115 - - - 114 - - - 126 - - - 138 - - - 140 - - - 127 - - - 125 - - - 118 - - - 134 - - - 119 - - - 130 - - - 131 - - - 129 - - - 128 - - - 137 - - - 662 - - - 663 - - - 661 - - - 664 - - - 665 - - - 666 - - - 667 - - - 668 - - - 670 - - - 669 - - - 671 - - - 141 - - - 145 - - - 150 - - - 152 - - - 154 - - - 155 - - - 157 - - - 156 - - - 161 - - - 169 - - - 165 - - - 167 - - - 170 - - - 172 - - - 146 - - - 153 - - - 162 - - - 173 - - - 174 - - - 160 - - - 166 - - - 163 - - - 175 - - - 176 - - - 178 - - - 177 - - - 142 - - - 151 - - - 158 - - - 147 - - - 185 - - - 184 - - - 183 - - - 182 - - - 181 - - - 171 - - - 179 - - - 168 - - - 148 - - - 164 - - - 180 - - - 159 - - - 1007 - - - 1014 - - - 1019 - - - 1021 - - - 1060 - - - 1061 - - - 1070 - - - 1057 - - - 1058 - - - 1059 - - - 1069 - - - 1067 - - - 1066 - - - 0 - - - 1 - - - ui_gametitle_hewdraw_remix - 2 - - - 5 - - - 6 - - - 966 - - - 971 - - dummy - - 988 - - - 989 - - - 990 - - - 974 - - - 976 - - - 977 - - - 979 - - - 970 - - - 981 - - - 982 - - - 983 - - - 985 - - - 986 - - dummy - - 987 - - - 967 - - dummy - dummy - - 968 - - dummy - - 969 - - dummy - - 993 - - - 994 - - - 991 - - - 992 - - - 972 - - - 973 - - - 978 - - - 980 - - - 984 - - - 975 - - dummy - - 1065 - - - 1068 - - - 1071 - - - 1000 - - - 1009 - - - 1029 - - - 1020 - - - 1062 - - - 1063 - - - 1073 - - - 1072 - - - 1064 - - - 189 - - - 192 - - - 194 - - - 196 - - - 197 - - - 198 - - - 199 - - - 201 - - - 202 - - - 186 - - - 193 - - - 203 - - - 205 - - - 204 - - - 206 - - - 200 - - - 195 - - - 190 - - - 207 - - - 210 - - - 208 - - - 209 - - - 217 - - - 214 - - dummy - dummy - dummy - - 212 - - - 218 - - - 219 - - - 213 - - - 223 - - - 221 - - - 222 - - - 224 - - - 220 - - - 247 - - - 228 - - - 231 - - - 233 - - - 235 - - - 239 - - - 240 - - - 242 - - - 245 - - - 249 - - - 226 - - dummy - dummy - dummy - dummy - dummy - dummy - - 234 - - - 229 - - - 238 - - - 248 - - - 244 - - - 250 - - - 251 - - - 255 - - - 243 - - - 241 - - - 257 - - - 232 - - - 246 - - - 230 - - - 252 - - - 253 - - - 254 - - - 256 - - - 258 - - - 259 - - - 260 - - - 261 - - - 262 - - - 227 - - dummy - - 651 - - - 653 - - - 264 - - - 265 - - - 270 - - - 274 - - - 272 - - - 277 - - - 278 - - - 271 - - - 266 - - - 275 - - - 273 - - - 276 - - - 281 - - - 279 - - - 280 - - - 286 - - - 288 - - - 287 - - - 289 - - - 292 - - - 293 - - - 294 - - - 297 - - - 295 - - - 296 - - - 300 - - - 301 - - - 304 - - - 306 - - - 298 - - - 299 - - - 302 - - - 305 - - - 303 - - - 307 - - - 308 - - - 311 - - - 309 - - - 313 - - - 314 - - - 315 - - - 312 - - - 310 - - - 316 - - - 319 - - - 331 - - - 334 - - - 336 - - - 337 - - - 338 - - - 339 - - - 340 - - - 341 - - - 342 - - - 320 - - - 317 - - - 330 - - - 327 - - - 324 - - - 322 - - - 326 - - - 335 - - - 329 - - - 325 - - - 328 - - - 332 - - - 333 - - - 321 - - - 358 - - - 363 - - - 366 - - - 378 - - - 376 - - - 377 - - - 381 - - - 380 - - - 382 - - - 379 - - - 383 - - - 391 - - - 367 - - - 373 - - - 372 - - - 364 - - - 384 - - - 385 - - - 387 - - - 389 - - - 395 - - - 393 - - - 394 - - - 396 - - - 392 - - - 386 - - - 374 - - - 388 - - - 369 - - - 398 - - - 365 - - - 397 - - - 370 - - - 371 - - - 375 - - - 390 - - - 359 - - - 348 - - - 344 - - - 356 - - - 353 - - - 354 - - - 355 - - - 346 - - - 352 - - - 349 - - - 345 - - - 350 - - - 441 - - - 438 - - - 440 - - - 437 - - - 439 - - - 442 - - - 445 - - - 444 - - - 443 - - - 448 - - - 446 - - - 447 - - - 449 - - - 436 - - - 425 - - dummy - - 426 - - - 432 - - - 433 - - - 430 - - - 431 - - - 427 - - - 428 - - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - - 429 - - - 434 - - dummy - - 435 - - dummy - - 542 - - - 539 - - - 543 - - - 545 - - - 547 - - - 541 - - - 546 - - - 548 - - - 544 - - - 540 - - - 549 - - - 897 - - - 896 - - - 453 - - - 451 - - - 454 - - - 456 - - - 455 - - - 465 - - - 466 - - - 467 - - - 468 - - - 469 - - - 470 - - - 461 - - - 459 - - - 457 - - - 458 - - - 460 - - - 462 - - - 463 - - - 452 - - - 450 - - - 464 - - - 414 - - - 412 - - - 415 - - - 413 - - - 421 - - - 419 - - - 416 - - - 418 - - - 423 - - - 424 - - - 417 - - - 420 - - - 422 - - - 873 - - - 871 - - - 92 - - - 864 - - - 862 - - - 866 - - - 876 - - - 877 - - - 878 - - - 879 - - - 887 - - - 870 - - - 875 - - - 861 - - - 863 - - - 874 - - - 483 - - - 860 - - - 868 - - - 481 - - - 883 - - - 884 - - - 869 - - - 882 - - - 881 - - - 859 - - - 867 - - - 880 - - - 898 - - - 900 - - - 411 - - - 79 - - - 889 - - - 909 - - - 906 - - - 893 - - - 913 - - - 910 - - - 894 - - - 908 - - - 923 - - - 904 - - - 914 - - - 902 - - - 903 - - - 912 - - - 482 - - - 932 - - - 488 - - - 492 - - - 493 - - - 936 - - - 937 - - - 472 - - - 478 - - - 476 - - - 916 - - - 918 - - - 919 - - - 907 - - - 925 - - - 490 - - - 940 - - - 939 - - - 885 - - - 886 - - - 890 - - - 947 - - - 943 - - - 473 - - - 477 - - - 480 - - - 950 - - - 917 - - - 905 - - - 924 - - - 930 - - - 926 - - - 485 - - - 484 - - - 486 - - - 487 - - - 489 - - - 491 - - - 888 - - - 895 - - - 933 - - - 934 - - - 946 - - - 944 - - - 941 - - - 951 - - - 948 - - - 949 - - - 927 - - - 928 - - - 911 - - - 479 - - - 920 - - - 899 - - - 935 - - - 956 - - - 901 - - - 960 - - - 931 - - - 915 - - - 471 - - - 474 - - - 475 - - - 929 - - - 921 - - - 922 - - - 938 - - - 953 - - - 954 - - - 952 - - - 955 - - - 360 - - - 361 - - - 368 - - - 891 - - - 892 - - - 957 - - - 958 - - - 959 - - - 961 - - - 962 - - - 501 - - - 510 - - - 504 - - - 945 - - - 942 - - - 575 - - - 577 - - - 585 - - - 594 - - - 570 - - - 578 - - - 586 - - - 593 - - - 595 - - - 596 - - - 581 - - - 590 - - - 583 - - - 572 - - - 573 - - - 574 - - - 576 - - - 579 - - - 587 - - - 588 - - - 589 - - - 592 - - - 597 - - - 571 - - - 582 - - - 591 - - - 598 - - - 599 - - - 600 - - - 584 - - - 580 - - dummy - dummy - dummy - - 617 - - dummy - - 634 - - dummy - - 618 - - dummy - - 635 - - dummy - - 612 - - - 613 - - - 614 - - - 615 - - - 621 - - dummy - - 638 - - dummy - - 623 - - dummy - - 640 - - dummy - - 620 - - dummy - - 637 - - dummy - - 619 - - dummy - - 636 - - dummy - - 622 - - dummy - - 639 - - dummy - - 624 - - dummy - - 641 - - dummy - - 625 - - dummy - - 642 - - dummy - - 626 - - dummy - - 643 - - dummy - - 627 - - dummy - - 644 - - dummy - - 628 - - dummy - - 645 - - dummy - - 631 - - dummy - - 648 - - dummy - - 629 - - dummy - - 646 - - dummy - - 630 - - dummy - - 647 - - dummy - - 632 - - dummy - - 649 - - dummy - - 616 - - - 633 - - - 514 - - - 515 - - - 517 - - - 518 - - - 521 - - dummy - - 523 - - - 524 - - dummy - - 528 - - - 519 - - - 526 - - - 527 - - - 520 - - - 529 - - - 516 - - - 513 - - - 530 - - - 531 - - - 532 - - - 533 - - - 534 - - - 535 - - - 536 - - - 537 - - - 538 - - - 522 - - dummy - - 525 - - dummy - - 1026 - - - 121 - - - 1027 - - - 215 - - - 236 - - - 8 - - - 143 - - - 187 - - - 268 - - - 284 - - - 998 - - - 1001 - - - 1033 - - - 1008 - - - 1031 - - - 1030 - - - 1032 - - - 1015 - - dummy - - 1025 - - - 550 - - - 551 - - - 552 - - - 554 - - - 553 - - - 555 - - - 556 - - - 557 - - - 559 - - - 560 - - - 561 - - - 558 - - - 562 - - - 563 - - - 564 - - - 565 - - - 566 - - - 567 - - - 568 - - - 569 - - - 601 - - - 602 - - - 603 - - - 606 - - - 607 - - - 610 - - - 611 - - - 608 - - - 604 - - - 605 - - - 609 - - - 9 - - - 35 - - - 122 - - - 191 - - - 211 - - - 237 - - - 225 - - - 267 - - - 285 - - - 290 - - - 323 - - - 347 - - - 865 - - - 410 - - - 21 - - - 291 - - - 362 - - - 872 - - - 343 - - - 91 - - - 1010 - - - 1022 - - - 149 - - - 1016 - - - 135 - - - 188 - - - 269 - - - 318 - - - 1002 - - - 1017 - - - 351 - - - 1004 - - - 1003 - - - 1011 - - - 144 - - - 216 - - - 1023 - - - 1035 - - - 1036 - - - 1039 - - - 995 - - - 1034 - - - 1037 - - - 1038 - - - 999 - - - 996 - - - 997 - - - 1006 - - - 1012 - - - 1018 - - - 1056 - - - 1052 - - - 1053 - - - 1054 - - - 1055 - - - 1047 - - - 1024 - - - 1005 - - - 1048 - - - 1049 - - - 1050 - - - 1051 - - - 1013 - - - 1040 - - - 1028 - - - 1041 - - - 1042 - - - 1043 - - - 1045 - - - 1046 - - - 1044 - - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - - 714 - - - 715 - - - 711 - - - 712 - - - 713 - - - 708 - - - 706 - - - 709 - - - 710 - - - 716 - - - 707 - - dummy - dummy - dummy - dummy - - 724 - - - 723 - - - 718 - - - 717 - - - 719 - - - 720 - - - 721 - - - 722 - - dummy - - 726 - - - 725 - - - 727 - - - 728 - - - 729 - - - 730 - - - 731 - - - 732 - - - 733 - - - 734 - - dummy - - 963 - - - 738 - - - 737 - - - 735 - - - 736 - - - 740 - - - 741 - - - 742 - - - 743 - - - 744 - - - 745 - - - 746 - - - 747 - - - 776 - - - 749 - - - 750 - - - 752 - - - 755 - - - 757 - - - 751 - - - 758 - - - 759 - - - 754 - - - 753 - - - 756 - - - 761 - - - 762 - - - 763 - - - 764 - - - 765 - - - 766 - - - 767 - - - 768 - - - 769 - - - 748 - - - 771 - - - 760 - - - 770 - - - 772 - - - 773 - - - 774 - - - 775 - - - 777 - - - 778 - - - 779 - - - 739 - - - 780 - - - 781 - - - 783 - - - 784 - - - 782 - - dummy - - 399 - - - 400 - - - 401 - - - 408 - - - 409 - - - 403 - - - 404 - - - 402 - - - 405 - - - 407 - - - 406 - - dummy - - 964 - - - 785 - - - 787 - - - 786 - - - 788 - - - 789 - - - 790 - - - 791 - - - 792 - - - 793 - - - 794 - - - 795 - - - 797 - - - 798 - - - 799 - - - 800 - - - 796 - - - 801 - - - 802 - - dummy - - 808 - - - 806 - - - 804 - - - 803 - - - 809 - - - 805 - - - 807 - - dummy - - 650 - - - 656 - - - 657 - - - 658 - - - 655 - - - 659 - - - 652 - - - 654 - - - 660 - - dummy - - 494 - - - 502 - - - 505 - - - 495 - - - 496 - - - 497 - - - 498 - - - 499 - - - 500 - - - 503 - - - 506 - - - 507 - - - 508 - - - 509 - - - 511 - - - 512 - - dummy - - 810 - - - 811 - - - 812 - - - 813 - - - 814 - - - 816 - - - 817 - - - 818 - - - 819 - - - 820 - - - 821 - - - 822 - - - 823 - - - 824 - - - 825 - - - 826 - - - 827 - - - 828 - - - 829 - - - 830 - - - 831 - - - 832 - - - 833 - - - 834 - - - 835 - - - 836 - - - 837 - - - 838 - - - 839 - - - 840 - - - 841 - - - 842 - - - 843 - - - 844 - - - 845 - - - 846 - - - 847 - - - 848 - - - 815 - - dummy - - 965 - - - 849 - - - 850 - - - 851 - - - 852 - - - 853 - - - 854 - - - 855 - - - 856 - - - 857 - - dummy - - 858 - - - ui_bgm_hdr_abyssal_ruins - set_hdr_abyssal_ruins - bgm_rarity_0 - record_new_arrange - ui_gametitle_pokemon_black_white - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - 2511 - 0 - 283 - 9835 - true - true - true - false - 0 - true - 1 - true - true - true - false - false - - - - false - - - ui_bgm_hdr_team_skull_megamix - set_hdr_team_skull_megamix - bgm_rarity_0 - record_new_arrange - ui_gametitle_pokemon_sun_moon - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - 2512 - 0 - 282 - 9836 - true - true - true - false - 0 - true - 1 - true - true - true - false - false - - - - false - - - ui_bgm_hdr_versus_julius - set_hdr_versus_julius - bgm_rarity_0 - record_new_arrange - ui_gametitle_fire_emblem_holy_war - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - 2513 - 0 - 357 - 9837 - true - true - true - false - 0 - true - 1 - true - true - true - false - false - - - - false - - - ui_bgm_hdr_cloudrunner_fortress - set_hdr_cloudrunner_fortress - bgm_rarity_0 - record_new_arrange - ui_gametitle_star_fox_adventures - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - 2514 - 0 - 263 - 9838 - true - true - true - false - 0 - true - 1 - true - true - true - false - false - - - - false - - - ui_bgm_hdr_projectnx_theme - set_hdr_projectnx_theme - bgm_rarity_0 - record_original - ui_gametitle_projectnx - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - 2515 - 0 - 4 - 9839 - true - true - true - false - 0 - true - 1 - true - true - true - false - false - - - - false - - - ui_bgm_hdr_w_hole_equation - set_hdr_w_hole_equation - bgm_rarity_0 - record_original - ui_gametitle_hewdraw_remix - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - ui_gametitle_none - 2516 - 0 - 3 - 9840 - true - true - true - false - 0 - true - 1 - true - true - true - false - false - - - - false - - - - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - - set_hdr_abyssal_ruins - - info_hdr_abyssal_ruins - - - - - - - - - - - - - - - - - - set_hdr_team_skull_megamix - - info_hdr_team_skull_megamix - - - - - - - - - - - - - - - - - - set_hdr_versus_julius - - info_hdr_versus_julius - - - - - - - - - - - - - - - - - - set_hdr_cloudrunner_fortress - - info_hdr_cloudrunner_fortress - - - - - - - - - - - - - - - - - - set_hdr_projectnx_theme - - info_hdr_projectnx_theme - - - - - - - - - - - - - - - - - - set_hdr_w_hole_equation - - info_hdr_w_hole_equation - - - - - - - - - - - - - - - - - - - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - - info_hdr_abyssal_ruins - stream_hdr_abyssal_ruins - sound_condition_none - sound_condition_process_add - 0 - 0 - 0 - 55 - 0 - 0 - 0 - 55 - 0 - - - info_hdr_team_skull_megamix - stream_hdr_team_skull_megamix - sound_condition_none - sound_condition_process_add - 0 - 0 - 0 - 55 - 0 - 0 - 0 - 55 - 0 - - - info_hdr_versus_julius - stream_hdr_versus_julius - sound_condition_none - sound_condition_process_add - 0 - 0 - 0 - 55 - 0 - 0 - 0 - 55 - 0 - - - info_hdr_cloudrunner_fortress - stream_hdr_cloudrunner_fortress - sound_condition_none - sound_condition_process_add - 0 - 0 - 0 - 55 - 0 - 0 - 0 - 55 - 0 - - - info_hdr_projectnx_theme - stream_hdr_projectnx_theme - sound_condition_none - sound_condition_process_add - 0 - 0 - 0 - 55 - 0 - 0 - 0 - 55 - 0 - - - info_hdr_w_hole_equation - stream_hdr_w_hole_equation - sound_condition_none - sound_condition_process_add - 0 - 0 - 0 - 55 - 0 - 0 - 0 - 55 - 0 - - - - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - - stream_hdr_abyssal_ruins - hdr_abyssal_ruins - - - - - 1 - 00:00:00.000 - 400 - - 00:00:00.000 - - - - - - - - stream_hdr_team_skull_megamix - hdr_team_skull_megamix - - - - - 1 - 00:00:00.000 - 400 - - 00:00:00.000 - - - - - - - - stream_hdr_versus_julius - hdr_versus_julius - - - - - 1 - 00:00:00.000 - 400 - - 00:00:00.000 - - - - - - - - stream_hdr_cloudrunner_fortress - hdr_cloudrunner_fortress - - - - - 1 - 00:00:00.000 - 400 - - 00:00:00.000 - - - - - - - - stream_hdr_projectnx_theme - hdr_projectnx_theme - - - - - 1 - 00:00:00.000 - 400 - - 00:00:00.000 - - - - - - - - stream_hdr_w_hole_equation - hdr_w_hole_equation - - - - - 1 - 00:00:00.000 - 400 - - 00:00:00.000 - - - - - - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - - - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - - - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - - - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - - - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - - - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - - - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - - - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - - - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - - - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - - - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - - - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - - - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - - - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - - - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - - - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - - - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - - - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - - - 53 - 53 - 53 - 53 - 53 - 53 - 53 - 53 - 53 - 53 - 53 - 53 - - - 54 - 54 - 54 - 54 - 54 - 54 - 54 - 54 - 54 - 54 - 54 - 54 - - dummy - - 55 - 55 - 55 - 55 - 55 - 55 - 55 - 55 - 55 - 55 - 55 - 55 - - - - - ui_bgm_crs2_01_menu - 0 - 10000 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - ui_bgm_crs2_04_kumite - 8 - 200 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - ui_bgm_w30_sbdx_menu - 3 - 850 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - ui_bgm_w33_sbdx_menu2 - 950 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - ui_bgm_x02_sbx_menu1 - 950 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - ui_bgm_crs01_menu - 7 - 1050 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - ui_bgm_x01_sbx_maintheme - 6 - 350 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - ui_bgm_crs23_asobikata - 10 - 150 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - ui_bgm_t21_sb_characterselect - 200 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - ui_bgm_x27_sbx_staffroll - 14 - 200 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - ui_bgm_x21_coinshooter - 15 - 250 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - ui_bgm_x07_sbx_onlinerenshuustage - 16 - 200 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - ui_bgm_crs07_online - 17 - 300 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - ui_bgm_hdr_projectnx_theme - 2 - 3000 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - ui_bgm_hdr_w_hole_equation - 1 - 6800 - - - ui_bgm_crs2_23_edit_common - 19 - 400 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - ui_bgm_w44_sbdx_targetwokowase - 11 - 250 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - ui_bgm_w41_sbdx_figuremeikan - 12 - 200 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - ui_bgm_x19_sbx_figuremeikan - 400 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - ui_bgm_x15_sbx_rest - 13 - 200 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - dummy - dummy - dummy - dummy - dummy - - - dummy - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 0 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - - dummy - dummy - dummy - dummy - - 0 - - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - - 16 - 16 - 17 - 18 - 16 - 18 - 17 - 18 - 17 - 19 - - - 17 - 17 - 18 - 19 - 17 - 19 - 18 - 18 - 19 - 18 - 20 - - - 18 - 18 - 19 - 18 - 20 - 19 - 19 - 20 - 19 - 21 - - - 19 - 19 - 20 - 20 - 19 - 21 - 20 - 20 - 21 - 20 - 22 - - - 20 - 24 - 21 - 21 - 24 - 22 - 21 - 22 - 21 - 23 - - - 21 - 25 - 22 - 22 - 25 - 23 - 26 - 22 - 23 - 22 - 24 - - - 22 - 26 - 23 - 23 - 26 - 24 - 27 - 23 - 24 - 23 - 25 - - - 23 - 27 - 24 - 24 - 27 - 25 - 28 - 24 - 25 - 24 - 26 - - - 24 - 28 - 25 - 25 - 28 - 26 - 29 - 25 - 26 - 25 - 27 - - - 25 - 29 - 26 - 26 - 29 - 27 - 30 - 26 - 27 - 26 - 28 - - - 26 - 30 - 27 - 30 - 28 - 0 - 31 - 27 - 28 - 27 - 29 - - - 27 - 31 - 27 - 28 - 31 - 29 - 0 - 32 - 28 - 29 - 28 - 30 - - - 28 - 32 - 28 - 32 - 30 - 0 - 33 - 29 - 30 - 29 - 31 - - - 29 - 33 - 29 - 29 - 33 - 31 - 0 - 34 - 30 - 31 - 30 - 32 - - - 30 - 34 - 30 - 30 - 34 - 0 - 35 - 31 - 32 - 31 - 33 - - - 31 - 35 - 31 - 31 - 35 - 32 - 0 - 36 - 32 - 33 - 32 - 34 - - - 32 - 36 - 32 - 32 - 36 - 0 - 37 - 33 - 34 - 33 - 35 - - - 33 - 37 - 33 - 33 - 37 - 33 - 38 - 34 - 35 - 34 - 36 - - - 34 - 38 - 34 - 34 - 38 - 34 - 0 - 39 - 35 - 36 - 35 - 37 - - - 35 - 39 - 35 - 35 - 39 - 35 - 0 - 40 - 36 - 37 - 36 - 38 - - - 36 - 40 - 36 - 36 - 40 - 36 - 0 - 41 - 37 - 38 - 37 - 39 - - - 37 - 41 - 37 - 37 - 41 - 37 - 0 - 42 - 38 - 39 - 38 - 40 - - - 38 - 42 - 38 - 38 - 42 - 38 - 0 - 43 - 39 - 40 - 39 - 41 - - - 39 - 43 - 39 - 39 - 43 - 39 - 0 - 44 - 40 - 41 - 40 - 42 - - - 40 - 44 - 40 - 40 - 44 - 40 - 0 - 45 - 41 - 42 - 41 - 43 - - - 41 - 45 - 41 - 41 - 45 - 41 - 0 - 46 - 42 - 43 - 42 - 44 - - - 42 - 46 - 42 - 42 - 46 - 42 - 0 - 47 - 43 - 44 - 43 - 45 - - - 43 - 47 - 43 - 43 - 47 - 43 - 0 - 48 - 44 - 45 - 44 - 46 - 46 - - - 44 - 48 - 44 - 44 - 48 - 44 - 0 - 49 - 45 - 46 - 45 - 47 - 47 - - - 45 - 49 - 45 - 45 - 49 - 45 - 0 - 50 - 46 - 47 - 46 - 48 - 48 - - - 46 - 50 - 46 - 46 - 50 - 46 - 0 - 51 - 48 - 47 - 46 - 49 - 49 - - - 47 - 51 - 47 - 47 - 51 - 47 - 52 - 47 - 48 - 47 - 50 - 50 - - - 48 - 52 - 48 - 48 - 52 - 48 - 53 - 48 - 49 - 48 - 51 - 51 - - - 49 - 53 - 49 - 49 - 53 - 49 - 54 - 49 - 49 - 49 - 52 - - - 50 - 54 - 50 - 50 - 54 - 50 - 0 - 55 - 50 - 50 - 50 - 50 - 52 - 53 - - - 51 - 55 - 51 - 51 - 55 - 51 - 0 - 56 - 51 - 51 - 51 - 51 - 53 - 54 - - - 52 - 56 - 52 - 52 - 56 - 52 - 57 - 52 - 52 - 52 - 52 - 54 - 55 - - - 53 - 57 - 53 - 53 - 57 - 53 - 251 - 58 - 53 - 53 - 53 - 53 - 55 - 56 - - - 54 - 58 - 54 - 54 - 58 - 54 - 502 - 59 - 54 - 54 - 54 - 54 - 56 - 57 - - - 55 - 59 - 55 - 55 - 59 - 55 - 0 - 60 - 55 - 55 - 55 - 55 - 57 - - - 56 - 60 - 56 - 56 - 60 - 56 - 502 - 61 - 56 - 56 - 56 - 56 - 58 - 58 - - - 57 - 61 - 57 - 57 - 61 - 57 - 251 - 62 - 57 - 57 - 57 - 57 - 59 - 59 - - - 58 - 62 - 58 - 58 - 62 - 58 - 251 - 63 - 58 - 58 - 58 - 58 - 60 - 60 - - - 59 - 63 - 59 - 59 - 63 - 59 - 0 - 21 - 59 - 59 - 59 - 59 - 61 - 61 - - - 60 - 64 - 60 - 60 - 64 - 60 - 0 - 64 - 60 - 60 - 60 - 60 - 62 - 62 - - - 61 - 65 - 61 - 61 - 65 - 61 - 0 - 65 - 61 - 61 - 61 - 61 - 63 - 63 - - - 62 - 66 - 62 - 62 - 66 - 62 - 0 - 66 - 62 - 62 - 62 - 62 - 64 - 64 - - - 63 - 67 - 63 - 63 - 67 - 63 - 0 - 67 - 63 - 63 - 63 - 63 - 65 - 65 - - - 64 - 68 - 64 - 64 - 68 - 64 - 0 - 68 - 64 - 64 - 64 - 64 - 66 - 66 - - - 65 - 69 - 65 - 65 - 69 - 65 - 0 - 69 - 65 - 65 - 65 - 65 - 67 - 67 - - - 66 - 70 - 66 - 66 - 70 - 66 - 0 - 70 - 66 - 66 - 66 - 66 - 68 - 68 - - - 67 - 71 - 67 - 67 - 71 - 67 - 0 - 71 - 67 - 67 - 67 - 67 - 69 - 69 - - - 68 - 72 - 68 - 68 - 72 - 68 - 0 - 72 - 68 - 68 - 68 - 68 - 70 - 70 - - - 69 - 73 - 69 - 69 - 73 - 69 - 73 - 69 - 69 - 69 - 69 - 71 - 71 - - - 70 - 74 - 70 - 70 - 74 - 70 - 0 - 74 - 70 - 70 - 70 - 70 - 72 - 72 - - - 71 - 75 - 71 - 71 - 75 - 71 - 0 - 75 - 71 - 71 - 71 - 71 - 73 - 73 - - - 72 - 76 - 72 - 72 - 76 - 72 - 0 - 76 - 72 - 72 - 72 - 72 - 74 - 74 - - - 73 - 77 - 73 - 73 - 77 - 73 - 0 - 77 - 73 - 73 - 73 - 73 - 75 - 75 - - - 74 - 78 - 74 - 74 - 78 - 74 - 0 - 78 - 74 - 74 - 74 - 74 - 76 - 76 - - - 75 - 79 - 75 - 75 - 79 - 75 - 0 - 79 - 75 - 75 - 75 - 75 - 77 - 77 - - - 76 - 80 - 76 - 76 - 80 - 76 - 0 - 80 - 76 - 76 - 76 - 76 - 78 - 78 - - - 77 - 81 - 77 - 77 - 81 - 77 - 0 - 81 - 77 - 77 - 77 - 77 - 79 - 79 - - - 78 - 82 - 78 - 78 - 82 - 78 - 0 - 82 - 78 - 78 - 78 - 78 - 80 - 80 - - - 79 - 83 - 79 - 79 - 83 - 79 - 0 - 83 - 79 - 79 - 79 - 79 - 81 - 81 - - - 80 - 84 - 80 - 80 - 84 - 80 - 0 - 84 - 80 - 80 - 80 - 80 - 82 - 82 - - - 81 - 85 - 81 - 81 - 85 - 81 - 0 - 85 - 81 - 81 - 81 - 81 - 83 - 83 - - - 82 - 86 - 82 - 82 - 86 - 82 - 86 - 82 - 82 - 82 - 82 - 84 - 84 - - - 83 - 20 - 83 - 83 - 20 - 83 - 22 - 83 - 83 - 83 - 83 - 83 - 85 - 85 - - - 84 - 21 - 84 - 84 - 21 - 84 - 23 - 84 - 84 - 84 - 84 - 84 - 86 - 86 - - - 85 - 22 - 85 - 85 - 22 - 85 - 24 - 85 - 85 - 85 - 85 - 85 - 87 - 87 - - - 86 - 23 - 86 - 86 - 23 - 86 - 25 - 86 - 86 - 86 - 86 - 86 - 88 - 88 - - - 87 - 87 - 87 - 87 - 87 - 87 - 87 - 87 - 87 - 87 - 87 - 87 - 87 - 89 - - - 88 - 88 - 88 - 88 - 88 - 88 - 0 - 88 - 88 - 88 - 88 - 88 - 88 - 88 - 89 - 90 - - - 89 - 89 - 89 - 89 - 89 - 89 - 0 - 89 - 89 - 89 - 89 - 89 - 89 - 89 - 90 - 91 - - - 90 - 90 - 90 - 90 - 90 - 90 - 90 - 90 - 90 - 90 - 90 - 90 - 90 - 91 - 92 - - dummy - - 2150 - - - 10000 - - - 1004 - - - 1004 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - - - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 0 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 0 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 0 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 0 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 0 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 0 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 0 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 0 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 0 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 0 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 0 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 0 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 0 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 0 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 0 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 0 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 0 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 0 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 0 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 0 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 0 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 0 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 0 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 0 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 0 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 0 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - 0 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - - - 0 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - - - 0 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - - - 38 - 38 - 38 - 38 - 38 - 38 - 38 - - - 39 - 39 - 39 - 39 - 39 - 39 - 39 - - - 0 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - - - 0 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - - - 0 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - - - 43 - 43 - 43 - 43 - 43 - 43 - 43 - - - 0 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - - - 0 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 0 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 0 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 0 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 0 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 0 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 0 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 0 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 0 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 0 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 0 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 0 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 0 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 0 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 0 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 0 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 0 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 0 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 0 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 0 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 0 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 0 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 0 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 0 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 0 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 0 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 0 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 0 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 0 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 0 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 0 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 0 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 0 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - 0 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - - - 0 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - - - 0 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - - - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - - - - - 3 - 3 - 3 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 4 - 4 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 4 - 5 - 1 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 1 - 4600 - 6 - 5 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 7 - 6 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 1 - 7 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 8 - 8 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 9 - 9 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 10 - 10 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 2 - 11 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 12 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 13 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 2 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - ui_bgm_hdr_cloudrunner_fortress - 0 - 8750 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - 2 - 3450 - 4 - 4 - 4 - 4 - 4 - 0 - 4 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 4 - 2 - 5 - 5 - 5 - 5 - 0 - 5 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 5 - 5 - 6 - 6 - 6 - 6 - 0 - 6 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 3 - 1200 - 6 - 7 - 7 - 7 - 7 - 0 - 7 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 7 - 8 - 8 - 8 - 8 - 0 - 8 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 8 - 9 - 9 - 9 - 9 - 0 - 9 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 9 - 10 - 10 - 10 - 10 - 0 - 10 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 3 - 11 - 11 - 11 - 11 - 0 - 11 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 12 - 12 - 12 - 12 - 0 - 12 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 13 - 13 - 13 - 13 - 0 - 13 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 14 - 14 - 14 - 14 - 0 - 14 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 15 - 3 - 15 - 15 - 0 - 15 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 16 - 15 - 16 - 16 - 0 - 16 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 17 - 2 - 17 - 17 - 0 - 17 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 18 - 16 - 18 - 18 - 0 - 18 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 19 - 17 - 19 - 19 - 0 - 19 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 20 - 18 - 2 - 20 - 0 - 20 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 21 - 19 - 3 - 21 - 0 - 21 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 22 - 20 - 20 - 22 - 0 - 22 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 23 - 21 - 21 - 23 - 0 - 23 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 24 - 22 - 22 - 24 - 0 - 2 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 25 - 23 - 23 - 3 - 0 - 24 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 26 - 24 - 24 - 2 - 0 - 25 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 27 - 25 - 25 - 25 - 0 - 3 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 28 - 26 - 26 - 26 - 0 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 29 - 27 - 27 - 27 - 0 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 30 - 28 - 28 - 28 - 0 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 29 - 31 - 29 - 29 - 29 - 0 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 30 - 2 - 30 - 30 - 30 - 0 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 31 - 31 - 32 - 31 - 31 - 31 - 0 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 32 - 3 - 32 - 32 - 32 - 0 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 33 - 33 - 33 - 33 - 33 - 33 - 0 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 34 - 34 - 34 - 34 - 34 - 34 - 0 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - ui_bgm_hdr_team_skull_megamix - 0 - 10000 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - ui_bgm_hdr_abyssal_ruins - 1 - 5750 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - - - 1 - 7150 - 3 - 3 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 3 - 4 - 4 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 4 - 5 - 5 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 5 - 6 - 6 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 2 - 3350 - 7 - 7 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 8 - 8 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 9 - 9 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 10 - 10 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 11 - 11 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 12 - 12 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 13 - 13 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 14 - 14 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 15 - 15 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 16 - 2 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 17 - 16 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 18 - 17 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 19 - 18 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 20 - 19 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 21 - 20 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 22 - 21 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 23 - 22 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 24 - 23 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 25 - 24 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 26 - 25 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 27 - 26 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 28 - 27 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 29 - 1 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 30 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 31 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 32 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 31 - 33 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 34 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 33 - 1 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 34 - 35 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - 35 - 2 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - - - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - - - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - - - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - - - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - - - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - - - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - - - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - - - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - - - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - - - 51 - 51 - 51 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - - - 52 - 52 - 52 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - - - 46 - 46 - 46 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - - - 47 - 47 - 47 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - - - 45 - 45 - 45 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - - - 48 - 48 - 48 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - - - 50 - 50 - 50 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - - - 49 - 49 - 49 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - 52 - - - ui_bgm_hdr_versus_julius - 0 - 10000 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - - - 0 - - - 0 - 1 - 1 - 1 - 1 - 1 - - - 0 - 2 - 2 - 2 - 2 - 2 - - - 0 - 3 - 3 - 3 - 3 - 3 - - - 0 - 4 - 4 - 4 - 4 - 4 - - - 0 - 5 - 5 - 5 - 5 - 5 - - - 0 - 6 - 6 - 6 - 6 - 6 - - - 0 - 7 - 7 - 7 - 7 - 7 - - - 0 - 8 - 8 - 8 - 8 - 8 - - - 0 - 9 - 9 - 9 - 9 - 9 - - - 0 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - - - 0 - 12 - 12 - 12 - 12 - 12 - - - 0 - 13 - 13 - 13 - 13 - 13 - - - 0 - 14 - 14 - 14 - 14 - 14 - - - 0 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - - - 0 - 17 - 17 - 17 - 17 - 17 - - - 0 - 18 - 18 - 18 - 18 - 18 - - - 0 - 19 - 19 - 19 - 19 - 19 - - - 0 - 20 - 20 - 20 - 20 - 20 - - - 0 - 21 - 21 - 21 - 21 - 21 - - - 0 - 22 - 22 - 22 - 22 - 22 - - - 0 - 23 - 23 - 23 - 23 - 23 - - - 0 - 24 - 24 - 24 - 24 - 24 - - - 0 - 25 - 25 - 25 - 25 - 25 - - - 0 - 26 - 26 - 26 - 26 - 26 - - - 0 - 27 - 27 - 27 - 27 - 27 - - - 0 - 28 - 28 - 28 - 28 - 28 - - - 0 - 29 - 29 - 29 - 29 - 29 - - - 0 - 30 - 30 - 30 - 30 - 30 - - - 0 - 31 - 31 - 31 - 31 - 31 - - - 0 - 32 - 32 - 32 - 32 - 32 - - - 0 - 33 - 33 - 33 - 33 - 33 - - - 0 - 34 - 34 - 34 - 34 - 34 - - - 0 - 35 - 35 - 35 - 35 - 35 - - - 0 - 36 - 36 - 36 - 36 - 36 - - - 0 - 37 - 37 - 37 - 37 - 37 - - - 0 - 38 - 38 - 38 - 38 - 38 - - - 0 - 39 - 39 - 39 - 39 - 39 - - - 0 - 40 - 40 - 40 - 40 - 40 - - - 41 - 41 - 41 - 41 - 41 - - - 0 - 42 - 42 - 42 - 42 - 42 - - - 0 - 43 - 43 - 43 - 43 - 43 - - - 0 - 44 - 44 - 44 - 44 - 44 - - - 0 - 45 - 45 - 45 - 45 - 45 - - - 0 - 46 - 46 - 46 - 46 - 46 - - - 0 - 47 - 47 - 47 - 47 - 47 - - - 0 - 48 - 48 - 48 - 48 - 48 - - - 0 - 49 - 49 - 49 - 49 - 49 - - - 0 - 50 - 50 - 50 - 50 - 50 - - - 0 - 51 - 51 - 51 - 51 - 51 - - - 52 - 52 - 52 - 52 - 52 - - - 0 - 53 - 53 - 53 - 53 - 53 - - - 54 - 54 - 54 - 54 - 54 - - - 0 - 55 - 55 - 55 - 55 - 55 - - - 0 - 56 - 56 - 56 - 56 - 56 - - - 0 - 57 - 57 - 57 - 57 - 57 - - - 0 - 58 - 58 - 58 - 58 - 58 - - - 0 - 59 - 59 - 59 - 59 - 59 - - - 0 - 60 - 60 - 60 - 60 - 60 - - - 0 - 61 - 61 - 61 - 61 - 61 - - - 0 - 62 - 62 - 62 - 62 - 62 - - - 0 - 63 - 63 - 63 - 63 - 63 - - - 0 - 64 - 64 - 64 - 64 - 64 - - - 0 - 65 - 65 - 65 - 65 - 65 - - - 0 - 66 - 66 - 66 - 66 - 66 - - - 0 - 67 - 67 - 67 - 67 - 67 - - - 0 - 68 - 68 - 68 - 68 - 68 - - - 0 - 69 - 69 - 69 - 69 - 69 - - - 0 - 70 - 70 - 70 - 70 - 70 - - - 71 - 71 - 71 - 71 - 71 - - - 0 - 72 - 72 - 72 - 72 - 72 - - - 0 - 73 - 73 - 73 - 73 - 73 - - - 74 - 74 - 74 - 74 - 74 - - - 0 - 75 - 75 - 75 - 75 - 75 - - - 0 - 76 - 76 - 76 - 76 - 76 - - - 0 - 77 - 77 - 77 - 77 - 77 - - - 0 - 78 - 78 - 78 - 78 - 78 - - - 0 - 79 - 79 - 79 - 79 - 79 - - - 0 - 80 - 80 - 80 - 80 - 80 - - - 0 - 81 - 81 - 81 - 81 - 81 - - - 0 - 82 - 82 - 82 - 82 - 82 - - - 0 - 83 - 83 - 83 - 83 - 83 - - - 0 - 84 - 84 - 84 - 84 - 84 - - - 0 - 85 - 85 - 85 - 85 - 85 - - - 0 - 86 - 86 - 86 - 86 - 86 - - - 0 - 87 - 87 - 87 - 87 - 87 - - - 0 - 88 - 88 - 88 - 88 - 88 - - - 0 - 89 - 89 - 89 - 89 - 89 - - - 0 - 90 - 90 - 90 - 90 - 90 - - - 0 - 91 - 91 - 91 - 91 - 91 - - - 0 - 92 - 92 - 92 - 92 - 92 - - - 0 - 93 - 93 - 93 - 93 - 93 - - - 0 - 94 - 94 - 94 - 94 - 94 - - - 0 - 95 - 95 - 95 - 95 - 95 - - - 0 - 96 - 96 - 96 - 96 - 96 - - - 0 - 97 - 97 - 97 - 97 - 97 - - - 0 - 98 - 98 - 98 - 98 - 98 - - - 0 - 99 - 99 - 99 - 99 - 99 - - - 0 - 100 - 100 - 100 - 100 - 100 - - - 0 - 101 - 101 - 101 - 101 - 101 - - - 0 - 102 - 102 - 102 - 102 - 102 - - - 0 - 103 - 103 - 103 - 103 - 103 - - - 0 - 104 - 104 - 104 - 104 - 104 - - - 0 - 105 - 105 - 105 - 105 - 105 - - - 0 - 106 - 106 - 106 - 106 - 106 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - - - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - - - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - - - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - - - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - - - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - - - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - - - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - - - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - - - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - - - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - - - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - - - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - - - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - - - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - - - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - - - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - - - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - - - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - 39 - - - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - 40 - - - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - 41 - - - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - 42 - - - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - 43 - - - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - 44 - - - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - 45 - - - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - 46 - - - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - 47 - - - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - 48 - - - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - 49 - - - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - 50 - - - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - 51 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - 28 - - - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - 29 - - - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - 30 - - - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - 31 - - - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - 32 - - - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - 33 - - - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - 34 - - - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - 35 - - - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - 36 - - - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - 37 - - - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - 38 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - - dummy - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - - - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - 3 - - - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - 4 - - - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - 5 - - - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - 6 - - - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - 7 - - - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - 8 - - - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - 9 - - - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - 10 - - - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - 11 - - - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - 12 - - - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - 13 - - - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - 14 - - - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - 15 - - - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - 16 - - - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - 17 - - - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - 18 - - - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - 19 - - - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - 20 - - - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - 21 - - - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - 22 - - - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - 23 - - - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - 24 - - - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - 25 - - - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - 26 - - - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - 27 - - - \ No newline at end of file diff --git a/romfs/source/ui/param/database/ui_gametitle_db.prcxml b/romfs/source/ui/param/database/ui_gametitle_db.prcxml deleted file mode 100644 index 41f011e700..0000000000 --- a/romfs/source/ui/param/database/ui_gametitle_db.prcxml +++ /dev/null @@ -1,581 +0,0 @@ - - - - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - dummy - - ui_gametitle_star_fox_adventures - star_fox_adventures - ui_series_starfox - false - 0 - - - ui_gametitle_projectnx - projectnx - ui_series_smashbros - false - 0 - - - ui_gametitle_hewdraw_remix - hewdraw_remix - ui_series_smashbros - false - 0 - - - \ No newline at end of file From 8101b1a18e472a63efdb8256518ad1541665411d Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Fri, 31 Oct 2025 15:22:27 -0400 Subject: [PATCH 18/19] Update fighter_param.xml --- .../fighter/common/hdr/param/fighter_param.xml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/romfs/source/fighter/common/hdr/param/fighter_param.xml b/romfs/source/fighter/common/hdr/param/fighter_param.xml index d3dfefe4e3..35bbd6ee88 100644 --- a/romfs/source/fighter/common/hdr/param/fighter_param.xml +++ b/romfs/source/fighter/common/hdr/param/fighter_param.xml @@ -263,7 +263,7 @@ 1.0 1.5 1.8 - true + false WARIO @@ -295,7 +295,7 @@ 0.9 1.5 1.7 - true + false PFUSHIGISOU @@ -303,7 +303,7 @@ 1.0 1.5 1.8 - true + false PLIZARDON @@ -311,7 +311,7 @@ 1.0 1.5 1.8 - true + false DIDDY @@ -327,7 +327,7 @@ 0.95 1.5 1.8 - true + false SONIC @@ -343,7 +343,7 @@ 1.0 1.5 1.8 - true + false PIKMIN @@ -351,7 +351,7 @@ 1.0 1.5 1.8 - true + false LUCARIO @@ -711,7 +711,7 @@ 1.0 1.5 1.8 - true + false EDGE From d6e57256132ac89745888741de3b5adc0de92279 Mon Sep 17 00:00:00 2001 From: jobrien97 <47401664+jobrien97@users.noreply.github.com> Date: Mon, 30 Mar 2026 21:15:10 -0400 Subject: [PATCH 19/19] use neutral wakeup anim as respawn default --- .../common/src/general_statuses/rebirth.rs | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/fighters/common/src/general_statuses/rebirth.rs b/fighters/common/src/general_statuses/rebirth.rs index 8da5702e16..4a99ebd98d 100644 --- a/fighters/common/src/general_statuses/rebirth.rs +++ b/fighters/common/src/general_statuses/rebirth.rs @@ -336,10 +336,6 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { let lr = PostureModule::lr(fighter.module_accessor); let kind = fighter.global_table[FIGHTER_KIND].get_i32(); - if !ParamModule::is_flag(fighter.object(), ParamType::Shared, "use_entry_anim_on_respawn") { - return original!()(fighter); - } - CameraModule::reset_all(fighter.module_accessor); ControlModule::reset_trigger(fighter.module_accessor); @@ -414,8 +410,9 @@ unsafe extern "C" fn sub_rebirth_common_pre(fighter: &mut L2CFighterCommon) { { MotionModule::change_motion(fighter.module_accessor, Hash40::new("respawn"), 0.0, 1.0, false, 0.0, false, false); } - else if [*FIGHTER_KIND_PIKMIN].contains(&kind) { - MotionModule::change_motion(fighter.module_accessor, Hash40::new("wait"), 0.0, 1.0, false, 0.0, false, false); + else if !ParamModule::is_flag(fighter.object(), ParamType::Shared, "use_entry_anim_on_respawn") + || [*FIGHTER_KIND_PIKMIN].contains(&kind) { + MotionModule::change_motion(fighter.module_accessor, Hash40::new("down_stand_d"), 0.0, 0.0, false, 0.0, false, false); } else { if lr == -1.0 { @@ -696,7 +693,14 @@ unsafe extern "C" fn status_rebirth_main(fighter: &mut L2CFighterCommon) -> L2CV return 1.into(); } - if fighter.is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r")]) { + let rebirth_move_frame = WorkModule::get_param_int(fighter.module_accessor, hash40("common"), hash40("rebirth_move_frame")); + let down_stand_d_end_frame = MotionModule::end_frame_from_hash(fighter.module_accessor, Hash40::new("down_stand_d")) as i32; + if fighter.is_motion(Hash40::new("down_stand_d")) + && fighter.global_table[CURRENT_FRAME].get_i32() == (rebirth_move_frame - 10) - down_stand_d_end_frame { + MotionModule::set_rate(fighter.module_accessor, 1.0); + } + + if fighter.is_motion_one_of(&[Hash40::new("entry_l"), Hash40::new("entry_r"), Hash40::new("down_stand_d")]) { rebirth_motion_handler(fighter); } else {