1166 lines
19 KiB
Python
Executable File
1166 lines
19 KiB
Python
Executable File
#!/usr/bin/env python3
|
||
|
||
import assetmgr
|
||
import json
|
||
import os
|
||
import re
|
||
import sys
|
||
|
||
def main():
|
||
fd = open(sys.argv[1], 'r')
|
||
data = fd.read()
|
||
fd.close()
|
||
|
||
basename = os.path.basename(sys.argv[1]).replace('.json', '')
|
||
shortname = get_shortname(basename)
|
||
|
||
rows = json.loads(data)
|
||
|
||
if sys.argv[2] == 'en':
|
||
make_header(rows, shortname)
|
||
|
||
make_object(rows, basename, sys.argv[2])
|
||
|
||
def get_shortname(basename):
|
||
return re.match(r'^[a-z0-9]+', basename)[0]
|
||
|
||
def make_header(rows, shortname):
|
||
typename = 'l_%s' % shortname
|
||
enums = [row['id'] for row in rows]
|
||
filename = 'lang/%s.h' % shortname
|
||
terminator = 'L_%s_END' % shortname.upper()
|
||
start = banks.index(shortname) * 512
|
||
assetmgr.write_enums(typename, enums, filename, terminator, start=start)
|
||
|
||
def make_object(rows, basename, key):
|
||
binary = make_binary(rows, key)
|
||
zipped = assetmgr.zip(binary)
|
||
|
||
suffix = {
|
||
'en': 'E',
|
||
'gb': 'P',
|
||
'jp': 'J',
|
||
'fr': '_str_f',
|
||
'de': '_str_g',
|
||
'it': '_str_i',
|
||
'es': '_str_s',
|
||
}[key]
|
||
|
||
filename = 'files/L%s%s.o' % (basename, suffix)
|
||
assetmgr.write_object(zipped, filename)
|
||
|
||
def make_binary(rows, key):
|
||
if len(rows) == 0:
|
||
return (0).to_bytes(16, 'big')
|
||
|
||
output = bytes()
|
||
pos = len([row for row in rows if key in row]) * 4
|
||
strings = []
|
||
|
||
for index, row in enumerate(rows):
|
||
if key in row:
|
||
if row[key] is None:
|
||
output += (0).to_bytes(4, 'big')
|
||
else:
|
||
output += pos.to_bytes(4, 'big')
|
||
|
||
if os.environ['ROMID'] == 'jpn-final' and key == 'jp':
|
||
string = encode_jp(row[key])
|
||
else:
|
||
string = row[key].encode('latin_1')
|
||
|
||
strings.append(string)
|
||
pos += assetmgr.align4(len(string) + 1)
|
||
|
||
for string in strings:
|
||
output += string
|
||
amount = 4 - (len(string) % 4)
|
||
output += (0).to_bytes(amount, 'big')
|
||
|
||
if len(output) % 16:
|
||
amount = 16 - (len(output) % 16)
|
||
output += (0).to_bytes(amount, 'big')
|
||
|
||
return output
|
||
|
||
"""
|
||
The input string is UTF-8, and it needs to be re-encoded to a custom encoding.
|
||
A lookup array is used for this.
|
||
|
||
However, some UTF-8 characters appear multiple types with a different encoding.
|
||
For duplicates, we store the character in JSON as something like \habcd where
|
||
abcd is the target value in hex.
|
||
"""
|
||
def encode_jp(string):
|
||
outbytes = bytes()
|
||
i = 0
|
||
|
||
while i < len(string):
|
||
if string[i] in jpnchars:
|
||
outbytes += jpnchars[string[i]].to_bytes(2, 'big')
|
||
i += 1;
|
||
else:
|
||
match = re.match(r'^\\h([a-z0-9]{4})', string[i:])
|
||
|
||
if match:
|
||
dec = int(match[1], 16)
|
||
outbytes += dec.to_bytes(2, 'big')
|
||
i += 6;
|
||
else:
|
||
outbytes += ord(string[i]).to_bytes(1, 'big')
|
||
i += 1;
|
||
|
||
return outbytes
|
||
|
||
banks = [
|
||
'',
|
||
'ame',
|
||
'arch',
|
||
'ark',
|
||
'ash',
|
||
'azt',
|
||
'cat',
|
||
'cave',
|
||
'arec',
|
||
'crad',
|
||
'cryp',
|
||
'dam',
|
||
'depo',
|
||
'dest',
|
||
'dish',
|
||
'ear',
|
||
'eld',
|
||
'imp',
|
||
'jun',
|
||
'lee',
|
||
'len',
|
||
'lip',
|
||
'lue',
|
||
'oat',
|
||
'pam',
|
||
'pete',
|
||
'ref',
|
||
'rit',
|
||
'run',
|
||
'sevb',
|
||
'sev',
|
||
'sevx',
|
||
'sevxb',
|
||
'sho',
|
||
'silo',
|
||
'stat',
|
||
'tra',
|
||
'wax',
|
||
'gun',
|
||
'title',
|
||
'mpmenu',
|
||
'propobj',
|
||
'mpweapons',
|
||
'options',
|
||
'misc',
|
||
'uff',
|
||
'old',
|
||
'ate',
|
||
'lam',
|
||
'mp1',
|
||
'mp2',
|
||
'mp3',
|
||
'mp4',
|
||
'mp5',
|
||
'mp6',
|
||
'mp7',
|
||
'mp8',
|
||
'mp9',
|
||
'mp10',
|
||
'mp11',
|
||
'mp12',
|
||
'mp13',
|
||
'mp14',
|
||
'mp15',
|
||
'mp16',
|
||
'mp17',
|
||
'mp18',
|
||
'mp19',
|
||
'mp20',
|
||
]
|
||
|
||
jpnchars = {
|
||
' ': 0x8080,
|
||
'、': 0x8081,
|
||
'$': 0x8082,
|
||
'(': 0x8083,
|
||
')': 0x8084,
|
||
'・': 0x8085,
|
||
'%': 0x8086,
|
||
'「': 0x8087,
|
||
'」': 0x8088,
|
||
'“': 0x8089,
|
||
'<': 0x808a,
|
||
'>': 0x808b,
|
||
'&': 0x808c,
|
||
'~': 0x808d,
|
||
'…': 0x808e,
|
||
' ': 0x808f,
|
||
'0': 0x8090,
|
||
'1': 0x8091,
|
||
'2': 0x8092,
|
||
'3': 0x8093,
|
||
'4': 0x8094,
|
||
'5': 0x8095,
|
||
'6': 0x8096,
|
||
'7': 0x8097,
|
||
'8': 0x8098,
|
||
'9': 0x8099,
|
||
'A': 0x809a,
|
||
'B': 0x809b,
|
||
'C': 0x809c,
|
||
'D': 0x809d,
|
||
'E': 0x809e,
|
||
'F': 0x809f,
|
||
'G': 0x80a0,
|
||
'H': 0x80a1,
|
||
'I': 0x80a2,
|
||
'J': 0x80a3,
|
||
'K': 0x80a4,
|
||
'L': 0x80a5,
|
||
'M': 0x80a6,
|
||
'N': 0x80a7,
|
||
'O': 0x80a8,
|
||
'P': 0x80a9,
|
||
'Q': 0x80aa,
|
||
'R': 0x80ab,
|
||
'S': 0x80ac,
|
||
'T': 0x80ad,
|
||
'U': 0x80ae,
|
||
'V': 0x80af,
|
||
'W': 0x80b0,
|
||
'X': 0x80b1,
|
||
'Y': 0x80b2,
|
||
'Z': 0x80b3,
|
||
'!': 0x80b4,
|
||
'”': 0x80b5,
|
||
'#': 0x80b6,
|
||
'’': 0x80b7,
|
||
'*': 0x80b8,
|
||
'+': 0x80b9,
|
||
',': 0x80ba,
|
||
'-': 0x80bb,
|
||
'.': 0x80bc,
|
||
'/': 0x80bd,
|
||
':': 0x80be,
|
||
'=': 0x80bf,
|
||
'?': 0x80c0,
|
||
'@': 0x80c1,
|
||
'。': 0x80c2,
|
||
'゛': 0x80c3,
|
||
'゜': 0x80c4,
|
||
'ァ': 0x80c5,
|
||
'ィ': 0x80c6,
|
||
'ゥ': 0x80c7,
|
||
'ェ': 0x80c8,
|
||
'ォ': 0x80c9,
|
||
'ッ': 0x80ca,
|
||
'ャ': 0x80cb,
|
||
'ュ': 0x80cc,
|
||
'ョ': 0x80cd,
|
||
'ヲ': 0x80ce,
|
||
'ン': 0x80cf,
|
||
'ア': 0x80d0,
|
||
'イ': 0x80d1,
|
||
'ウ': 0x80d2,
|
||
'エ': 0x80d3,
|
||
'オ': 0x80d4,
|
||
'カ': 0x80d5,
|
||
'キ': 0x80d6,
|
||
'ク': 0x80d7,
|
||
'ケ': 0x80d8,
|
||
'コ': 0x80d9,
|
||
'サ': 0x80da,
|
||
'シ': 0x80db,
|
||
'ス': 0x80dc,
|
||
'セ': 0x80dd,
|
||
'ソ': 0x80de,
|
||
'タ': 0x80df,
|
||
'チ': 0x80e0,
|
||
'ツ': 0x80e1,
|
||
'テ': 0x80e2,
|
||
'ト': 0x80e3,
|
||
'ナ': 0x80e4,
|
||
'ニ': 0x80e5,
|
||
'ヌ': 0x80e6,
|
||
'ネ': 0x80e7,
|
||
'ノ': 0x80e8,
|
||
'ハ': 0x80e9,
|
||
'ヒ': 0x80ea,
|
||
'フ': 0x80eb,
|
||
'ヘ': 0x80ec,
|
||
'ホ': 0x80ed,
|
||
'マ': 0x80ee,
|
||
'ミ': 0x80ef,
|
||
'ム': 0x80f0,
|
||
'メ': 0x80f1,
|
||
'モ': 0x80f2,
|
||
'ヤ': 0x80f3,
|
||
'ユ': 0x80f4,
|
||
'ヨ': 0x80f5,
|
||
'ラ': 0x80f6,
|
||
'リ': 0x80f7,
|
||
'ル': 0x80f8,
|
||
'レ': 0x80f9,
|
||
'ロ': 0x80fa,
|
||
'ワ': 0x80fb,
|
||
'ガ': 0x80fc,
|
||
'ギ': 0x80fd,
|
||
'グ': 0x80fe,
|
||
'ゲ': 0x80ff,
|
||
'ゴ': 0x8180,
|
||
'ザ': 0x8181,
|
||
'ジ': 0x8182,
|
||
'ズ': 0x8183,
|
||
'ゼ': 0x8184,
|
||
'ゾ': 0x8185,
|
||
'ダ': 0x8186,
|
||
'ヂ': 0x8187,
|
||
'ヅ': 0x8188,
|
||
'デ': 0x8189,
|
||
'ド': 0x818a,
|
||
'バ': 0x818b,
|
||
'ビ': 0x818c,
|
||
'ブ': 0x818d,
|
||
'ベ': 0x818e,
|
||
'ボ': 0x818f,
|
||
'パ': 0x8190,
|
||
'ピ': 0x8191,
|
||
'プ': 0x8192,
|
||
'ペ': 0x8193,
|
||
'ポ': 0x8194,
|
||
'a': 0x8195,
|
||
'b': 0x8196,
|
||
'c': 0x8197,
|
||
'd': 0x8198,
|
||
'e': 0x8199,
|
||
'f': 0x819a,
|
||
'g': 0x819b,
|
||
'h': 0x819c,
|
||
'i': 0x819d,
|
||
'j': 0x819e,
|
||
'k': 0x819f,
|
||
'l': 0x81a0,
|
||
'm': 0x81a1,
|
||
'n': 0x81a2,
|
||
'o': 0x81a3,
|
||
'p': 0x81a4,
|
||
'q': 0x81a5,
|
||
'r': 0x81a6,
|
||
's': 0x81a7,
|
||
't': 0x81a8,
|
||
'u': 0x81a9,
|
||
'v': 0x81aa,
|
||
'w': 0x81ab,
|
||
'x': 0x81ac,
|
||
'y': 0x81ad,
|
||
'z': 0x81ae,
|
||
'ぁ': 0x81af,
|
||
'ぃ': 0x81b0,
|
||
'ぅ': 0x81b1,
|
||
'ぇ': 0x81b2,
|
||
'ぉ': 0x81b3,
|
||
'っ': 0x81b4,
|
||
'ゃ': 0x81b5,
|
||
'ゅ': 0x81b6,
|
||
'ょ': 0x81b7,
|
||
'を': 0x81b8,
|
||
'ん': 0x81b9,
|
||
'あ': 0x81ba,
|
||
'い': 0x81bb,
|
||
'う': 0x81bc,
|
||
'え': 0x81bd,
|
||
'お': 0x81be,
|
||
'か': 0x81bf,
|
||
'き': 0x81c0,
|
||
'く': 0x81c1,
|
||
'け': 0x81c2,
|
||
'こ': 0x81c3,
|
||
'さ': 0x81c4,
|
||
'し': 0x81c5,
|
||
'す': 0x81c6,
|
||
'せ': 0x81c7,
|
||
'そ': 0x81c8,
|
||
'た': 0x81c9,
|
||
'ち': 0x81ca,
|
||
'つ': 0x81cb,
|
||
'て': 0x81cc,
|
||
'と': 0x81cd,
|
||
'な': 0x81ce,
|
||
'に': 0x81cf,
|
||
'ぬ': 0x81d0,
|
||
'ね': 0x81d1,
|
||
'の': 0x81d2,
|
||
'は': 0x81d3,
|
||
'ひ': 0x81d4,
|
||
'ふ': 0x81d5,
|
||
'へ': 0x81d6,
|
||
'ほ': 0x81d7,
|
||
'ま': 0x81d8,
|
||
'み': 0x81d9,
|
||
'む': 0x81da,
|
||
'め': 0x81db,
|
||
'も': 0x81dc,
|
||
'や': 0x81dd,
|
||
'ゆ': 0x81de,
|
||
'よ': 0x81df,
|
||
'ら': 0x81e0,
|
||
'り': 0x81e1,
|
||
'る': 0x81e2,
|
||
'れ': 0x81e3,
|
||
'ろ': 0x81e4,
|
||
'わ': 0x81e5,
|
||
'が': 0x81e6,
|
||
'ぎ': 0x81e7,
|
||
'ぐ': 0x81e8,
|
||
'げ': 0x81e9,
|
||
'ご': 0x81ea,
|
||
'ざ': 0x81eb,
|
||
'じ': 0x81ec,
|
||
'ず': 0x81ed,
|
||
'ぜ': 0x81ee,
|
||
'ぞ': 0x81ef,
|
||
'だ': 0x81f0,
|
||
'ぢ': 0x81f1,
|
||
'づ': 0x81f2,
|
||
'で': 0x81f3,
|
||
'ど': 0x81f4,
|
||
'ば': 0x81f5,
|
||
'び': 0x81f6,
|
||
'ぶ': 0x81f7,
|
||
'べ': 0x81f8,
|
||
'ぼ': 0x81f9,
|
||
'ぱ': 0x81fa,
|
||
'ぴ': 0x81fb,
|
||
'ぷ': 0x81fc,
|
||
'ぺ': 0x81fd,
|
||
'ぽ': 0x81fe,
|
||
'ヴ': 0x81ff,
|
||
'口': 0x8280,
|
||
'工': 0x8281,
|
||
'力': 0x8282,
|
||
'一': 0x8283,
|
||
'ー': 0x8284,
|
||
'々': 0x8285,
|
||
'解': 0x8286,
|
||
'背': 0x8287,
|
||
'景': 0x8288,
|
||
'警': 0x8289,
|
||
'戒': 0x828a,
|
||
'体': 0x828b,
|
||
'制': 0x828c,
|
||
'中': 0x828d,
|
||
'内': 0x828e,
|
||
'部': 0x828f,
|
||
'級': 0x8290,
|
||
'戦': 0x8291,
|
||
'闘': 0x8292,
|
||
'員': 0x8293,
|
||
'配': 0x8294,
|
||
'置': 0x8295,
|
||
'外': 0x8296,
|
||
'敵': 0x8297,
|
||
'地': 0x8298,
|
||
'隊': 0x8299,
|
||
'包': 0x829a,
|
||
'囲': 0x829b,
|
||
'玄': 0x829c,
|
||
'関': 0x829d,
|
||
'脱': 0x829e,
|
||
'出': 0x829f,
|
||
'不': 0x82a0,
|
||
'可': 0x82a1,
|
||
'能': 0x82a2,
|
||
'協': 0x82a3,
|
||
'会': 0x82a4,
|
||
'輸': 0x82a5,
|
||
'送': 0x82a6,
|
||
'君': 0x82a7,
|
||
'救': 0x82a8,
|
||
'言': 0x82a9,
|
||
'何': 0x82aa,
|
||
'身': 0x82ab,
|
||
'守': 0x82ac,
|
||
'最': 0x82ad,
|
||
'優': 0x82ae,
|
||
'先': 0x82af,
|
||
'死': 0x82b0,
|
||
'妨': 0x82b1,
|
||
'害': 0x82b2,
|
||
'幸': 0x82b3,
|
||
'運': 0x82b4,
|
||
'任': 0x82b5,
|
||
'務': 0x82b6,
|
||
'進': 0x82b7,
|
||
'路': 0x82b8,
|
||
'確': 0x82b9,
|
||
'保': 0x82ba,
|
||
'付': 0x82bb,
|
||
'近': 0x82bc,
|
||
'階': 0x82bd,
|
||
'続': 0x82be,
|
||
'共': 0x82bf,
|
||
'乗': 0x82c0,
|
||
'込': 0x82c1,
|
||
'再': 0x82c2,
|
||
'起': 0x82c3,
|
||
'動': 0x82c4,
|
||
'途': 0x82c5,
|
||
'番': 0x82c6,
|
||
'認': 0x82c7,
|
||
'発': 0x82c8,
|
||
'見': 0x82c9,
|
||
'変': 0x82ca,
|
||
'更': 0x82cb,
|
||
'武': 0x82cc,
|
||
'装': 0x82cd,
|
||
'破': 0x82ce,
|
||
'壊': 0x82cf,
|
||
'周': 0x82d0,
|
||
'旋': 0x82d1,
|
||
'回': 0x82d2,
|
||
'当': 0x82d3,
|
||
'方': 0x82d4,
|
||
'持': 0x82d5,
|
||
'狙': 0x82d6,
|
||
'撃': 0x82d7,
|
||
'落': 0x82d8,
|
||
'倒': 0x82d9,
|
||
'行': 0x82da,
|
||
'彼': 0x82db,
|
||
'女': 0x82dc,
|
||
'手': 0x82dd,
|
||
'避': 0x82de,
|
||
'激': 0x82df,
|
||
'銃': 0x82e0,
|
||
'覚': 0x82e1,
|
||
'悟': 0x82e2,
|
||
'戻': 0x82e3,
|
||
'我': 0x82e4,
|
||
'派': 0x82e5,
|
||
'既': 0x82e6,
|
||
'待': 0x82e7,
|
||
'忘': 0x82e8,
|
||
'管': 0x82e9,
|
||
'理': 0x82ea,
|
||
'照': 0x82eb,
|
||
'明': 0x82ec,
|
||
'攻': 0x82ed,
|
||
'受': 0x82ee,
|
||
'余': 0x82ef,
|
||
'計': 0x82f0,
|
||
'失': 0x82f1,
|
||
'敗': 0x82f2,
|
||
'完': 0x82f3,
|
||
'了': 0x82f4,
|
||
'告': 0x82f5,
|
||
'入': 0x82f6,
|
||
'嬢': 0x82f7,
|
||
'除': 0x82f8,
|
||
'使': 0x82f9,
|
||
'貸': 0x82fa,
|
||
'絶': 0x82fb,
|
||
'対': 0x82fc,
|
||
'間': 0x82fd,
|
||
'違': 0x82fe,
|
||
'速': 0x82ff,
|
||
'遅': 0x8380,
|
||
'遂': 0x8381,
|
||
'欠': 0x8382,
|
||
'要': 0x8383,
|
||
'素': 0x8384,
|
||
'全': 0x8385,
|
||
'向': 0x8386,
|
||
'必': 0x8387,
|
||
'用': 0x8388,
|
||
'逃': 0x8389,
|
||
'場': 0x838a,
|
||
'以': 0x838b,
|
||
'早': 0x838c,
|
||
'急': 0x838d,
|
||
'備': 0x838e,
|
||
'兵': 0x838f,
|
||
'来': 0x8390,
|
||
'消': 0x8391,
|
||
'灯': 0x8392,
|
||
'時': 0x8393,
|
||
'私': 0x8394,
|
||
'今': 0x8395,
|
||
'返': 0x8396,
|
||
'自': 0x8397,
|
||
'分': 0x8398,
|
||
'働': 0x8399,
|
||
'悪': 0x839a,
|
||
'取': 0x839b,
|
||
'画': 0x839c,
|
||
'前': 0x839d,
|
||
'誰': 0x839e,
|
||
'話': 0x839f,
|
||
'後': 0x83a0,
|
||
'映': 0x83a1,
|
||
'像': 0x83a2,
|
||
'才': 0x83a3,
|
||
'信': 0x83a4,
|
||
'得': 0x83a5,
|
||
'経': 0x83a6,
|
||
'験': 0x83a7,
|
||
'生': 0x83a8,
|
||
'組': 0x83a9,
|
||
'並': 0x83aa,
|
||
'程': 0x83ab,
|
||
'度': 0x83ac,
|
||
'油': 0x83ad,
|
||
'断': 0x83ae,
|
||
'禁': 0x83af,
|
||
'物': 0x83b0,
|
||
'成': 0x83b1,
|
||
'績': 0x83b2,
|
||
'相': 0x83b3,
|
||
'意': 0x83b4,
|
||
'気': 0x83b5,
|
||
'政': 0x83b6,
|
||
'府': 0x83b7,
|
||
'非': 0x83b8,
|
||
'常': 0x83b9,
|
||
'強': 0x83ba,
|
||
'恐': 0x83bb,
|
||
'無': 0x83bc,
|
||
'決': 0x83bd,
|
||
'勝': 0x83be,
|
||
'努': 0x83bf,
|
||
'末': 0x83c0,
|
||
'飛': 0x83c1,
|
||
'機': 0x83c2,
|
||
'空': 0x83c3,
|
||
'衝': 0x83c4,
|
||
'突': 0x83c5,
|
||
'大': 0x83c6,
|
||
'統': 0x83c7,
|
||
'領': 0x83c8,
|
||
'電': 0x83c9,
|
||
'波': 0x83ca,
|
||
'助': 0x83cb,
|
||
'墜': 0x83cc,
|
||
'現': 0x83cd,
|
||
'点': 0x83ce,
|
||
'通': 0x83cf,
|
||
'段': 0x83d0,
|
||
'的': 0x83d1,
|
||
'源': 0x83d2,
|
||
'安': 0x83d3,
|
||
'重': 0x83d4,
|
||
'収': 0x83d5,
|
||
'健': 0x83d6,
|
||
'康': 0x83d7,
|
||
'状': 0x83d8,
|
||
'態': 0x83d9,
|
||
'号': 0x83da,
|
||
'作': 0x83db,
|
||
'効': 0x83dc,
|
||
'果': 0x83dd,
|
||
'高': 0x83de,
|
||
'性': 0x83df,
|
||
'流': 0x83e0,
|
||
'有': 0x83e1,
|
||
'利': 0x83e2,
|
||
'次': 0x83e3,
|
||
'第': 0x83e4,
|
||
'直': 0x83e5,
|
||
'居': 0x83e6,
|
||
'所': 0x83e7,
|
||
'排': 0x83e8,
|
||
'命': 0x83e9,
|
||
'反': 0x83ea,
|
||
'応': 0x83eb,
|
||
'辺': 0x83ec,
|
||
'偽': 0x83ed,
|
||
'者': 0x83ee,
|
||
'脅': 0x83ef,
|
||
'威': 0x83f0,
|
||
'援': 0x83f1,
|
||
'到': 0x83f2,
|
||
'着': 0x83f3,
|
||
'危': 0x83f4,
|
||
'険': 0x83f5,
|
||
'去': 0x83f6,
|
||
'護': 0x83f7,
|
||
'衛': 0x83f8,
|
||
'船': 0x83f9,
|
||
'面': 0x83fa,
|
||
'役': 0x83fb,
|
||
'立': 0x83fc,
|
||
'答': 0x83fd,
|
||
'聞': 0x83fe,
|
||
'別': 0x83ff,
|
||
'探': 0x8480,
|
||
'事': 0x8481,
|
||
'調': 0x8482,
|
||
'子': 0x8483,
|
||
'復': 0x8484,
|
||
'野': 0x8485,
|
||
'心': 0x8486,
|
||
'家': 0x8487,
|
||
'教': 0x8488,
|
||
'深': 0x8489,
|
||
'海': 0x848a,
|
||
'査': 0x848b,
|
||
'艇': 0x848c,
|
||
'潜': 0x848d,
|
||
'水': 0x848e,
|
||
'業': 0x848f,
|
||
'世': 0x8490,
|
||
'界': 0x8491,
|
||
'唯': 0x8492,
|
||
'社': 0x8493,
|
||
'与': 0x8494,
|
||
'圧': 0x8495,
|
||
'切': 0x8496,
|
||
'目': 0x8497,
|
||
'山': 0x8498,
|
||
'金': 0x8499,
|
||
'髪': 0x849a,
|
||
'服': 0x849b,
|
||
'男': 0x849c,
|
||
'国': 0x849d,
|
||
'防': 0x849e,
|
||
'省': 0x849f,
|
||
'司': 0x84a0,
|
||
'令': 0x84a1,
|
||
'官': 0x84a2,
|
||
'訪': 0x84a3,
|
||
'問': 0x84a4,
|
||
'準': 0x84a5,
|
||
'軍': 0x84a6,
|
||
'基': 0x84a7,
|
||
'移': 0x84a8,
|
||
'穏': 0x84a9,
|
||
'思': 0x84aa,
|
||
'阻': 0x84ab,
|
||
'止': 0x84ac,
|
||
'特': 0x84ad,
|
||
'注': 0x84ae,
|
||
'望': 0x84af,
|
||
'係': 0x84b0,
|
||
'人': 0x84b1,
|
||
'側': 0x84b2,
|
||
'味': 0x84b3,
|
||
'標': 0x84b4,
|
||
'長': 0x84b5,
|
||
'功': 0x84b6,
|
||
'本': 0x84b7,
|
||
'日': 0x84b8,
|
||
'専': 0x84b9,
|
||
'眠': 0x84ba,
|
||
'品': 0x84bb,
|
||
'積': 0x84bc,
|
||
'器': 0x84bd,
|
||
'怪': 0x84be,
|
||
'荷': 0x84bf,
|
||
'載': 0x84c0,
|
||
'納': 0x84c1,
|
||
'検': 0x84c2,
|
||
'策': 0x84c3,
|
||
'預': 0x84c4,
|
||
'知': 0x84c5,
|
||
'予': 0x84c6,
|
||
'定': 0x84c7,
|
||
'航': 0x84c8,
|
||
'図': 0x84c9,
|
||
'庫': 0x84ca,
|
||
'搭': 0x84cb,
|
||
'離': 0x84cc,
|
||
'陸': 0x84cd,
|
||
'合': 0x84ce,
|
||
'法': 0x84cf,
|
||
'考': 0x84d0,
|
||
'侵': 0x84d1,
|
||
'民': 0x84d2,
|
||
'丈': 0x84d3,
|
||
'夫': 0x84d4,
|
||
'呼': 0x84d5,
|
||
'存': 0x84d6,
|
||
'開': 0x84d7,
|
||
'始': 0x84d8,
|
||
'新': 0x84d9,
|
||
'拒': 0x84da,
|
||
'否': 0x84db,
|
||
'多': 0x84dc,
|
||
'犠': 0x84dd,
|
||
'牲': 0x84de,
|
||
'奪': 0x84df,
|
||
'小': 0x84e0,
|
||
'偵': 0x84e1,
|
||
'察': 0x84e2,
|
||
'連': 0x84e3,
|
||
'伝': 0x84e4,
|
||
'加': 0x84e5,
|
||
'担': 0x84e6,
|
||
'裏': 0x84e7,
|
||
'証': 0x84e8,
|
||
'拠': 0x84e9,
|
||
'誘': 0x84ea,
|
||
'拐': 0x84eb,
|
||
'情': 0x84ec,
|
||
'報': 0x84ed,
|
||
'推': 0x84ee,
|
||
'測': 0x84ef,
|
||
'停': 0x84f0,
|
||
'暴': 0x84f1,
|
||
'挙': 0x84f2,
|
||
'母': 0x84f3,
|
||
'太': 0x84f4,
|
||
'平': 0x84f5,
|
||
'洋': 0x84f6,
|
||
'同': 0x84f7,
|
||
'底': 0x84f8,
|
||
'限': 0x84f9,
|
||
'広': 0x84fa,
|
||
'範': 0x84fb,
|
||
'渡': 0x84fc,
|
||
'被': 0x84fd,
|
||
'稼': 0x84fe,
|
||
'研': 0x84ff,
|
||
'究': 0x8580,
|
||
'室': 0x8581,
|
||
'占': 0x8582,
|
||
'集': 0x8583,
|
||
'実': 0x8584,
|
||
'科': 0x8585,
|
||
'学': 0x8586,
|
||
'技': 0x8587,
|
||
'術': 0x8588,
|
||
'操': 0x8589,
|
||
'縦': 0x858a,
|
||
'片': 0x858b,
|
||
'遠': 0x858c,
|
||
'隔': 0x858d,
|
||
'格': 0x858e,
|
||
'璧': 0x858f,
|
||
'閉': 0x8590,
|
||
'殺': 0x8591,
|
||
'引': 0x8592,
|
||
'央': 0x8593,
|
||
'様': 0x8594,
|
||
'記': 0x8595,
|
||
'録': 0x8596,
|
||
'車': 0x8597,
|
||
'張': 0x8598,
|
||
'道': 0x8599,
|
||
'陰': 0x859a,
|
||
'謀': 0x859b,
|
||
'絡': 0x859c,
|
||
'暗': 0x859d,
|
||
'読': 0x859e,
|
||
'総': 0x859f,
|
||
'正': 0x85a0,
|
||
'複': 0x85a1,
|
||
'雑': 0x85a2,
|
||
'爆': 0x85a3,
|
||
'弾': 0x85a4,
|
||
'率': 0x85a5,
|
||
'化': 0x85a6,
|
||
'想': 0x85a7,
|
||
'難': 0x85a8,
|
||
'許': 0x85a9,
|
||
'過': 0x85aa,
|
||
'少': 0x85ab,
|
||
'評': 0x85ac,
|
||
'価': 0x85ad,
|
||
'奥': 0x85ae,
|
||
'細': 0x85af,
|
||
'胞': 0x85b0,
|
||
'済': 0x85b1,
|
||
'線': 0x85b2,
|
||
'転': 0x85b3,
|
||
'米': 0x85b4,
|
||
'秘': 0x85b5,
|
||
'密': 0x85b6,
|
||
'射': 0x85b7,
|
||
'迎': 0x85b8,
|
||
'残': 0x85b9,
|
||
'骸': 0x85ba,
|
||
'頼': 0x85bb,
|
||
'名': 0x85bc,
|
||
'夜': 0x85bd,
|
||
'欲': 0x85be,
|
||
'請': 0x85bf,
|
||
'疑': 0x85c0,
|
||
'感': 0x85c1,
|
||
'抗': 0x85c2,
|
||
'議': 0x85c3,
|
||
'監': 0x85c4,
|
||
'磁': 0x85c5,
|
||
'十': 0x85c6,
|
||
'放': 0x85c7,
|
||
'位': 0x85c8,
|
||
'改': 0x85c9,
|
||
'造': 0x85ca,
|
||
'掃': 0x85cb,
|
||
'棟': 0x85cc,
|
||
'帰': 0x85cd,
|
||
'械': 0x85ce,
|
||
'音': 0x85cf,
|
||
'端': 0x85d0,
|
||
'接': 0x85d1,
|
||
'抜': 0x85d2,
|
||
'倉': 0x85d3,
|
||
'仕': 0x85d4,
|
||
'貴': 0x85d5,
|
||
'荘': 0x85d6,
|
||
'滞': 0x85d7,
|
||
'在': 0x85d8,
|
||
'襲': 0x85d9,
|
||
'質': 0x85da,
|
||
'捕': 0x85db,
|
||
'届': 0x85dc,
|
||
'惜': 0x85dd,
|
||
'隠': 0x85de,
|
||
'屋': 0x85df,
|
||
'根': 0x85e0,
|
||
'迫': 0x85e1,
|
||
'風': 0x85e2,
|
||
'主': 0x85e3,
|
||
'試': 0x85e4,
|
||
'容': 0x85e5,
|
||
'易': 0x85e6,
|
||
'為': 0x85e7,
|
||
'損': 0x85e8,
|
||
'降': 0x85e9,
|
||
'伏': 0x85ea,
|
||
'吐': 0x85eb,
|
||
'交': 0x85ec,
|
||
'渉': 0x85ed,
|
||
'冷': 0x85ee,
|
||
'却': 0x85ef,
|
||
'供': 0x85f0,
|
||
'給': 0x85f1,
|
||
'昨': 0x85f2,
|
||
'換': 0x85f3,
|
||
'求': 0x85f4,
|
||
'念': 0x85f5,
|
||
'緒': 0x85f6,
|
||
'責': 0x85f7,
|
||
'際': 0x85f8,
|
||
'然': 0x85f9,
|
||
'題': 0x85fa,
|
||
'説': 0x85fb,
|
||
'登': 0x85fc,
|
||
'士': 0x85fd,
|
||
'弱': 0x85fe,
|
||
'陣': 0x85ff,
|
||
'遺': 0x8680,
|
||
'跡': 0x8681,
|
||
'寺': 0x8682,
|
||
'院': 0x8683,
|
||
'系': 0x8684,
|
||
'神': 0x8685,
|
||
'殿': 0x8686,
|
||
'施': 0x8687,
|
||
'設': 0x8688,
|
||
'闇': 0x8689,
|
||
'初': 0x868a,
|
||
'犯': 0x868b,
|
||
'揮': 0x868c,
|
||
'雷': 0x868d,
|
||
'歩': 0x868e,
|
||
'席': 0x868f,
|
||
'緊': 0x8690,
|
||
'年': 0x8691,
|
||
'月': 0x8692,
|
||
'娘': 0x8693,
|
||
'良': 0x8694,
|
||
'悔': 0x8695,
|
||
'減': 0x8696,
|
||
'示': 0x8697,
|
||
'他': 0x8698,
|
||
'亡': 0x8699,
|
||
'述': 0x869a,
|
||
'極': 0x869b,
|
||
'低': 0x869c,
|
||
'温': 0x869d,
|
||
'剖': 0x869e,
|
||
'凍': 0x869f,
|
||
'医': 0x86a0,
|
||
'故': 0x86a1,
|
||
'処': 0x86a2,
|
||
'繰': 0x86a3,
|
||
'昇': 0x86a4,
|
||
'還': 0x86a5,
|
||
'異': 0x86a6,
|
||
'壁': 0x86a7,
|
||
'薬': 0x86a8,
|
||
'静': 0x86a9,
|
||
'恵': 0x86aa,
|
||
'葉': 0x86ab,
|
||
'超': 0x86ac,
|
||
'盗': 0x86ad,
|
||
'聴': 0x86ae,
|
||
'困': 0x86af,
|
||
'投': 0x86b0,
|
||
'好': 0x86b1,
|
||
'識': 0x86b2,
|
||
'終': 0x86b3,
|
||
'判': 0x86b4,
|
||
'未': 0x86b5,
|
||
'和': 0x86b6,
|
||
'御': 0x86b7,
|
||
'軟': 0x86b8,
|
||
'執': 0x86b9,
|
||
'王': 0x86ba,
|
||
'苦': 0x86bb,
|
||
'労': 0x86bc,
|
||
'党': 0x86bd,
|
||
'短': 0x86be,
|
||
'個': 0x86bf,
|
||
'角': 0x86c0,
|
||
'曲': 0x86c1,
|
||
'選': 0x86c2,
|
||
'択': 0x86c3,
|
||
'追': 0x86c4,
|
||
'元': 0x86c5,
|
||
'鉱': 0x86c6,
|
||
'数': 0x86c7,
|
||
'頭': 0x86c8,
|
||
'距': 0x86c9,
|
||
'獲': 0x86ca,
|
||
'賞': 0x86cb,
|
||
'打': 0x86cc,
|
||
'称': 0x86cd,
|
||
'況': 0x86ce,
|
||
'罪': 0x86cf,
|
||
'書': 0x86d0,
|
||
'視': 0x86d1,
|
||
'逆': 0x86d2,
|
||
'表': 0x86d3,
|
||
'替': 0x86d4,
|
||
'両': 0x86d5,
|
||
'齢': 0x86d6,
|
||
'種': 0x86d7,
|
||
'族': 0x86d8,
|
||
'結': 0x86d9,
|
||
'足': 0x86da,
|
||
'秒': 0x86db,
|
||
'黄': 0x86dc,
|
||
'修': 0x86dd,
|
||
'恥': 0x86de,
|
||
'字': 0x86df,
|
||
'幕': 0x86e0,
|
||
'割': 0x86e1,
|
||
'棄': 0x86e2,
|
||
'押': 0x86e3,
|
||
'球': 0x86e4,
|
||
'提': 0x86e5,
|
||
'拡': 0x86e6,
|
||
'索': 0x86e7,
|
||
'撮': 0x86e8,
|
||
'露': 0x86e9,
|
||
'宇': 0x86ea,
|
||
'宙': 0x86eb,
|
||
'横': 0x86ec,
|
||
'須': 0x86ed,
|
||
'辞': 0x86ee,
|
||
'退': 0x86ef,
|
||
'胴': 0x86f0,
|
||
'序': 0x86f1,
|
||
'火': 0x86f2,
|
||
'雪': 0x86f3,
|
||
'塞': 0x86f4,
|
||
'焼': 0x86f5,
|
||
'原': 0x86f6,
|
||
'滅': 0x86f7,
|
||
'星': 0x86f8,
|
||
'嵐': 0x86f9,
|
||
'巨': 0x86fa,
|
||
'析': 0x86fb,
|
||
'建': 0x86fc,
|
||
'昔': 0x86fd,
|
||
'核': 0x86fe,
|
||
'形': 0x86ff,
|
||
'論': 0x8780,
|
||
'街': 0x8781,
|
||
'般': 0x8782,
|
||
'市': 0x8783,
|
||
'訓': 0x8784,
|
||
'練': 0x8785,
|
||
'満': 0x8786,
|
||
'陽': 0x8787,
|
||
'互': 0x8788,
|
||
'単': 0x8789,
|
||
'仮': 0x878a,
|
||
'鎮': 0x878b,
|
||
'剤': 0x878c,
|
||
'矢': 0x878d,
|
||
'例': 0x878e,
|
||
'丸': 0x878f,
|
||
'詳': 0x8790,
|
||
'案': 0x8791,
|
||
'産': 0x8792,
|
||
'件': 0x8793,
|
||
'惑': 0x8794,
|
||
'適': 0x8795,
|
||
'療': 0x8796,
|
||
'匹': 0x8797,
|
||
'培': 0x8798,
|
||
'養': 0x8799,
|
||
'環': 0x879a,
|
||
'境': 0x879b,
|
||
'資': 0x879c,
|
||
'染': 0x879d,
|
||
'製': 0x879e,
|
||
'倍': 0x879f,
|
||
'美': 0x87a0,
|
||
'維': 0x87a1,
|
||
'刃': 0x87a2,
|
||
'指': 0x87a3,
|
||
'普': 0x87a4,
|
||
'均': 0x87a5,
|
||
'刺': 0x87a6,
|
||
'透': 0x87a7,
|
||
'型': 0x87a8,
|
||
'便': 0x87a9,
|
||
'量': 0x87aa,
|
||
'走': 0x87ab,
|
||
'光': 0x87ac,
|
||
'悲': 0x87ad,
|
||
'貫': 0x87ae,
|
||
'振': 0x87af,
|
||
'差': 0x87b0,
|
||
'影': 0x87b1,
|
||
'姿': 0x87b2,
|
||
'由': 0x87b3,
|
||
'各': 0x87b4,
|
||
'版': 0x87b5,
|
||
'式': 0x87b6,
|
||
'砂': 0x87b7,
|
||
'尖': 0x87b8,
|
||
'塔': 0x87b9,
|
||
'聖': 0x87ba,
|
||
'谷': 0x87bb,
|
||
'怒': 0x87bc,
|
||
'扱': 0x87bd,
|
||
'権': 0x87be,
|
||
'白': 0x87bf,
|
||
'類': 0x87c0,
|
||
'沈': 0x87c1,
|
||
'争': 0x87c2,
|
||
'活': 0x87c3,
|
||
'仲': 0x87c4,
|
||
'熱': 0x87c5,
|
||
'都': 0x87c6,
|
||
'古': 0x87c7,
|
||
'代': 0x87c8,
|
||
'赤': 0x87c9,
|
||
'黒': 0x87ca,
|
||
'上': 0x87cb,
|
||
'下': 0x87cc,
|
||
'左': 0x87cd,
|
||
'右': 0x87ce,
|
||
}
|
||
|
||
main()
|