From cd6992285e01d6132a6bfad6362176cd957a8f46 Mon Sep 17 00:00:00 2001 From: Cameron Fairchild Date: Wed, 2 Apr 2025 18:20:19 -0400 Subject: [PATCH 1/2] remove unused SubnetName map and use identity instead --- pallets/subtensor/src/lib.rs | 3 - pallets/subtensor/src/macros/hooks.rs | 4 +- .../migrate_remove_subnet_name_map.rs | 65 + pallets/subtensor/src/migrations/mod.rs | 1 + pallets/subtensor/src/subnets/symbols.rs | 1050 +++++++++-------- 5 files changed, 597 insertions(+), 526 deletions(-) create mode 100644 pallets/subtensor/src/migrations/migrate_remove_subnet_name_map.rs diff --git a/pallets/subtensor/src/lib.rs b/pallets/subtensor/src/lib.rs index e360c307e..043fabeea 100644 --- a/pallets/subtensor/src/lib.rs +++ b/pallets/subtensor/src/lib.rs @@ -1061,9 +1061,6 @@ pub mod pallet { #[pallet::storage] // --- MAP ( netuid ) --> token_symbol | Returns the token symbol for a subnet. pub type TokenSymbol = StorageMap<_, Identity, u16, Vec, ValueQuery, DefaultUnicodeVecU8>; - #[pallet::storage] // --- MAP ( netuid ) --> subnet_name | Returns the name of the subnet. - pub type SubnetName = - StorageMap<_, Identity, u16, Vec, ValueQuery, DefaultUnicodeVecU8>; /// ============================ /// ==== Global Parameters ===== diff --git a/pallets/subtensor/src/macros/hooks.rs b/pallets/subtensor/src/macros/hooks.rs index 49fc4ccfe..303228a56 100644 --- a/pallets/subtensor/src/macros/hooks.rs +++ b/pallets/subtensor/src/macros/hooks.rs @@ -87,7 +87,9 @@ mod hooks { // Remove all zero value entries in TotalHotkeyAlpha .saturating_add(migrations::migrate_remove_zero_total_hotkey_alpha::migrate_remove_zero_total_hotkey_alpha::()) // Wipe existing items to prevent bad decoding for new type - .saturating_add(migrations::migrate_upgrade_revealed_commitments::migrate_upgrade_revealed_commitments::()); + .saturating_add(migrations::migrate_upgrade_revealed_commitments::migrate_upgrade_revealed_commitments::()) + // Wipe unused SubnetName map + .saturating_add(migrations::migrate_remove_subnet_name_map::migrate_remove_subnet_name_map::()); weight } diff --git a/pallets/subtensor/src/migrations/migrate_remove_subnet_name_map.rs b/pallets/subtensor/src/migrations/migrate_remove_subnet_name_map.rs new file mode 100644 index 000000000..b7259325d --- /dev/null +++ b/pallets/subtensor/src/migrations/migrate_remove_subnet_name_map.rs @@ -0,0 +1,65 @@ +use super::*; +use crate::HasMigrationRun; +use frame_support::{traits::Get, weights::Weight}; +use scale_info::prelude::string::String; +use sp_io::{ + KillStorageResult, + hashing::twox_128, + storage::{clear, clear_prefix}, +}; + +fn remove_prefix(old_map: &str, weight: &mut Weight) { + let mut prefix = Vec::new(); + prefix.extend_from_slice(&twox_128("SubtensorModule".as_bytes())); + prefix.extend_from_slice(&twox_128(old_map.as_bytes())); + + let removal_results = clear_prefix(&prefix, Some(u32::MAX)); + + let removed_entries_count = match removal_results { + KillStorageResult::AllRemoved(removed) => removed as u64, + KillStorageResult::SomeRemaining(removed) => { + log::info!("Failed To Remove Some Items During migration"); + removed as u64 + } + }; + + log::info!( + "Removed {:?} entries from {:?} map.", + removed_entries_count, + old_map + ); + + *weight = (*weight).saturating_add(T::DbWeight::get().writes(removed_entries_count)); +} + +pub fn migrate_remove_subnet_name_map() -> Weight { + let migration_name = b"migrate_remove_subnet_name_map".to_vec(); + let mut weight = T::DbWeight::get().reads(1); + + if HasMigrationRun::::get(&migration_name) { + log::info!( + "Migration '{:?}' has already run. Skipping.", + migration_name + ); + return weight; + } + + log::info!( + "Running migration '{}'", + String::from_utf8_lossy(&migration_name) + ); + + // Remove SubnetName + remove_prefix::("SubnetName", &mut weight); + + // Mark Migration as Completed + HasMigrationRun::::insert(&migration_name, true); + weight = weight.saturating_add(T::DbWeight::get().writes(1)); + + log::info!( + "Migration '{:?}' completed successfully.", + String::from_utf8_lossy(&migration_name) + ); + + weight +} diff --git a/pallets/subtensor/src/migrations/mod.rs b/pallets/subtensor/src/migrations/mod.rs index 23fb3cde1..9fadd4a2f 100644 --- a/pallets/subtensor/src/migrations/mod.rs +++ b/pallets/subtensor/src/migrations/mod.rs @@ -10,6 +10,7 @@ pub mod migrate_init_total_issuance; pub mod migrate_populate_owned_hotkeys; pub mod migrate_rao; pub mod migrate_remove_stake_map; +pub mod migrate_remove_subnet_name_map; pub mod migrate_remove_unused_maps_and_values; pub mod migrate_remove_zero_total_hotkey_alpha; pub mod migrate_set_first_emission_block_number; diff --git a/pallets/subtensor/src/subnets/symbols.rs b/pallets/subtensor/src/subnets/symbols.rs index 6350c303e..764290970 100644 --- a/pallets/subtensor/src/subnets/symbols.rs +++ b/pallets/subtensor/src/subnets/symbols.rs @@ -3,528 +3,534 @@ use super::*; /// Returns the Unicode symbol as a Vec for a given netuid. impl Pallet { pub fn get_name_for_subnet(netuid: u16) -> Vec { - if SubnetName::::contains_key(netuid) { - SubnetName::::get(netuid) - } else { - match netuid { - 0 => b"root".to_vec(), // Τ (Upper case Tau) - 1 => b"apex".to_vec(), // α (Alpha) - 2 => b"omron".to_vec(), // β (Beta) - 3 => b"templar".to_vec(), // γ (Gamma) - 4 => b"targon".to_vec(), // δ (Delta) - 5 => b"kaito".to_vec(), // ε (Epsilon) - 6 => b"infinite".to_vec(), // ζ (Zeta) - 7 => b"subvortex".to_vec(), // η (Eta) - 8 => b"ptn".to_vec(), // θ (Theta) - 9 => b"pretrain".to_vec(), // ι (Iota) - 10 => b"sturdy".to_vec(), // κ (Kappa) - 11 => b"dippy".to_vec(), // λ (Lambda) - 12 => b"horde".to_vec(), // μ (Mu) - 13 => b"dataverse".to_vec(), // ν (Nu) - 14 => b"palaidn".to_vec(), // ξ (Xi) - 15 => b"deval".to_vec(), // ο (Omicron) - 16 => b"bitads".to_vec(), // π (Pi) - 17 => b"3gen".to_vec(), // ρ (Rho) - 18 => b"cortex".to_vec(), // σ (Sigma) - 19 => b"inference".to_vec(), // t (Tau) - 20 => b"bitagent".to_vec(), // υ (Upsilon) - 21 => b"any-any".to_vec(), // φ (Phi) - 22 => b"meta".to_vec(), // χ (Chi) - 23 => b"social".to_vec(), // ψ (Psi) - 24 => b"omega".to_vec(), // ω (Omega) - 25 => b"protein".to_vec(), // א (Aleph) - 26 => b"alchemy".to_vec(), // ב (Bet) - 27 => b"compute".to_vec(), // ג (Gimel) - 28 => b"oracle".to_vec(), // ד (Dalet) - 29 => b"coldint".to_vec(), // ה (He) - 30 => b"bet".to_vec(), // ו (Vav) - 31 => b"naschain".to_vec(), // ז (Zayin) - 32 => b"itsai".to_vec(), // ח (Het) - 33 => b"ready".to_vec(), // ט (Tet) - 34 => b"mind".to_vec(), // י (Yod) - 35 => b"logic".to_vec(), // ך (Final Kaf) - 36 => b"automata".to_vec(), // כ (Kaf) - 37 => b"tuning".to_vec(), // ל (Lamed) - 38 => b"distributed".to_vec(), // ם (Final Mem) - 39 => b"edge".to_vec(), // מ (Mem) - 40 => b"chunk".to_vec(), // ן (Final Nun) - 41 => b"sportsensor".to_vec(), // נ (Nun) - 42 => b"masa".to_vec(), // ס (Samekh) - 43 => b"graphite".to_vec(), // ע (Ayin) - 44 => b"score".to_vec(), // ף (Final Pe) - 45 => b"gen42".to_vec(), // פ (Pe) - 46 => b"neural".to_vec(), // ץ (Final Tsadi) - 47 => b"condense".to_vec(), // צ (Tsadi) - 48 => b"nextplace".to_vec(), // ק (Qof) - 49 => b"automl".to_vec(), // ר (Resh) - 50 => b"audio".to_vec(), // ש (Shin) - 51 => b"celium".to_vec(), // ת (Tav) - 52 => b"dojo".to_vec(), // ا (Alif) - 53 => b"frontier".to_vec(), // ب (Ba) - 54 => b"safescan".to_vec(), // ت (Ta) - 55 => b"unknown".to_vec(), // ث (Tha) - 56 => b"gradients".to_vec(), // ج (Jim) - 57 => b"gaia".to_vec(), // ح (Ha) - 58 => b"dippy-speach".to_vec(), // خ (Kha) - 59 => b"agent-arena".to_vec(), // د (Dal) - 60 => b"unknown".to_vec(), // ذ (Dhal) - 61 => b"red team".to_vec(), // ر (Ra) - 62 => b"agentao".to_vec(), // ز (Zay) - 63 => b"lean-in".to_vec(), // س (Sin) - 64 => b"chutes".to_vec(), // ش (Shin) - 65 => b"sad".to_vec(), - 66 => b"dad".to_vec(), - 67 => b"ta".to_vec(), - 68 => b"dha".to_vec(), - 69 => b"ain".to_vec(), - 70 => b"ghayn".to_vec(), - 71 => b"fa".to_vec(), - 72 => b"qaf".to_vec(), - 73 => b"kaf".to_vec(), - 74 => b"lam".to_vec(), - 75 => b"mim".to_vec(), - 76 => b"nun".to_vec(), - 77 => b"ha".to_vec(), - 78 => b"waw".to_vec(), - 79 => b"ya".to_vec(), - 80 => b"alef".to_vec(), - 81 => b"ya".to_vec(), - 82 => b"fehu".to_vec(), - 83 => b"uruz".to_vec(), - 84 => b"thurisaz".to_vec(), - 85 => b"ansuz".to_vec(), - 86 => b"raidho".to_vec(), - 87 => b"kaunan".to_vec(), - 88 => b"eihwaz".to_vec(), - 89 => b"algiz".to_vec(), - 90 => b"berkanan".to_vec(), - 91 => b"ogham".to_vec(), - 92 => b"beith".to_vec(), - 93 => b"luis".to_vec(), - 94 => b"fearn".to_vec(), - 95 => b"sail".to_vec(), - 96 => b"nion".to_vec(), - 97 => b"forfeda".to_vec(), - 98 => b"ani".to_vec(), - 99 => b"bani".to_vec(), - 100 => b"gani".to_vec(), - 101 => b"doni".to_vec(), - 102 => b"eni".to_vec(), - 103 => b"vini".to_vec(), - 104 => b"ayp".to_vec(), - 105 => b"ben".to_vec(), - 106 => b"gim".to_vec(), - 107 => b"da".to_vec(), - 108 => b"ech".to_vec(), - 109 => b"za".to_vec(), - 110 => b"armeni".to_vec(), - 111 => b"grave".to_vec(), - 112 => b"io".to_vec(), - 113 => b"dje".to_vec(), - 114 => b"gje".to_vec(), - 115 => b"ie".to_vec(), - 116 => b"dze".to_vec(), - 117 => b"alfa".to_vec(), - 118 => b"alfas".to_vec(), - 119 => b"vida".to_vec(), // Ⲃ (Vida, 119) - 120 => b"vida_small".to_vec(), // ⲃ (Small Vida, 120) - 121 => b"gamma".to_vec(), // Ⲅ (Gamma, 121) - 122 => b"gamma_small".to_vec(), // ⲅ (Small Gamma, 122) - 123 => b"brahmi_a".to_vec(), // 𑀀 (A, 123) - 124 => b"brahmi_aa".to_vec(), // 𑀁 (Aa, 124) - 125 => b"brahmi_i".to_vec(), // 𑀂 (I, 125) - 126 => b"brahmi_ii".to_vec(), // 𑀃 (Ii, 126) - 127 => b"brahmi_u".to_vec(), // 𑀅 (U, 127) - 128 => b"tifinagh_ya".to_vec(), // ⴰ (Ya, 128) - 129 => b"tifinagh_yab".to_vec(), // ⴱ (Yab, 129) - 130 => b"tifinagh_yabh".to_vec(), // ⴲ (Yabh, 130) - 131 => b"tifinagh_yag".to_vec(), // ⴳ (Yag, 131) - 132 => b"tifinagh_yagh".to_vec(), // ⴴ (Yagh, 132) - 133 => b"tifinagh_yaj".to_vec(), // ⴵ (Yaj, 133) - 134 => b"glagolitic_az".to_vec(), // Ⰰ (Az, 134) - 135 => b"glagolitic_buky".to_vec(), // Ⰱ (Buky, 135) - 136 => b"glagolitic_vede".to_vec(), // Ⰲ (Vede, 136) - 137 => b"glagolitic_glagoli".to_vec(), // Ⰳ (Glagoli, 137) - 138 => b"glagolitic_dobro".to_vec(), // Ⰴ (Dobro, 138) - 139 => b"glagolitic_yest".to_vec(), // Ⰵ (Yest, 139) - 140 => b"glagolitic_zhivete".to_vec(), // Ⰶ (Zhivete, 140) - 141 => b"glagolitic_zemlja".to_vec(), // Ⰷ (Zemlja, 141) - 142 => b"glagolitic_izhe".to_vec(), // Ⰸ (Izhe, 142) - 143 => b"glagolitic_initial_izhe".to_vec(), // Ⰹ (Initial Izhe, 143) - 144 => b"glagolitic_i".to_vec(), // Ⰺ (I, 144) - 145 => b"glagolitic_djerv".to_vec(), // Ⰻ (Djerv, 145) - 146 => b"glagolitic_kako".to_vec(), // Ⰼ (Kako, 146) - 147 => b"glagolitic_ljudije".to_vec(), // Ⰽ (Ljudije, 147) - 148 => b"glagolitic_myse".to_vec(), // Ⰾ (Myse, 148) - 149 => b"glagolitic_nash".to_vec(), // Ⰿ (Nash, 149) - 150 => b"glagolitic_on".to_vec(), // Ⱀ (On, 150) - 151 => b"glagolitic_pokoj".to_vec(), // Ⱁ (Pokoj, 151) - 152 => b"glagolitic_rtsy".to_vec(), // Ⱂ (Rtsy, 152) - 153 => b"glagolitic_slovo".to_vec(), // Ⱃ (Slovo, 153) - 154 => b"glagolitic_tvrido".to_vec(), // Ⱄ (Tvrido, 154) - 155 => b"glagolitic_uku".to_vec(), // Ⱅ (Uku, 155) - 156 => b"glagolitic_fert".to_vec(), // Ⱆ (Fert, 156) - 157 => b"glagolitic_xrivi".to_vec(), // Ⱇ (Xrivi, 157) - 158 => b"glagolitic_ot".to_vec(), // Ⱈ (Ot, 158) - 159 => b"glagolitic_cy".to_vec(), // Ⱉ (Cy, 159) - 160 => b"glagolitic_shcha".to_vec(), // Ⱊ (Shcha, 160) - 161 => b"glagolitic_er".to_vec(), // Ⱋ (Er, 161) - 162 => b"glagolitic_yeru".to_vec(), // Ⱌ (Yeru, 162) - 163 => b"glagolitic_small_yer".to_vec(), // Ⱍ (Small Yer, 163) - 164 => b"glagolitic_yo".to_vec(), // Ⱎ (Yo, 164) - 165 => b"glagolitic_yu".to_vec(), // Ⱏ (Yu, 165) - 166 => b"glagolitic_ja".to_vec(), // Ⱐ (Ja, 166) - 167 => b"thai_ko_kai".to_vec(), // ก (Ko Kai, 167) - 168 => b"thai_kho_khai".to_vec(), // ข (Kho Khai, 168) - 169 => b"thai_kho_khuat".to_vec(), // ฃ (Kho Khuat, 169) - 170 => b"thai_kho_khon".to_vec(), // ค (Kho Khon, 170) - 171 => b"thai_kho_rakhang".to_vec(), // ฅ (Kho Rakhang, 171) - 172 => b"thai_kho_khwai".to_vec(), // ฆ (Kho Khwai, 172) - 173 => b"thai_ngo_ngu".to_vec(), // ง (Ngo Ngu, 173) - 174 => b"thai_cho_chan".to_vec(), // จ (Cho Chan, 174) - 175 => b"thai_cho_ching".to_vec(), // ฉ (Cho Ching, 175) - 176 => b"thai_cho_chang".to_vec(), // ช (Cho Chang, 176) - 177 => b"thai_so_so".to_vec(), // ซ (So So, 177) - 178 => b"thai_cho_choe".to_vec(), // ฌ (Cho Choe, 178) - 179 => b"thai_yo_ying".to_vec(), // ญ (Yo Ying, 179) - 180 => b"thai_do_chada".to_vec(), // ฎ (Do Chada, 180) - 181 => b"thai_to_patak".to_vec(), // ฏ (To Patak, 181) - 182 => b"thai_tho_than".to_vec(), // ฐ (Tho Than, 182) - 183 => b"thai_tho_nangmontho".to_vec(), // ฑ (Tho Nangmontho, 183) - 184 => b"thai_tho_phuthao".to_vec(), // ฒ (Tho Phuthao, 184) - 185 => b"thai_no_nen".to_vec(), // ณ (No Nen, 185) - 186 => b"thai_do_dek".to_vec(), // ด (Do Dek, 186) - 187 => b"thai_to_tao".to_vec(), // ต (To Tao, 187) - 188 => b"thai_tho_thung".to_vec(), // ถ (Tho Thung, 188) - 189 => b"thai_tho_thahan".to_vec(), // ท (Tho Thahan, 189) - 190 => b"thai_tho_thong".to_vec(), // ธ (Tho Thong, 190) - 191 => b"thai_no_nu".to_vec(), // น (No Nu, 191) - 192 => b"thai_bo_baimai".to_vec(), // บ (Bo Baimai, 192) - 193 => b"thai_po_pla".to_vec(), // ป (Po Pla, 193) - 194 => b"thai_pho_phung".to_vec(), // ผ (Pho Phung, 194) - 195 => b"thai_fo_fa".to_vec(), // ฝ (Fo Fa, 195) - 196 => b"thai_pho_phan".to_vec(), // พ (Pho Phan, 196) - 197 => b"thai_fo_fan".to_vec(), // ฟ (Fo Fan, 197) - 198 => b"thai_pho_samphao".to_vec(), // ภ (Pho Samphao, 198) - 199 => b"thai_mo_ma".to_vec(), // ม (Mo Ma, 199) - 200 => b"thai_yo_yak".to_vec(), // ย (Yo Yak, 200) - 201 => b"thai_ro_rua".to_vec(), // ร (Ro Rua, 201) - 202 => b"thai_lo_ling".to_vec(), // ล (Lo Ling, 202) - 203 => b"thai_wo_waen".to_vec(), // ว (Wo Waen, 203) - 204 => b"thai_so_sala".to_vec(), // ศ (So Sala, 204) - 205 => b"thai_so_rusi".to_vec(), // ษ (So Rusi, 205) - 206 => b"thai_so_sua".to_vec(), // ส (So Sua, 206) - 207 => b"thai_ho_hip".to_vec(), // ห (Ho Hip, 207) - 208 => b"thai_lo_chula".to_vec(), // ฬ (Lo Chula, 208) - 209 => b"thai_o_ang".to_vec(), // อ (O Ang, 209) - 210 => b"thai_ho_nokhuk".to_vec(), // ฮ (Ho Nokhuk, 210) - 211 => b"hangul_giyeok".to_vec(), // ㄱ (Giyeok, 211) - 212 => b"hangul_nieun".to_vec(), // ㄴ (Nieun, 212) - 213 => b"hangul_digeut".to_vec(), // ㄷ (Digeut, 213) - 214 => b"hangul_rieul".to_vec(), // ㄹ (Rieul, 214) - 215 => b"hangul_mieum".to_vec(), // ㅁ (Mieum, 215) - 216 => b"hangul_bieup".to_vec(), // ㅂ (Bieup, 216) - 217 => b"hangul_siot".to_vec(), // ㅅ (Siot, 217) - 218 => b"hangul_ieung".to_vec(), // ㅇ (Ieung, 218) - 219 => b"hangul_jieut".to_vec(), // ㅈ (Jieut, 219) - 220 => b"hangul_chieut".to_vec(), // ㅊ (Chieut, 220) - 221 => b"hangul_kieuk".to_vec(), // ㅋ (Kieuk, 221) - 222 => b"hangul_tieut".to_vec(), // ㅌ (Tieut, 222) - 223 => b"hangul_pieup".to_vec(), // ㅍ (Pieup, 223) - 224 => b"hangul_hieut".to_vec(), // ㅎ (Hieut, 224) - 225 => b"hangul_a".to_vec(), // ㅏ (A, 225) - 226 => b"hangul_ae".to_vec(), // ㅐ (Ae, 226) - 227 => b"hangul_ya".to_vec(), // ㅑ (Ya, 227) - 228 => b"hangul_yae".to_vec(), // ㅒ (Yae, 228) - 229 => b"hangul_eo".to_vec(), // ㅓ (Eo, 229) - 230 => b"hangul_e".to_vec(), // ㅔ (E, 230) - 231 => b"hangul_yeo".to_vec(), // ㅕ (Yeo, 231) - 232 => b"hangul_ye".to_vec(), // ㅖ (Ye, 232) - 233 => b"hangul_o".to_vec(), // ㅗ (O, 233) - 234 => b"hangul_wa".to_vec(), // ㅘ (Wa, 234) - 235 => b"hangul_wae".to_vec(), // ㅙ (Wae, 235) - 236 => b"hangul_oe".to_vec(), // ㅚ (Oe, 236) - 237 => b"hangul_yo".to_vec(), // ㅛ (Yo, 237) - 238 => b"hangul_u".to_vec(), // ㅜ (U, 238) - 239 => b"hangul_weo".to_vec(), // ㅝ (Weo, 239) - 240 => b"hangul_we".to_vec(), // ㅞ (We, 240) - 241 => b"hangul_wi".to_vec(), // ㅟ (Wi, 241) - 242 => b"hangul_yu".to_vec(), // ㅠ (Yu, 242) - 243 => b"hangul_eu".to_vec(), // ㅡ (Eu, 243) - 244 => b"hangul_ui".to_vec(), // ㅢ (Ui, 244) - 245 => b"hangul_i".to_vec(), // ㅣ (I, 245) - 246 => b"ethiopic_glottal_a".to_vec(), // አ (Glottal A, 246) - 247 => b"ethiopic_glottal_u".to_vec(), // ኡ (Glottal U, 247) - 248 => b"ethiopic_glottal_i".to_vec(), // ኢ (Glottal I, 248) - 249 => b"ethiopic_glottal_aa".to_vec(), // ኣ (Glottal Aa, 249) - 250 => b"ethiopic_glottal_e".to_vec(), // ኤ (Glottal E, 250) - 251 => b"ethiopic_glottal_ie".to_vec(), // እ (Glottal Ie, 251) - 252 => b"ethiopic_glottal_o".to_vec(), // ኦ (Glottal O, 252) - 253 => b"ethiopic_glottal_wa".to_vec(), // ኧ (Glottal Wa, 253) - 254 => b"ethiopic_wa".to_vec(), // ወ (Wa, 254) - 255 => b"ethiopic_wu".to_vec(), // ዉ (Wu, 255) - 256 => b"ethiopic_wi".to_vec(), // ዊ (Wi, 256) - 257 => b"ethiopic_waa".to_vec(), // ዋ (Waa, 257) - 258 => b"ethiopic_we".to_vec(), // ዌ (We, 258) - 259 => b"ethiopic_wye".to_vec(), // ው (Wye, 259) - 260 => b"ethiopic_wo".to_vec(), // ዎ (Wo, 260) - 261 => b"ethiopic_ko".to_vec(), // ኰ (Ko, 261) - 262 => b"ethiopic_ku".to_vec(), // ኱ (Ku, 262) - 263 => b"ethiopic_ki".to_vec(), // ኲ (Ki, 263) - 264 => b"ethiopic_kua".to_vec(), // ኳ (Kua, 264) - 265 => b"ethiopic_ke".to_vec(), // ኴ (Ke, 265) - 266 => b"ethiopic_kwe".to_vec(), // ኵ (Kwe, 266) - 267 => b"ethiopic_ko_alt".to_vec(), // ኶ (Ko, 267) - 268 => b"ethiopic_go".to_vec(), // ጐ (Go, 268) - 269 => b"ethiopic_gu".to_vec(), // ጑ (Gu, 269) - 270 => b"ethiopic_gi".to_vec(), // ጒ (Gi, 270) - 271 => b"ethiopic_gua".to_vec(), // መ (Gua, 271) - 272 => b"ethiopic_ge".to_vec(), // ጔ (Ge, 272) - 273 => b"ethiopic_gwe".to_vec(), // ጕ (Gwe, 273) - 274 => b"ethiopic_go_alt".to_vec(), // ጖ (Go, 274) - 275 => b"devanagari_a".to_vec(), // अ (A, 275) - 276 => b"devanagari_aa".to_vec(), // आ (Aa, 276) - 277 => b"devanagari_i".to_vec(), // इ (I, 277) - 278 => b"devanagari_ii".to_vec(), // ई (Ii, 278) - 279 => b"devanagari_u".to_vec(), // उ (U, 279) - 280 => b"devanagari_uu".to_vec(), // ऊ (Uu, 280) - 281 => b"devanagari_r".to_vec(), // ऋ (R, 281) - 282 => b"devanagari_e".to_vec(), // ए (E, 282) - 283 => b"devanagari_ai".to_vec(), // ऐ (Ai, 283) - 284 => b"devanagari_o".to_vec(), // ओ (O, 284) - 285 => b"devanagari_au".to_vec(), // औ (Au, 285) - 286 => b"devanagari_ka".to_vec(), // क (Ka, 286) - 287 => b"devanagari_kha".to_vec(), // ख (Kha, 287) - 288 => b"devanagari_ga".to_vec(), // ग (Ga, 288) - 289 => b"devanagari_gha".to_vec(), // घ (Gha, 289) - 290 => b"devanagari_nga".to_vec(), // ङ (Nga, 290) - 291 => b"devanagari_cha".to_vec(), // च (Cha, 291) - 292 => b"devanagari_chha".to_vec(), // छ (Chha, 292) - 293 => b"devanagari_ja".to_vec(), // ज (Ja, 293) - 294 => b"devanagari_jha".to_vec(), // झ (Jha, 294) - 295 => b"devanagari_nya".to_vec(), // ञ (Nya, 295) - 296 => b"devanagari_ta".to_vec(), // ट (Ta, 296) - 297 => b"devanagari_tha".to_vec(), // ठ (Tha, 297) - 298 => b"devanagari_da".to_vec(), // ड (Da, 298) - 299 => b"devanagari_dha".to_vec(), // ढ (Dha, 299) - 300 => b"devanagari_na".to_vec(), // ण (Na, 300) - 301 => b"devanagari_ta_alt".to_vec(), // त (Ta, 301) - 302 => b"devanagari_tha_alt".to_vec(), // थ (Tha, 302) - 303 => b"devanagari_da_alt".to_vec(), // द (Da, 303) - 304 => b"devanagari_dha_alt".to_vec(), // ध (Dha, 304) - 305 => b"devanagari_na_alt".to_vec(), // न (Na, 305) - 306 => b"devanagari_pa".to_vec(), // प (Pa, 306) - 307 => b"devanagari_pha".to_vec(), // फ (Pha, 307) - 308 => b"devanagari_ba".to_vec(), // ब (Ba, 308) - 309 => b"devanagari_bha".to_vec(), // भ (Bha, 309) - 310 => b"devanagari_ma".to_vec(), // म (Ma, 310) - 311 => b"devanagari_ya".to_vec(), // य (Ya, 311) - 312 => b"devanagari_ra".to_vec(), // र (Ra, 312) - 313 => b"devanagari_la".to_vec(), // ल (La, 313) - 314 => b"devanagari_va".to_vec(), // व (Va, 314) - 315 => b"devanagari_sha".to_vec(), // श (Sha, 315) - 316 => b"devanagari_ssa".to_vec(), // ष (Ssa, 316) - 317 => b"devanagari_sa".to_vec(), // स (Sa, 317) - 318 => b"devanagari_ha".to_vec(), // ह (Ha, 318) - 319 => b"katakana_a".to_vec(), // ア (A, 319) - 320 => b"kana_i".to_vec(), - 321 => b"kana_u".to_vec(), - 322 => b"kana_e".to_vec(), - 323 => b"kana_o".to_vec(), - 324 => b"kana_a".to_vec(), - 325 => b"kana_ki".to_vec(), - 326 => b"kana_ku".to_vec(), - 327 => b"kana_ke".to_vec(), - 328 => b"kana_ko".to_vec(), - 329 => b"kana_sa".to_vec(), - 330 => b"kana_shi".to_vec(), - 331 => b"kana_su".to_vec(), - 332 => b"kana_se".to_vec(), - 333 => b"kana_so".to_vec(), - 334 => b"kana_ta".to_vec(), - 335 => b"kana_chi".to_vec(), - 336 => b"kana_tsu".to_vec(), - 337 => b"kana_te".to_vec(), - 338 => b"kana_to".to_vec(), - 339 => b"kana_na".to_vec(), - 340 => b"kana_ni".to_vec(), - 341 => b"kana_nu".to_vec(), - 342 => b"kana_ne".to_vec(), - 343 => b"kana_no".to_vec(), - 344 => b"kana_ha".to_vec(), - 345 => b"kana_hi".to_vec(), - 346 => b"kana_fu".to_vec(), - 347 => b"kana_he".to_vec(), - 348 => b"kana_ho".to_vec(), - 349 => b"kana_ma".to_vec(), - 350 => b"kana_mi".to_vec(), - 351 => b"kana_mu".to_vec(), - 352 => b"kana_me".to_vec(), - 353 => b"kana_mo".to_vec(), - 354 => b"kana_ya".to_vec(), - 355 => b"kana_yu".to_vec(), - 356 => b"kana_yo".to_vec(), - 357 => b"kana_ra".to_vec(), - 358 => b"kana_ri".to_vec(), - 359 => b"kana_ru".to_vec(), - 360 => b"kana_re".to_vec(), - 361 => b"kana_ro".to_vec(), - 362 => b"kana_wa".to_vec(), - 363 => b"kana_wo".to_vec(), - 364 => b"kana_n".to_vec(), - 365 => b"ya".to_vec(), - 366 => b"yab".to_vec(), - 367 => b"yabh".to_vec(), - 368 => b"yag".to_vec(), - 369 => b"yagh".to_vec(), - 370 => b"yaj".to_vec(), - 371 => b"yach".to_vec(), - 372 => b"yad".to_vec(), - 373 => b"yadh".to_vec(), - 374 => b"yadhe".to_vec(), - 375 => b"yaz".to_vec(), - 376 => b"yazh".to_vec(), - 377 => b"yaf".to_vec(), - 378 => b"yak".to_vec(), - 379 => b"yakv".to_vec(), - 380 => b"yaq".to_vec(), - 381 => b"yah".to_vec(), - 382 => b"yahh".to_vec(), - 383 => b"yahl".to_vec(), - 384 => b"yahm".to_vec(), - 385 => b"yayn".to_vec(), - 386 => b"yakh".to_vec(), - 387 => b"yakl".to_vec(), - 388 => b"yahq".to_vec(), - 389 => b"yash".to_vec(), - 390 => b"yi".to_vec(), - 391 => b"yij".to_vec(), - 392 => b"yizh".to_vec(), - 393 => b"yink".to_vec(), - 394 => b"yal".to_vec(), - 395 => b"yam".to_vec(), - 396 => b"yan".to_vec(), - 397 => b"yang".to_vec(), - 398 => b"yany".to_vec(), - 399 => b"yap".to_vec(), - 400 => b"yu".to_vec(), - 401 => b"a".to_vec(), - 402 => b"aa".to_vec(), - 403 => b"i".to_vec(), - 404 => b"ii".to_vec(), - 405 => b"u".to_vec(), - 406 => b"uu".to_vec(), - 407 => b"r".to_vec(), - 408 => b"rr".to_vec(), - 409 => b"l".to_vec(), - 410 => b"ll".to_vec(), - 411 => b"e".to_vec(), - 412 => b"ee".to_vec(), - 413 => b"ai".to_vec(), - 414 => b"o".to_vec(), - 415 => b"oo".to_vec(), - 416 => b"au".to_vec(), - 417 => b"ka".to_vec(), - 418 => b"kha".to_vec(), - 419 => b"ga".to_vec(), - 420 => b"gha".to_vec(), - 421 => b"nga".to_vec(), - 422 => b"cha".to_vec(), - 423 => b"chha".to_vec(), - 424 => b"ja".to_vec(), - 425 => b"jha".to_vec(), - 426 => b"nya".to_vec(), - 427 => b"ta".to_vec(), - 428 => b"tha".to_vec(), - 429 => b"da".to_vec(), - 430 => b"dha".to_vec(), - 431 => b"na".to_vec(), - 432 => b"pa".to_vec(), - 433 => b"pha".to_vec(), - 434 => b"ba".to_vec(), - 435 => b"bha".to_vec(), - 436 => b"ma".to_vec(), - 437 => b"ya".to_vec(), - 438 => b"ra".to_vec(), - 439 => b"la".to_vec(), - 440 => b"va".to_vec(), - 441 => b"sha".to_vec(), - 442 => b"ssa".to_vec(), - 443 => b"sa".to_vec(), - 444 => b"ha".to_vec(), - _ => b"unknown".to_vec(), - } - // match netuid { - // // Greek Alphabet (Lowercase) - // 0 => b"root".to_vec(), // Τ (Upper case Tau) - // 1 => b"apex".to_vec(), // α (Alpha) - // 2 => b"omron".to_vec(), // β (Beta) - // 3 => b"templar".to_vec(), // γ (Gamma) - // 4 => b"targon".to_vec(), // δ (Delta) - // 5 => b"kaito".to_vec(), // ε (Epsilon) - // 6 => b"infinite".to_vec(), // ζ (Zeta) - // 7 => b"subvortex".to_vec(), // η (Eta) - // 8 => b"ptn".to_vec(), // θ (Theta) - // 9 => b"pretrain".to_vec(), // ι (Iota) - // 10 => b"sturdy".to_vec(), // κ (Kappa) - // 11 => b"dippy".to_vec(), // λ (Lambda) - // 12 => b"horde".to_vec(), // μ (Mu) - // 13 => b"dataverse".to_vec(), // ν (Nu) - // 14 => b"palaidn".to_vec(), // ξ (Xi) - // 15 => b"deval".to_vec(), // ο (Omicron) - // 16 => b"bitads".to_vec(), // π (Pi) - // 17 => b"3gen".to_vec(), // ρ (Rho) - // 18 => b"cortex".to_vec(), // σ (Sigma) - // 19 => b"inference".to_vec(), // t (Tau) - // 20 => b"bitagent".to_vec(), // υ (Upsilon) - // 21 => b"any-any".to_vec(), // φ (Phi) - // 22 => b"meta".to_vec(), // χ (Chi) - // 23 => b"social".to_vec(), // ψ (Psi) - // 24 => b"omega".to_vec(), // ω (Omega) - // 25 => b"protein".to_vec(), // א (Aleph) - // 26 => b"alchemy".to_vec(), // ב (Bet) - // 27 => b"compute".to_vec(), // ג (Gimel) - // 28 => b"oracle".to_vec(), // ד (Dalet) - // 29 => b"coldint".to_vec(), // ה (He) - // 30 => b"bet".to_vec(), // ו (Vav) - // 31 => b"naschain".to_vec(), // ז (Zayin) - // 32 => b"itsai".to_vec(), // ח (Het) - // 33 => b"ready".to_vec(), // ט (Tet) - // 34 => b"mind".to_vec(), // י (Yod) - // 35 => b"logic".to_vec(), // ך (Final Kaf) - // 36 => b"automata".to_vec(), // כ (Kaf) - // 37 => b"tuning".to_vec(), // ל (Lamed) - // 38 => b"distributed".to_vec(), // ם (Final Mem) - // 39 => b"edge".to_vec(), // מ (Mem) - // 40 => b"chunk".to_vec(), // ן (Final Nun) - // 41 => b"sportsensor".to_vec(), // נ (Nun) - // 42 => b"masa".to_vec(), // ס (Samekh) - // 43 => b"graphite".to_vec(), // ע (Ayin) - // 44 => b"score".to_vec(), // ף (Final Pe) - // 45 => b"gen42".to_vec(), // פ (Pe) - // 46 => b"neural".to_vec(), // ץ (Final Tsadi) - // 47 => b"condense".to_vec(), // צ (Tsadi) - // 48 => b"nextplace".to_vec(), // ק (Qof) - // 49 => b"automl".to_vec(), // ר (Resh) - // 50 => b"audio".to_vec(), // ש (Shin) - // 51 => b"celium".to_vec(), // ת (Tav) - // 52 => b"dojo".to_vec(), // ا (Alif) - // 53 => b"frontier".to_vec(), // ب (Ba) - // 54 => b"safescan".to_vec(), // ت (Ta) - // 55 => b"unknown".to_vec(), // ث (Tha) - // 56 => b"gradients".to_vec(), // ج (Jim) - // 57 => b"gaia".to_vec(), // ح (Ha) - // 58 => b"dippy-speach".to_vec(), // خ (Kha) - // 59 => b"agent-arena".to_vec(), // د (Dal) - // 60 => b"unknown".to_vec(), // ذ (Dhal) - // 61 => b"red team".to_vec(), // ر (Ra) - // 62 => b"agentao".to_vec(), // ز (Zay) - // 63 => b"lean-in".to_vec(), // س (Sin) - // 64 => b"chutes".to_vec(), // ش (Shin) - // // Default case - // _ => b"unknown".to_vec(), // unknown subnet. - // } - } + SubnetIdentitiesV2::::try_get(netuid) + .and_then(|identity| { + if !identity.subnet_name.is_empty() { + Ok(identity.subnet_name) + } else { + Err(()) + } + }) + .unwrap_or_else(|_| { + match netuid { + 0 => b"root".to_vec(), // Τ (Upper case Tau) + 1 => b"apex".to_vec(), // α (Alpha) + 2 => b"omron".to_vec(), // β (Beta) + 3 => b"templar".to_vec(), // γ (Gamma) + 4 => b"targon".to_vec(), // δ (Delta) + 5 => b"kaito".to_vec(), // ε (Epsilon) + 6 => b"infinite".to_vec(), // ζ (Zeta) + 7 => b"subvortex".to_vec(), // η (Eta) + 8 => b"ptn".to_vec(), // θ (Theta) + 9 => b"pretrain".to_vec(), // ι (Iota) + 10 => b"sturdy".to_vec(), // κ (Kappa) + 11 => b"dippy".to_vec(), // λ (Lambda) + 12 => b"horde".to_vec(), // μ (Mu) + 13 => b"dataverse".to_vec(), // ν (Nu) + 14 => b"palaidn".to_vec(), // ξ (Xi) + 15 => b"deval".to_vec(), // ο (Omicron) + 16 => b"bitads".to_vec(), // π (Pi) + 17 => b"3gen".to_vec(), // ρ (Rho) + 18 => b"cortex".to_vec(), // σ (Sigma) + 19 => b"inference".to_vec(), // t (Tau) + 20 => b"bitagent".to_vec(), // υ (Upsilon) + 21 => b"any-any".to_vec(), // φ (Phi) + 22 => b"meta".to_vec(), // χ (Chi) + 23 => b"social".to_vec(), // ψ (Psi) + 24 => b"omega".to_vec(), // ω (Omega) + 25 => b"protein".to_vec(), // א (Aleph) + 26 => b"alchemy".to_vec(), // ב (Bet) + 27 => b"compute".to_vec(), // ג (Gimel) + 28 => b"oracle".to_vec(), // ד (Dalet) + 29 => b"coldint".to_vec(), // ה (He) + 30 => b"bet".to_vec(), // ו (Vav) + 31 => b"naschain".to_vec(), // ז (Zayin) + 32 => b"itsai".to_vec(), // ח (Het) + 33 => b"ready".to_vec(), // ט (Tet) + 34 => b"mind".to_vec(), // י (Yod) + 35 => b"logic".to_vec(), // ך (Final Kaf) + 36 => b"automata".to_vec(), // כ (Kaf) + 37 => b"tuning".to_vec(), // ל (Lamed) + 38 => b"distributed".to_vec(), // ם (Final Mem) + 39 => b"edge".to_vec(), // מ (Mem) + 40 => b"chunk".to_vec(), // ן (Final Nun) + 41 => b"sportsensor".to_vec(), // נ (Nun) + 42 => b"masa".to_vec(), // ס (Samekh) + 43 => b"graphite".to_vec(), // ע (Ayin) + 44 => b"score".to_vec(), // ף (Final Pe) + 45 => b"gen42".to_vec(), // פ (Pe) + 46 => b"neural".to_vec(), // ץ (Final Tsadi) + 47 => b"condense".to_vec(), // צ (Tsadi) + 48 => b"nextplace".to_vec(), // ק (Qof) + 49 => b"automl".to_vec(), // ר (Resh) + 50 => b"audio".to_vec(), // ש (Shin) + 51 => b"celium".to_vec(), // ת (Tav) + 52 => b"dojo".to_vec(), // ا (Alif) + 53 => b"frontier".to_vec(), // ب (Ba) + 54 => b"safescan".to_vec(), // ت (Ta) + 55 => b"unknown".to_vec(), // ث (Tha) + 56 => b"gradients".to_vec(), // ج (Jim) + 57 => b"gaia".to_vec(), // ح (Ha) + 58 => b"dippy-speach".to_vec(), // خ (Kha) + 59 => b"agent-arena".to_vec(), // د (Dal) + 60 => b"unknown".to_vec(), // ذ (Dhal) + 61 => b"red team".to_vec(), // ر (Ra) + 62 => b"agentao".to_vec(), // ز (Zay) + 63 => b"lean-in".to_vec(), // س (Sin) + 64 => b"chutes".to_vec(), // ش (Shin) + 65 => b"sad".to_vec(), + 66 => b"dad".to_vec(), + 67 => b"ta".to_vec(), + 68 => b"dha".to_vec(), + 69 => b"ain".to_vec(), + 70 => b"ghayn".to_vec(), + 71 => b"fa".to_vec(), + 72 => b"qaf".to_vec(), + 73 => b"kaf".to_vec(), + 74 => b"lam".to_vec(), + 75 => b"mim".to_vec(), + 76 => b"nun".to_vec(), + 77 => b"ha".to_vec(), + 78 => b"waw".to_vec(), + 79 => b"ya".to_vec(), + 80 => b"alef".to_vec(), + 81 => b"ya".to_vec(), + 82 => b"fehu".to_vec(), + 83 => b"uruz".to_vec(), + 84 => b"thurisaz".to_vec(), + 85 => b"ansuz".to_vec(), + 86 => b"raidho".to_vec(), + 87 => b"kaunan".to_vec(), + 88 => b"eihwaz".to_vec(), + 89 => b"algiz".to_vec(), + 90 => b"berkanan".to_vec(), + 91 => b"ogham".to_vec(), + 92 => b"beith".to_vec(), + 93 => b"luis".to_vec(), + 94 => b"fearn".to_vec(), + 95 => b"sail".to_vec(), + 96 => b"nion".to_vec(), + 97 => b"forfeda".to_vec(), + 98 => b"ani".to_vec(), + 99 => b"bani".to_vec(), + 100 => b"gani".to_vec(), + 101 => b"doni".to_vec(), + 102 => b"eni".to_vec(), + 103 => b"vini".to_vec(), + 104 => b"ayp".to_vec(), + 105 => b"ben".to_vec(), + 106 => b"gim".to_vec(), + 107 => b"da".to_vec(), + 108 => b"ech".to_vec(), + 109 => b"za".to_vec(), + 110 => b"armeni".to_vec(), + 111 => b"grave".to_vec(), + 112 => b"io".to_vec(), + 113 => b"dje".to_vec(), + 114 => b"gje".to_vec(), + 115 => b"ie".to_vec(), + 116 => b"dze".to_vec(), + 117 => b"alfa".to_vec(), + 118 => b"alfas".to_vec(), + 119 => b"vida".to_vec(), // Ⲃ (Vida, 119) + 120 => b"vida_small".to_vec(), // ⲃ (Small Vida, 120) + 121 => b"gamma".to_vec(), // Ⲅ (Gamma, 121) + 122 => b"gamma_small".to_vec(), // ⲅ (Small Gamma, 122) + 123 => b"brahmi_a".to_vec(), // 𑀀 (A, 123) + 124 => b"brahmi_aa".to_vec(), // 𑀁 (Aa, 124) + 125 => b"brahmi_i".to_vec(), // 𑀂 (I, 125) + 126 => b"brahmi_ii".to_vec(), // 𑀃 (Ii, 126) + 127 => b"brahmi_u".to_vec(), // 𑀅 (U, 127) + 128 => b"tifinagh_ya".to_vec(), // ⴰ (Ya, 128) + 129 => b"tifinagh_yab".to_vec(), // ⴱ (Yab, 129) + 130 => b"tifinagh_yabh".to_vec(), // ⴲ (Yabh, 130) + 131 => b"tifinagh_yag".to_vec(), // ⴳ (Yag, 131) + 132 => b"tifinagh_yagh".to_vec(), // ⴴ (Yagh, 132) + 133 => b"tifinagh_yaj".to_vec(), // ⴵ (Yaj, 133) + 134 => b"glagolitic_az".to_vec(), // Ⰰ (Az, 134) + 135 => b"glagolitic_buky".to_vec(), // Ⰱ (Buky, 135) + 136 => b"glagolitic_vede".to_vec(), // Ⰲ (Vede, 136) + 137 => b"glagolitic_glagoli".to_vec(), // Ⰳ (Glagoli, 137) + 138 => b"glagolitic_dobro".to_vec(), // Ⰴ (Dobro, 138) + 139 => b"glagolitic_yest".to_vec(), // Ⰵ (Yest, 139) + 140 => b"glagolitic_zhivete".to_vec(), // Ⰶ (Zhivete, 140) + 141 => b"glagolitic_zemlja".to_vec(), // Ⰷ (Zemlja, 141) + 142 => b"glagolitic_izhe".to_vec(), // Ⰸ (Izhe, 142) + 143 => b"glagolitic_initial_izhe".to_vec(), // Ⰹ (Initial Izhe, 143) + 144 => b"glagolitic_i".to_vec(), // Ⰺ (I, 144) + 145 => b"glagolitic_djerv".to_vec(), // Ⰻ (Djerv, 145) + 146 => b"glagolitic_kako".to_vec(), // Ⰼ (Kako, 146) + 147 => b"glagolitic_ljudije".to_vec(), // Ⰽ (Ljudije, 147) + 148 => b"glagolitic_myse".to_vec(), // Ⰾ (Myse, 148) + 149 => b"glagolitic_nash".to_vec(), // Ⰿ (Nash, 149) + 150 => b"glagolitic_on".to_vec(), // Ⱀ (On, 150) + 151 => b"glagolitic_pokoj".to_vec(), // Ⱁ (Pokoj, 151) + 152 => b"glagolitic_rtsy".to_vec(), // Ⱂ (Rtsy, 152) + 153 => b"glagolitic_slovo".to_vec(), // Ⱃ (Slovo, 153) + 154 => b"glagolitic_tvrido".to_vec(), // Ⱄ (Tvrido, 154) + 155 => b"glagolitic_uku".to_vec(), // Ⱅ (Uku, 155) + 156 => b"glagolitic_fert".to_vec(), // Ⱆ (Fert, 156) + 157 => b"glagolitic_xrivi".to_vec(), // Ⱇ (Xrivi, 157) + 158 => b"glagolitic_ot".to_vec(), // Ⱈ (Ot, 158) + 159 => b"glagolitic_cy".to_vec(), // Ⱉ (Cy, 159) + 160 => b"glagolitic_shcha".to_vec(), // Ⱊ (Shcha, 160) + 161 => b"glagolitic_er".to_vec(), // Ⱋ (Er, 161) + 162 => b"glagolitic_yeru".to_vec(), // Ⱌ (Yeru, 162) + 163 => b"glagolitic_small_yer".to_vec(), // Ⱍ (Small Yer, 163) + 164 => b"glagolitic_yo".to_vec(), // Ⱎ (Yo, 164) + 165 => b"glagolitic_yu".to_vec(), // Ⱏ (Yu, 165) + 166 => b"glagolitic_ja".to_vec(), // Ⱐ (Ja, 166) + 167 => b"thai_ko_kai".to_vec(), // ก (Ko Kai, 167) + 168 => b"thai_kho_khai".to_vec(), // ข (Kho Khai, 168) + 169 => b"thai_kho_khuat".to_vec(), // ฃ (Kho Khuat, 169) + 170 => b"thai_kho_khon".to_vec(), // ค (Kho Khon, 170) + 171 => b"thai_kho_rakhang".to_vec(), // ฅ (Kho Rakhang, 171) + 172 => b"thai_kho_khwai".to_vec(), // ฆ (Kho Khwai, 172) + 173 => b"thai_ngo_ngu".to_vec(), // ง (Ngo Ngu, 173) + 174 => b"thai_cho_chan".to_vec(), // จ (Cho Chan, 174) + 175 => b"thai_cho_ching".to_vec(), // ฉ (Cho Ching, 175) + 176 => b"thai_cho_chang".to_vec(), // ช (Cho Chang, 176) + 177 => b"thai_so_so".to_vec(), // ซ (So So, 177) + 178 => b"thai_cho_choe".to_vec(), // ฌ (Cho Choe, 178) + 179 => b"thai_yo_ying".to_vec(), // ญ (Yo Ying, 179) + 180 => b"thai_do_chada".to_vec(), // ฎ (Do Chada, 180) + 181 => b"thai_to_patak".to_vec(), // ฏ (To Patak, 181) + 182 => b"thai_tho_than".to_vec(), // ฐ (Tho Than, 182) + 183 => b"thai_tho_nangmontho".to_vec(), // ฑ (Tho Nangmontho, 183) + 184 => b"thai_tho_phuthao".to_vec(), // ฒ (Tho Phuthao, 184) + 185 => b"thai_no_nen".to_vec(), // ณ (No Nen, 185) + 186 => b"thai_do_dek".to_vec(), // ด (Do Dek, 186) + 187 => b"thai_to_tao".to_vec(), // ต (To Tao, 187) + 188 => b"thai_tho_thung".to_vec(), // ถ (Tho Thung, 188) + 189 => b"thai_tho_thahan".to_vec(), // ท (Tho Thahan, 189) + 190 => b"thai_tho_thong".to_vec(), // ธ (Tho Thong, 190) + 191 => b"thai_no_nu".to_vec(), // น (No Nu, 191) + 192 => b"thai_bo_baimai".to_vec(), // บ (Bo Baimai, 192) + 193 => b"thai_po_pla".to_vec(), // ป (Po Pla, 193) + 194 => b"thai_pho_phung".to_vec(), // ผ (Pho Phung, 194) + 195 => b"thai_fo_fa".to_vec(), // ฝ (Fo Fa, 195) + 196 => b"thai_pho_phan".to_vec(), // พ (Pho Phan, 196) + 197 => b"thai_fo_fan".to_vec(), // ฟ (Fo Fan, 197) + 198 => b"thai_pho_samphao".to_vec(), // ภ (Pho Samphao, 198) + 199 => b"thai_mo_ma".to_vec(), // ม (Mo Ma, 199) + 200 => b"thai_yo_yak".to_vec(), // ย (Yo Yak, 200) + 201 => b"thai_ro_rua".to_vec(), // ร (Ro Rua, 201) + 202 => b"thai_lo_ling".to_vec(), // ล (Lo Ling, 202) + 203 => b"thai_wo_waen".to_vec(), // ว (Wo Waen, 203) + 204 => b"thai_so_sala".to_vec(), // ศ (So Sala, 204) + 205 => b"thai_so_rusi".to_vec(), // ษ (So Rusi, 205) + 206 => b"thai_so_sua".to_vec(), // ส (So Sua, 206) + 207 => b"thai_ho_hip".to_vec(), // ห (Ho Hip, 207) + 208 => b"thai_lo_chula".to_vec(), // ฬ (Lo Chula, 208) + 209 => b"thai_o_ang".to_vec(), // อ (O Ang, 209) + 210 => b"thai_ho_nokhuk".to_vec(), // ฮ (Ho Nokhuk, 210) + 211 => b"hangul_giyeok".to_vec(), // ㄱ (Giyeok, 211) + 212 => b"hangul_nieun".to_vec(), // ㄴ (Nieun, 212) + 213 => b"hangul_digeut".to_vec(), // ㄷ (Digeut, 213) + 214 => b"hangul_rieul".to_vec(), // ㄹ (Rieul, 214) + 215 => b"hangul_mieum".to_vec(), // ㅁ (Mieum, 215) + 216 => b"hangul_bieup".to_vec(), // ㅂ (Bieup, 216) + 217 => b"hangul_siot".to_vec(), // ㅅ (Siot, 217) + 218 => b"hangul_ieung".to_vec(), // ㅇ (Ieung, 218) + 219 => b"hangul_jieut".to_vec(), // ㅈ (Jieut, 219) + 220 => b"hangul_chieut".to_vec(), // ㅊ (Chieut, 220) + 221 => b"hangul_kieuk".to_vec(), // ㅋ (Kieuk, 221) + 222 => b"hangul_tieut".to_vec(), // ㅌ (Tieut, 222) + 223 => b"hangul_pieup".to_vec(), // ㅍ (Pieup, 223) + 224 => b"hangul_hieut".to_vec(), // ㅎ (Hieut, 224) + 225 => b"hangul_a".to_vec(), // ㅏ (A, 225) + 226 => b"hangul_ae".to_vec(), // ㅐ (Ae, 226) + 227 => b"hangul_ya".to_vec(), // ㅑ (Ya, 227) + 228 => b"hangul_yae".to_vec(), // ㅒ (Yae, 228) + 229 => b"hangul_eo".to_vec(), // ㅓ (Eo, 229) + 230 => b"hangul_e".to_vec(), // ㅔ (E, 230) + 231 => b"hangul_yeo".to_vec(), // ㅕ (Yeo, 231) + 232 => b"hangul_ye".to_vec(), // ㅖ (Ye, 232) + 233 => b"hangul_o".to_vec(), // ㅗ (O, 233) + 234 => b"hangul_wa".to_vec(), // ㅘ (Wa, 234) + 235 => b"hangul_wae".to_vec(), // ㅙ (Wae, 235) + 236 => b"hangul_oe".to_vec(), // ㅚ (Oe, 236) + 237 => b"hangul_yo".to_vec(), // ㅛ (Yo, 237) + 238 => b"hangul_u".to_vec(), // ㅜ (U, 238) + 239 => b"hangul_weo".to_vec(), // ㅝ (Weo, 239) + 240 => b"hangul_we".to_vec(), // ㅞ (We, 240) + 241 => b"hangul_wi".to_vec(), // ㅟ (Wi, 241) + 242 => b"hangul_yu".to_vec(), // ㅠ (Yu, 242) + 243 => b"hangul_eu".to_vec(), // ㅡ (Eu, 243) + 244 => b"hangul_ui".to_vec(), // ㅢ (Ui, 244) + 245 => b"hangul_i".to_vec(), // ㅣ (I, 245) + 246 => b"ethiopic_glottal_a".to_vec(), // አ (Glottal A, 246) + 247 => b"ethiopic_glottal_u".to_vec(), // ኡ (Glottal U, 247) + 248 => b"ethiopic_glottal_i".to_vec(), // ኢ (Glottal I, 248) + 249 => b"ethiopic_glottal_aa".to_vec(), // ኣ (Glottal Aa, 249) + 250 => b"ethiopic_glottal_e".to_vec(), // ኤ (Glottal E, 250) + 251 => b"ethiopic_glottal_ie".to_vec(), // እ (Glottal Ie, 251) + 252 => b"ethiopic_glottal_o".to_vec(), // ኦ (Glottal O, 252) + 253 => b"ethiopic_glottal_wa".to_vec(), // ኧ (Glottal Wa, 253) + 254 => b"ethiopic_wa".to_vec(), // ወ (Wa, 254) + 255 => b"ethiopic_wu".to_vec(), // ዉ (Wu, 255) + 256 => b"ethiopic_wi".to_vec(), // ዊ (Wi, 256) + 257 => b"ethiopic_waa".to_vec(), // ዋ (Waa, 257) + 258 => b"ethiopic_we".to_vec(), // ዌ (We, 258) + 259 => b"ethiopic_wye".to_vec(), // ው (Wye, 259) + 260 => b"ethiopic_wo".to_vec(), // ዎ (Wo, 260) + 261 => b"ethiopic_ko".to_vec(), // ኰ (Ko, 261) + 262 => b"ethiopic_ku".to_vec(), // ኱ (Ku, 262) + 263 => b"ethiopic_ki".to_vec(), // ኲ (Ki, 263) + 264 => b"ethiopic_kua".to_vec(), // ኳ (Kua, 264) + 265 => b"ethiopic_ke".to_vec(), // ኴ (Ke, 265) + 266 => b"ethiopic_kwe".to_vec(), // ኵ (Kwe, 266) + 267 => b"ethiopic_ko_alt".to_vec(), // ኶ (Ko, 267) + 268 => b"ethiopic_go".to_vec(), // ጐ (Go, 268) + 269 => b"ethiopic_gu".to_vec(), // ጑ (Gu, 269) + 270 => b"ethiopic_gi".to_vec(), // ጒ (Gi, 270) + 271 => b"ethiopic_gua".to_vec(), // መ (Gua, 271) + 272 => b"ethiopic_ge".to_vec(), // ጔ (Ge, 272) + 273 => b"ethiopic_gwe".to_vec(), // ጕ (Gwe, 273) + 274 => b"ethiopic_go_alt".to_vec(), // ጖ (Go, 274) + 275 => b"devanagari_a".to_vec(), // अ (A, 275) + 276 => b"devanagari_aa".to_vec(), // आ (Aa, 276) + 277 => b"devanagari_i".to_vec(), // इ (I, 277) + 278 => b"devanagari_ii".to_vec(), // ई (Ii, 278) + 279 => b"devanagari_u".to_vec(), // उ (U, 279) + 280 => b"devanagari_uu".to_vec(), // ऊ (Uu, 280) + 281 => b"devanagari_r".to_vec(), // ऋ (R, 281) + 282 => b"devanagari_e".to_vec(), // ए (E, 282) + 283 => b"devanagari_ai".to_vec(), // ऐ (Ai, 283) + 284 => b"devanagari_o".to_vec(), // ओ (O, 284) + 285 => b"devanagari_au".to_vec(), // औ (Au, 285) + 286 => b"devanagari_ka".to_vec(), // क (Ka, 286) + 287 => b"devanagari_kha".to_vec(), // ख (Kha, 287) + 288 => b"devanagari_ga".to_vec(), // ग (Ga, 288) + 289 => b"devanagari_gha".to_vec(), // घ (Gha, 289) + 290 => b"devanagari_nga".to_vec(), // ङ (Nga, 290) + 291 => b"devanagari_cha".to_vec(), // च (Cha, 291) + 292 => b"devanagari_chha".to_vec(), // छ (Chha, 292) + 293 => b"devanagari_ja".to_vec(), // ज (Ja, 293) + 294 => b"devanagari_jha".to_vec(), // झ (Jha, 294) + 295 => b"devanagari_nya".to_vec(), // ञ (Nya, 295) + 296 => b"devanagari_ta".to_vec(), // ट (Ta, 296) + 297 => b"devanagari_tha".to_vec(), // ठ (Tha, 297) + 298 => b"devanagari_da".to_vec(), // ड (Da, 298) + 299 => b"devanagari_dha".to_vec(), // ढ (Dha, 299) + 300 => b"devanagari_na".to_vec(), // ण (Na, 300) + 301 => b"devanagari_ta_alt".to_vec(), // त (Ta, 301) + 302 => b"devanagari_tha_alt".to_vec(), // थ (Tha, 302) + 303 => b"devanagari_da_alt".to_vec(), // द (Da, 303) + 304 => b"devanagari_dha_alt".to_vec(), // ध (Dha, 304) + 305 => b"devanagari_na_alt".to_vec(), // न (Na, 305) + 306 => b"devanagari_pa".to_vec(), // प (Pa, 306) + 307 => b"devanagari_pha".to_vec(), // फ (Pha, 307) + 308 => b"devanagari_ba".to_vec(), // ब (Ba, 308) + 309 => b"devanagari_bha".to_vec(), // भ (Bha, 309) + 310 => b"devanagari_ma".to_vec(), // म (Ma, 310) + 311 => b"devanagari_ya".to_vec(), // य (Ya, 311) + 312 => b"devanagari_ra".to_vec(), // र (Ra, 312) + 313 => b"devanagari_la".to_vec(), // ल (La, 313) + 314 => b"devanagari_va".to_vec(), // व (Va, 314) + 315 => b"devanagari_sha".to_vec(), // श (Sha, 315) + 316 => b"devanagari_ssa".to_vec(), // ष (Ssa, 316) + 317 => b"devanagari_sa".to_vec(), // स (Sa, 317) + 318 => b"devanagari_ha".to_vec(), // ह (Ha, 318) + 319 => b"katakana_a".to_vec(), // ア (A, 319) + 320 => b"kana_i".to_vec(), + 321 => b"kana_u".to_vec(), + 322 => b"kana_e".to_vec(), + 323 => b"kana_o".to_vec(), + 324 => b"kana_a".to_vec(), + 325 => b"kana_ki".to_vec(), + 326 => b"kana_ku".to_vec(), + 327 => b"kana_ke".to_vec(), + 328 => b"kana_ko".to_vec(), + 329 => b"kana_sa".to_vec(), + 330 => b"kana_shi".to_vec(), + 331 => b"kana_su".to_vec(), + 332 => b"kana_se".to_vec(), + 333 => b"kana_so".to_vec(), + 334 => b"kana_ta".to_vec(), + 335 => b"kana_chi".to_vec(), + 336 => b"kana_tsu".to_vec(), + 337 => b"kana_te".to_vec(), + 338 => b"kana_to".to_vec(), + 339 => b"kana_na".to_vec(), + 340 => b"kana_ni".to_vec(), + 341 => b"kana_nu".to_vec(), + 342 => b"kana_ne".to_vec(), + 343 => b"kana_no".to_vec(), + 344 => b"kana_ha".to_vec(), + 345 => b"kana_hi".to_vec(), + 346 => b"kana_fu".to_vec(), + 347 => b"kana_he".to_vec(), + 348 => b"kana_ho".to_vec(), + 349 => b"kana_ma".to_vec(), + 350 => b"kana_mi".to_vec(), + 351 => b"kana_mu".to_vec(), + 352 => b"kana_me".to_vec(), + 353 => b"kana_mo".to_vec(), + 354 => b"kana_ya".to_vec(), + 355 => b"kana_yu".to_vec(), + 356 => b"kana_yo".to_vec(), + 357 => b"kana_ra".to_vec(), + 358 => b"kana_ri".to_vec(), + 359 => b"kana_ru".to_vec(), + 360 => b"kana_re".to_vec(), + 361 => b"kana_ro".to_vec(), + 362 => b"kana_wa".to_vec(), + 363 => b"kana_wo".to_vec(), + 364 => b"kana_n".to_vec(), + 365 => b"ya".to_vec(), + 366 => b"yab".to_vec(), + 367 => b"yabh".to_vec(), + 368 => b"yag".to_vec(), + 369 => b"yagh".to_vec(), + 370 => b"yaj".to_vec(), + 371 => b"yach".to_vec(), + 372 => b"yad".to_vec(), + 373 => b"yadh".to_vec(), + 374 => b"yadhe".to_vec(), + 375 => b"yaz".to_vec(), + 376 => b"yazh".to_vec(), + 377 => b"yaf".to_vec(), + 378 => b"yak".to_vec(), + 379 => b"yakv".to_vec(), + 380 => b"yaq".to_vec(), + 381 => b"yah".to_vec(), + 382 => b"yahh".to_vec(), + 383 => b"yahl".to_vec(), + 384 => b"yahm".to_vec(), + 385 => b"yayn".to_vec(), + 386 => b"yakh".to_vec(), + 387 => b"yakl".to_vec(), + 388 => b"yahq".to_vec(), + 389 => b"yash".to_vec(), + 390 => b"yi".to_vec(), + 391 => b"yij".to_vec(), + 392 => b"yizh".to_vec(), + 393 => b"yink".to_vec(), + 394 => b"yal".to_vec(), + 395 => b"yam".to_vec(), + 396 => b"yan".to_vec(), + 397 => b"yang".to_vec(), + 398 => b"yany".to_vec(), + 399 => b"yap".to_vec(), + 400 => b"yu".to_vec(), + 401 => b"a".to_vec(), + 402 => b"aa".to_vec(), + 403 => b"i".to_vec(), + 404 => b"ii".to_vec(), + 405 => b"u".to_vec(), + 406 => b"uu".to_vec(), + 407 => b"r".to_vec(), + 408 => b"rr".to_vec(), + 409 => b"l".to_vec(), + 410 => b"ll".to_vec(), + 411 => b"e".to_vec(), + 412 => b"ee".to_vec(), + 413 => b"ai".to_vec(), + 414 => b"o".to_vec(), + 415 => b"oo".to_vec(), + 416 => b"au".to_vec(), + 417 => b"ka".to_vec(), + 418 => b"kha".to_vec(), + 419 => b"ga".to_vec(), + 420 => b"gha".to_vec(), + 421 => b"nga".to_vec(), + 422 => b"cha".to_vec(), + 423 => b"chha".to_vec(), + 424 => b"ja".to_vec(), + 425 => b"jha".to_vec(), + 426 => b"nya".to_vec(), + 427 => b"ta".to_vec(), + 428 => b"tha".to_vec(), + 429 => b"da".to_vec(), + 430 => b"dha".to_vec(), + 431 => b"na".to_vec(), + 432 => b"pa".to_vec(), + 433 => b"pha".to_vec(), + 434 => b"ba".to_vec(), + 435 => b"bha".to_vec(), + 436 => b"ma".to_vec(), + 437 => b"ya".to_vec(), + 438 => b"ra".to_vec(), + 439 => b"la".to_vec(), + 440 => b"va".to_vec(), + 441 => b"sha".to_vec(), + 442 => b"ssa".to_vec(), + 443 => b"sa".to_vec(), + 444 => b"ha".to_vec(), + _ => b"unknown".to_vec(), + } + // match netuid { + // // Greek Alphabet (Lowercase) + // 0 => b"root".to_vec(), // Τ (Upper case Tau) + // 1 => b"apex".to_vec(), // α (Alpha) + // 2 => b"omron".to_vec(), // β (Beta) + // 3 => b"templar".to_vec(), // γ (Gamma) + // 4 => b"targon".to_vec(), // δ (Delta) + // 5 => b"kaito".to_vec(), // ε (Epsilon) + // 6 => b"infinite".to_vec(), // ζ (Zeta) + // 7 => b"subvortex".to_vec(), // η (Eta) + // 8 => b"ptn".to_vec(), // θ (Theta) + // 9 => b"pretrain".to_vec(), // ι (Iota) + // 10 => b"sturdy".to_vec(), // κ (Kappa) + // 11 => b"dippy".to_vec(), // λ (Lambda) + // 12 => b"horde".to_vec(), // μ (Mu) + // 13 => b"dataverse".to_vec(), // ν (Nu) + // 14 => b"palaidn".to_vec(), // ξ (Xi) + // 15 => b"deval".to_vec(), // ο (Omicron) + // 16 => b"bitads".to_vec(), // π (Pi) + // 17 => b"3gen".to_vec(), // ρ (Rho) + // 18 => b"cortex".to_vec(), // σ (Sigma) + // 19 => b"inference".to_vec(), // t (Tau) + // 20 => b"bitagent".to_vec(), // υ (Upsilon) + // 21 => b"any-any".to_vec(), // φ (Phi) + // 22 => b"meta".to_vec(), // χ (Chi) + // 23 => b"social".to_vec(), // ψ (Psi) + // 24 => b"omega".to_vec(), // ω (Omega) + // 25 => b"protein".to_vec(), // א (Aleph) + // 26 => b"alchemy".to_vec(), // ב (Bet) + // 27 => b"compute".to_vec(), // ג (Gimel) + // 28 => b"oracle".to_vec(), // ד (Dalet) + // 29 => b"coldint".to_vec(), // ה (He) + // 30 => b"bet".to_vec(), // ו (Vav) + // 31 => b"naschain".to_vec(), // ז (Zayin) + // 32 => b"itsai".to_vec(), // ח (Het) + // 33 => b"ready".to_vec(), // ט (Tet) + // 34 => b"mind".to_vec(), // י (Yod) + // 35 => b"logic".to_vec(), // ך (Final Kaf) + // 36 => b"automata".to_vec(), // כ (Kaf) + // 37 => b"tuning".to_vec(), // ל (Lamed) + // 38 => b"distributed".to_vec(), // ם (Final Mem) + // 39 => b"edge".to_vec(), // מ (Mem) + // 40 => b"chunk".to_vec(), // ן (Final Nun) + // 41 => b"sportsensor".to_vec(), // נ (Nun) + // 42 => b"masa".to_vec(), // ס (Samekh) + // 43 => b"graphite".to_vec(), // ע (Ayin) + // 44 => b"score".to_vec(), // ף (Final Pe) + // 45 => b"gen42".to_vec(), // פ (Pe) + // 46 => b"neural".to_vec(), // ץ (Final Tsadi) + // 47 => b"condense".to_vec(), // צ (Tsadi) + // 48 => b"nextplace".to_vec(), // ק (Qof) + // 49 => b"automl".to_vec(), // ר (Resh) + // 50 => b"audio".to_vec(), // ש (Shin) + // 51 => b"celium".to_vec(), // ת (Tav) + // 52 => b"dojo".to_vec(), // ا (Alif) + // 53 => b"frontier".to_vec(), // ب (Ba) + // 54 => b"safescan".to_vec(), // ت (Ta) + // 55 => b"unknown".to_vec(), // ث (Tha) + // 56 => b"gradients".to_vec(), // ج (Jim) + // 57 => b"gaia".to_vec(), // ح (Ha) + // 58 => b"dippy-speach".to_vec(), // خ (Kha) + // 59 => b"agent-arena".to_vec(), // د (Dal) + // 60 => b"unknown".to_vec(), // ذ (Dhal) + // 61 => b"red team".to_vec(), // ر (Ra) + // 62 => b"agentao".to_vec(), // ز (Zay) + // 63 => b"lean-in".to_vec(), // س (Sin) + // 64 => b"chutes".to_vec(), // ش (Shin) + // // Default case + // _ => b"unknown".to_vec(), // unknown subnet. + // } + }) } pub fn get_symbol_for_subnet(netuid: u16) -> Vec { From 3894cf696625715b29bf599acf4de9eb4131c325 Mon Sep 17 00:00:00 2001 From: Cameron Fairchild Date: Wed, 2 Apr 2025 18:21:43 -0400 Subject: [PATCH 2/2] clippy --- .../src/migrations/migrate_remove_subnet_name_map.rs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pallets/subtensor/src/migrations/migrate_remove_subnet_name_map.rs b/pallets/subtensor/src/migrations/migrate_remove_subnet_name_map.rs index b7259325d..450929ff9 100644 --- a/pallets/subtensor/src/migrations/migrate_remove_subnet_name_map.rs +++ b/pallets/subtensor/src/migrations/migrate_remove_subnet_name_map.rs @@ -2,11 +2,7 @@ use super::*; use crate::HasMigrationRun; use frame_support::{traits::Get, weights::Weight}; use scale_info::prelude::string::String; -use sp_io::{ - KillStorageResult, - hashing::twox_128, - storage::{clear, clear_prefix}, -}; +use sp_io::{KillStorageResult, hashing::twox_128, storage::clear_prefix}; fn remove_prefix(old_map: &str, weight: &mut Weight) { let mut prefix = Vec::new();