use-tw-zipcode
Version:
React hook for getting Taiwan zip code.
1 lines • 28.6 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../src/data/cities.ts","../src/data/districts.ts","../src/data/zipCode.ts","../src/index.ts"],"sourcesContent":["const cities = [\n '台北市',\n '基隆市',\n '新北市',\n '桃園市',\n '新竹市',\n '新竹縣',\n '苗栗縣',\n '台中市',\n '彰化縣',\n '南投縣',\n '雲林縣',\n '嘉義市',\n '嘉義縣',\n '台南市',\n '高雄市',\n '屏東縣',\n '台東縣',\n '花蓮縣',\n '宜蘭縣',\n '澎湖縣',\n '金門縣',\n '連江縣',\n];\n\nexport default cities;\n","interface Districts {\n [key: string]: string[];\n}\nconst districts: Districts = {\n 台北市: [\n '中正區',\n '大同區',\n '中山區',\n '松山區',\n '大安區',\n '萬華區',\n '信義區',\n '士林區',\n '北投區',\n '內湖區',\n '南港區',\n '文山區',\n ],\n 基隆市: ['仁愛區', '信義區', '中正區', '中山區', '安樂區', '暖暖區', '七堵區'],\n 新北市: [\n '萬里區',\n '金山區',\n '板橋區',\n '汐止區',\n '深坑區',\n '石碇區',\n '瑞芳區',\n '平溪區',\n '雙溪區',\n '貢寮區',\n '新店區',\n '坪林區',\n '烏來區',\n '永和區',\n '中和區',\n '土城區',\n '三峽區',\n '樹林區',\n '鶯歌區',\n '三重區',\n '新莊區',\n '泰山區',\n '林口區',\n '蘆洲區',\n '五股區',\n '八里區',\n '淡水區',\n '三芝區',\n '石門區',\n ],\n 桃園市: [\n '中壢區',\n '平鎮區',\n '龍潭區',\n '楊梅區',\n '新屋區',\n '觀音區',\n '桃園區',\n '龜山區',\n '八德區',\n '大溪區',\n '復興區',\n '大園區',\n '蘆竹區',\n ],\n 新竹市: ['東區', '北區', '香山區'],\n 新竹縣: [\n '竹北市',\n '湖口鄉',\n '新豐鄉',\n '新埔鎮',\n '關西鎮',\n '芎林鄉',\n '寶山鄉',\n '竹東鎮',\n '五峰鄉',\n '橫山鄉',\n '尖石鄉',\n '北埔鄉',\n '峨嵋鄉',\n ],\n 苗栗縣: [\n '竹南鎮',\n '頭份市',\n '三灣鄉',\n '南庄鄉',\n '獅潭鄉',\n '後龍鎮',\n '通霄鎮',\n '苑裡鎮',\n '苗栗市',\n '造橋鄉',\n '頭屋鄉',\n '公館鄉',\n '大湖鄉',\n '泰安鄉',\n '銅鑼鄉',\n '三義鄉',\n '西湖鄉',\n '卓蘭鎮',\n ],\n 台中市: [\n '中區',\n '東區',\n '南區',\n '西區',\n '北區',\n '北屯區',\n '西屯區',\n '南屯區',\n '太平區',\n '大里區',\n '霧峰區',\n '烏日區',\n '豐原區',\n '后里區',\n '石岡區',\n '東勢區',\n '和平區',\n '新社區',\n '潭子區',\n '大雅區',\n '神岡區',\n '大肚區',\n '沙鹿區',\n '龍井區',\n '梧棲區',\n '清水區',\n '大甲區',\n '外埔區',\n '大安區',\n ],\n 彰化縣: [\n '彰化市',\n '芬園鄉',\n '花壇鄉',\n '秀水鄉',\n '鹿港鎮',\n '福興鄉',\n '線西鄉',\n '和美鎮',\n '伸港鄉',\n '員林市',\n '社頭鄉',\n '永靖鄉',\n '埔心鄉',\n '溪湖鎮',\n '大村鄉',\n '埔鹽鄉',\n '田中鎮',\n '北斗鎮',\n '田尾鄉',\n '埤頭鄉',\n '溪州鄉',\n '竹塘鄉',\n '二林鎮',\n '大城鄉',\n '芳苑鄉',\n '二水鄉',\n ],\n 南投縣: [\n '南投市',\n '中寮鄉',\n '草屯鎮',\n '國姓鄉',\n '埔里鎮',\n '仁愛鄉',\n '名間鄉',\n '集集鎮',\n '水里鄉',\n '魚池鄉',\n '信義鄉',\n '竹山鎮',\n '鹿谷鄉',\n ],\n 雲林縣: [\n '斗南鎮',\n '大埤鄉',\n '虎尾鎮',\n '土庫鎮',\n '褒忠鄉',\n '東勢鄉',\n '臺西鄉',\n '崙背鄉',\n '麥寮鄉',\n '斗六市',\n '林內鄉',\n '古坑鄉',\n '莿桐鄉',\n '西螺鎮',\n '二崙鄉',\n '北港鎮',\n '水林鄉',\n '口湖鄉',\n '四湖鄉',\n '元長鄉',\n ],\n 嘉義市: ['東區', '西區'],\n 嘉義縣: [\n '番路鄉',\n '梅山鄉',\n '竹崎鄉',\n '阿里山',\n '中埔鄉',\n '大埔鄉',\n '水上鄉',\n '鹿草鄉',\n '太保市',\n '朴子市',\n '東石鄉',\n '六腳鄉',\n '新港鄉',\n '民雄鄉',\n '大林鎮',\n '溪口鄉',\n '義竹鄉',\n '布袋鎮',\n ],\n 台南市: [\n '中西區',\n '東區',\n '南區',\n '北區',\n '安平區',\n '安南區',\n '永康區',\n '歸仁區',\n '新化區',\n '左鎮區',\n '玉井區',\n '楠西區',\n '南化區',\n '仁德區',\n '關廟區',\n '龍崎區',\n '官田區',\n '麻豆區',\n '佳里區',\n '西港區',\n '七股區',\n '將軍區',\n '學甲區',\n '北門區',\n '新營區',\n '後壁區',\n '白河區',\n '東山區',\n '六甲區',\n '下營區',\n '柳營區',\n '鹽水區',\n '善化區',\n '大內區',\n '山上區',\n '新市區',\n '安定區',\n ],\n 高雄市: [\n '新興區',\n '前金區',\n '苓雅區',\n '鹽埕區',\n '鼓山區',\n '旗津區',\n '前鎮區',\n '三民區',\n '楠梓區',\n '小港區',\n '左營區',\n '仁武區',\n '大社區',\n '東沙群島',\n '南沙群島',\n '岡山區',\n '路竹區',\n '阿蓮區',\n '田寮區',\n '燕巢區',\n '橋頭區',\n '梓官區',\n '彌陀區',\n '永安區',\n '湖內區',\n '鳳山區',\n '大寮區',\n '林園區',\n '鳥松區',\n '大樹區',\n '旗山區',\n '美濃區',\n '六龜區',\n '內門區',\n '杉林區',\n '甲仙區',\n '桃源區',\n '那瑪夏區',\n '茂林區',\n '茄萣區',\n ],\n 屏東縣: [\n '屏東市',\n '三地門鄉',\n '霧臺鄉',\n '瑪家鄉',\n '九如鄉',\n '里港鄉',\n '高樹鄉',\n '鹽埔鄉',\n '長治鄉',\n '麟洛鄉',\n '竹田鄉',\n '內埔鄉',\n '萬丹鄉',\n '潮州鎮',\n '泰武鄉',\n '來義鄉',\n '萬巒鄉',\n '崁頂鄉',\n '新埤鄉',\n '南州鄉',\n '林邊鄉',\n '東港鎮',\n '琉球鄉',\n '佳冬鄉',\n '新園鄉',\n '枋寮鄉',\n '枋山鄉',\n '春日鄉',\n '獅子鄉',\n '車城鄉',\n '牡丹鄉',\n '恆春鎮',\n '滿州鄉',\n ],\n 台東縣: [\n '臺東市',\n '綠島鄉',\n '蘭嶼鄉',\n '延平鄉',\n '卑南鄉',\n '鹿野鄉',\n '關山鎮',\n '海端鄉',\n '池上鄉',\n '東河鄉',\n '成功鎮',\n '長濱鄉',\n '太麻里鄉',\n '金峰鄉',\n '大武鄉',\n '達仁鄉',\n ],\n 花蓮縣: [\n '花蓮市',\n '新城鄉',\n '秀林鄉',\n '吉安鄉',\n '壽豐鄉',\n '鳳林鎮',\n '光復鄉',\n '豐濱鄉',\n '瑞穗鄉',\n '萬榮鄉',\n '玉里鎮',\n '卓溪鄉',\n '富里鄉',\n ],\n 宜蘭縣: [\n '宜蘭市',\n '頭城鎮',\n '礁溪鄉',\n '壯圍鄉',\n '員山鄉',\n '羅東鎮',\n '三星鄉',\n '大同鄉',\n '五結鄉',\n '冬山鄉',\n '蘇澳鎮',\n '南澳鄉',\n '釣魚台列嶼',\n ],\n 澎湖縣: ['馬公市', '西嶼鄉', '望安鄉', '七美鄉', '白沙鄉', '湖西鄉'],\n 金門縣: ['金沙鎮', '金湖鎮', '金寧鄉', '金城鎮', '烈嶼鄉', '烏坵鄉'],\n 連江縣: ['南竿鄉', '北竿鄉', '莒光鄉', '東引鄉'],\n};\n\nexport default districts;\n","interface ZipCodes {\n [key: string]: {\n [key: string]: string;\n };\n}\nexport const zipCodes: ZipCodes = {\n 台北市: {\n 中正區: '100',\n 大同區: '103',\n 中山區: '104',\n 松山區: '105',\n 大安區: '106',\n 萬華區: '108',\n 信義區: '110',\n 士林區: '111',\n 北投區: '112',\n 內湖區: '114',\n 南港區: '115',\n 文山區: '116',\n },\n 基隆市: {\n 仁愛區: '200',\n 信義區: '201',\n 中正區: '202',\n 中山區: '203',\n 安樂區: '204',\n 暖暖區: '205',\n 七堵區: '206',\n },\n 新北市: {\n 萬里區: '207',\n 金山區: '208',\n 板橋區: '220',\n 汐止區: '221',\n 深坑區: '222',\n 石碇區: '223',\n 瑞芳區: '224',\n 平溪區: '226',\n 雙溪區: '227',\n 貢寮區: '228',\n 新店區: '231',\n 坪林區: '232',\n 烏來區: '233',\n 永和區: '234',\n 中和區: '235',\n 土城區: '236',\n 三峽區: '237',\n 樹林區: '238',\n 鶯歌區: '239',\n 三重區: '241',\n 新莊區: '242',\n 泰山區: '243',\n 林口區: '244',\n 蘆洲區: '247',\n 五股區: '248',\n 八里區: '249',\n 淡水區: '251',\n 三芝區: '252',\n 石門區: '253',\n },\n 宜蘭縣: {\n 宜蘭市: '260',\n 頭城鎮: '261',\n 礁溪鄉: '262',\n 壯圍鄉: '263',\n 員山鄉: '264',\n 羅東鎮: '265',\n 三星鄉: '266',\n 大同鄉: '267',\n 五結鄉: '268',\n 冬山鄉: '269',\n 蘇澳鎮: '270',\n 南澳鄉: '272',\n 釣魚台列嶼: '290',\n },\n 新竹市: {\n 東區: '300',\n 北區: '300',\n 香山區: '300',\n },\n 新竹縣: {\n 竹北市: '302',\n 湖口鄉: '303',\n 新豐鄉: '304',\n 新埔鎮: '305',\n 關西鎮: '306',\n 芎林鄉: '307',\n 寶山鄉: '308',\n 竹東鎮: '310',\n 五峰鄉: '311',\n 橫山鄉: '312',\n 尖石鄉: '313',\n 北埔鄉: '314',\n 峨嵋鄉: '315',\n },\n 桃園市: {\n 中壢區: '320',\n 平鎮區: '324',\n 龍潭區: '325',\n 楊梅區: '326',\n 新屋區: '327',\n 觀音區: '328',\n 桃園區: '330',\n 龜山區: '333',\n 八德區: '334',\n 大溪區: '335',\n 復興區: '336',\n 大園區: '337',\n 蘆竹區: '338',\n },\n 苗栗縣: {\n 竹南鎮: '350',\n 頭份市: '351',\n 三灣鄉: '352',\n 南庄鄉: '353',\n 獅潭鄉: '354',\n 後龍鎮: '356',\n 通霄鎮: '357',\n 苑裡鎮: '358',\n 苗栗市: '360',\n 造橋鄉: '361',\n 頭屋鄉: '362',\n 公館鄉: '363',\n 大湖鄉: '364',\n 泰安鄉: '365',\n 銅鑼鄉: '366',\n 三義鄉: '367',\n 西湖鄉: '368',\n 卓蘭鎮: '369',\n },\n 台中市: {\n 中區: '400',\n 東區: '401',\n 南區: '402',\n 西區: '403',\n 北區: '404',\n 北屯區: '406',\n 西屯區: '407',\n 南屯區: '408',\n 太平區: '411',\n 大里區: '412',\n 霧峰區: '413',\n 烏日區: '414',\n 豐原區: '420',\n 后里區: '421',\n 石岡區: '422',\n 東勢區: '423',\n 和平區: '424',\n 新社區: '426',\n 潭子區: '427',\n 大雅區: '428',\n 神岡區: '429',\n 大肚區: '432',\n 沙鹿區: '433',\n 龍井區: '434',\n 梧棲區: '435',\n 清水區: '436',\n 大甲區: '437',\n 外埔區: '438',\n 大安區: '439',\n },\n 彰化縣: {\n 彰化市: '500',\n 芬園鄉: '502',\n 花壇鄉: '503',\n 秀水鄉: '504',\n 鹿港鎮: '505',\n 福興鄉: '506',\n 線西鄉: '507',\n 和美鎮: '508',\n 伸港鄉: '509',\n 員林市: '510',\n 社頭鄉: '511',\n 永靖鄉: '512',\n 埔心鄉: '513',\n 溪湖鎮: '514',\n 大村鄉: '515',\n 埔鹽鄉: '516',\n 田中鎮: '520',\n 北斗鎮: '521',\n 田尾鄉: '522',\n 埤頭鄉: '523',\n 溪州鄉: '524',\n 竹塘鄉: '525',\n 二林鎮: '526',\n 大城鄉: '527',\n 芳苑鄉: '528',\n 二水鄉: '530',\n },\n 南投縣: {\n 南投市: '540',\n 中寮鄉: '541',\n 草屯鎮: '542',\n 國姓鄉: '544',\n 埔里鎮: '545',\n 仁愛鄉: '546',\n 名間鄉: '551',\n 集集鎮: '552',\n 水里鄉: '553',\n 魚池鄉: '555',\n 信義鄉: '556',\n 竹山鎮: '557',\n 鹿谷鄉: '558',\n },\n 嘉義市: {\n 東區: '600',\n 西區: '600',\n },\n 嘉義縣: {\n 番路鄉: '602',\n 梅山鄉: '603',\n 竹崎鄉: '604',\n 阿里山: '605',\n 中埔鄉: '606',\n 大埔鄉: '607',\n 水上鄉: '608',\n 鹿草鄉: '611',\n 太保市: '612',\n 朴子市: '613',\n 東石鄉: '614',\n 六腳鄉: '615',\n 新港鄉: '616',\n 民雄鄉: '621',\n 大林鎮: '622',\n 溪口鄉: '623',\n 義竹鄉: '624',\n 布袋鎮: '625',\n },\n 雲林縣: {\n 斗南鎮: '630',\n 大埤鄉: '631',\n 虎尾鎮: '632',\n 土庫鎮: '633',\n 褒忠鄉: '634',\n 東勢鄉: '635',\n 臺西鄉: '636',\n 崙背鄉: '637',\n 麥寮鄉: '638',\n 斗六市: '640',\n 林內鄉: '643',\n 古坑鄉: '646',\n 莿桐鄉: '647',\n 西螺鎮: '648',\n 二崙鄉: '649',\n 北港鎮: '651',\n 水林鄉: '652',\n 口湖鄉: '653',\n 四湖鄉: '654',\n 元長鄉: '655',\n },\n 台南市: {\n 中西區: '700',\n 東區: '701',\n 南區: '702',\n 北區: '704',\n 安平區: '708',\n 安南區: '709',\n 永康區: '710',\n 歸仁區: '711',\n 新化區: '712',\n 左鎮區: '713',\n 玉井區: '714',\n 楠西區: '715',\n 南化區: '716',\n 仁德區: '717',\n 關廟區: '718',\n 龍崎區: '719',\n 官田區: '720',\n 麻豆區: '721',\n 佳里區: '722',\n 西港區: '723',\n 七股區: '724',\n 將軍區: '725',\n 學甲區: '726',\n 北門區: '727',\n 新營區: '730',\n 後壁區: '731',\n 白河區: '732',\n 東山區: '733',\n 六甲區: '734',\n 下營區: '735',\n 柳營區: '736',\n 鹽水區: '737',\n 善化區: '741',\n 大內區: '742',\n 山上區: '743',\n 新市區: '744',\n 安定區: '745',\n },\n 高雄市: {\n 新興區: '800',\n 前金區: '801',\n 苓雅區: '802',\n 鹽埕區: '803',\n 鼓山區: '804',\n 旗津區: '805',\n 前鎮區: '806',\n 三民區: '807',\n 楠梓區: '811',\n 小港區: '812',\n 左營區: '813',\n 仁武區: '814',\n 大社區: '815',\n 東沙群島: '817',\n 南沙群島: '819',\n 岡山區: '820',\n 路竹區: '821',\n 阿蓮區: '822',\n 田寮區: '823',\n 燕巢區: '824',\n 橋頭區: '825',\n 梓官區: '826',\n 彌陀區: '827',\n 永安區: '828',\n 湖內區: '829',\n 鳳山區: '830',\n 大寮區: '831',\n 林園區: '832',\n 鳥松區: '833',\n 大樹區: '840',\n 旗山區: '842',\n 美濃區: '843',\n 六龜區: '844',\n 內門區: '845',\n 杉林區: '846',\n 甲仙區: '847',\n 桃源區: '848',\n 那瑪夏區: '849',\n 茂林區: '851',\n 茄萣區: '852',\n },\n 屏東縣: {\n 屏東市: '900',\n 三地門鄉: '901',\n 霧臺鄉: '902',\n 瑪家鄉: '903',\n 九如鄉: '904',\n 里港鄉: '905',\n 高樹鄉: '906',\n 鹽埔鄉: '907',\n 長治鄉: '908',\n 麟洛鄉: '909',\n 竹田鄉: '911',\n 內埔鄉: '912',\n 萬丹鄉: '913',\n 潮州鎮: '920',\n 泰武鄉: '921',\n 來義鄉: '922',\n 萬巒鄉: '923',\n 崁頂鄉: '924',\n 新埤鄉: '925',\n 南州鄉: '926',\n 林邊鄉: '927',\n 東港鎮: '928',\n 琉球鄉: '929',\n 佳冬鄉: '931',\n 新園鄉: '932',\n 枋寮鄉: '940',\n 枋山鄉: '941',\n 春日鄉: '942',\n 獅子鄉: '943',\n 車城鄉: '944',\n 牡丹鄉: '945',\n 恆春鎮: '946',\n 滿州鄉: '947',\n },\n 台東縣: {\n 臺東市: '950',\n 綠島鄉: '951',\n 蘭嶼鄉: '952',\n 延平鄉: '953',\n 卑南鄉: '954',\n 鹿野鄉: '955',\n 關山鎮: '956',\n 海端鄉: '957',\n 池上鄉: '958',\n 東河鄉: '959',\n 成功鎮: '961',\n 長濱鄉: '962',\n 太麻里鄉: '963',\n 金峰鄉: '964',\n 大武鄉: '965',\n 達仁鄉: '966',\n },\n 花蓮縣: {\n 花蓮市: '970',\n 新城鄉: '971',\n 秀林鄉: '972',\n 吉安鄉: '973',\n 壽豐鄉: '974',\n 鳳林鎮: '975',\n 光復鄉: '976',\n 豐濱鄉: '977',\n 瑞穗鄉: '978',\n 萬榮鄉: '979',\n 玉里鎮: '981',\n 卓溪鄉: '982',\n 富里鄉: '983',\n },\n 金門縣: {\n 金沙鎮: '890',\n 金湖鎮: '891',\n 金寧鄉: '892',\n 金城鎮: '893',\n 烈嶼鄉: '894',\n 烏坵鄉: '896',\n },\n 連江縣: {\n 南竿鄉: '209',\n 北竿鄉: '210',\n 莒光鄉: '211',\n 東引鄉: '212',\n },\n 澎湖縣: {\n 馬公市: '880',\n 西嶼鄉: '881',\n 望安鄉: '882',\n 七美鄉: '883',\n 白沙鄉: '884',\n 湖西鄉: '885',\n },\n};\n\nexport default zipCodes;\n","import { useState } from 'react';\nimport cities from './data/cities';\nimport districts from './data/districts';\nimport zipCodes from './data/zipCode';\n\nconst useTwZipCode = () => {\n const [city, setCity] = useState<string>(cities[0]);\n const [district, setDistrict] = useState<string>(districts[city][0]);\n const zipCode: string = zipCodes[city][district];\n\n const handleCityChange = async (value: string) => {\n await setCity(value);\n await setDistrict(districts[value][0]);\n };\n\n const handleDistrictChange = async (value: string) => {\n await setDistrict(value);\n };\n\n return {\n city,\n district,\n zipCode,\n handleCityChange,\n handleDistrictChange,\n };\n};\n\nexport { cities, districts, zipCodes, useTwZipCode };\n"],"names":["cities","districts","zipCodes","useTwZipCode","city","setCity","useState","district","setDistrict","zipCode","value"],"mappings":"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AAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAEF,KAAK;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAEF,KAAK;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAEF,KAAK;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,I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;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,IAAI;AAAA,IACJ,IAAI;AAAA,EAAA;AAAA,EAEN,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,MAAM;AAAA,IACN,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAAA,EAEP,KAAK;AAAA,IACH,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EAAA;AAET,GChaMC,IAAe,MAAM;AACzB,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAiBN,EAAO,CAAC,CAAC,GAC5C,CAACO,GAAUC,CAAW,IAAIF,EAAiBL,EAAUG,CAAI,EAAE,CAAC,CAAC,GAC7DK,IAAkBP,EAASE,CAAI,EAAEG,CAAQ;AAW/C,SAAO;AAAA,IACL,MAAAH;AAAA,IACA,UAAAG;AAAA,IACA,SAAAE;AAAA,IACA,kBAbuB,OAAOC,MAAkB;AAChD,YAAML,EAAQK,CAAK,GACnB,MAAMF,EAAYP,EAAUS,CAAK,EAAE,CAAC,CAAC;AAAA,IACvC;AAAA,IAWE,sBAT2B,OAAOA,MAAkB;AACpD,YAAMF,EAAYE,CAAK;AAAA,IACzB;AAAA,EAOE;AAEJ;"}