summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-09-17 03:01:17 +0000
committerNorbert Preining <norbert@preining.info>2023-09-17 03:01:17 +0000
commite30e1de3ed00a127608d88a118c0b3f0b59a9dca (patch)
treeff5560fb792a24fce0c88a5c1b1ce56082f6c765 /macros
parent659df224f4771e4390206a6663bcb78808d99767 (diff)
CTAN sync 202309170301
Diffstat (limited to 'macros')
-rw-r--r--macros/jptex/generic/uptex-base/00readme_uptex.txt2
-rw-r--r--macros/jptex/generic/uptex-base/01uptex_doc_utf8.txt11
-rw-r--r--macros/jptex/generic/uptex-base/02uptex_changelog_utf8.txt30
-rw-r--r--macros/jptex/generic/uptex-base/README.md2
-rw-r--r--macros/jptex/generic/uptex-base/samples/adobe-gb-utf8.tex638
-rw-r--r--macros/jptex/generic/uptex-base/samples/show_kcat.tex1
-rw-r--r--macros/luatex/latex/truthtable/README.md8
-rw-r--r--macros/luatex/latex/truthtable/truthtable.pdfbin145325 -> 149735 bytes
-rw-r--r--macros/luatex/latex/truthtable/truthtable.sty39
-rw-r--r--macros/luatex/latex/truthtable/truthtable.tex139
10 files changed, 480 insertions, 390 deletions
diff --git a/macros/jptex/generic/uptex-base/00readme_uptex.txt b/macros/jptex/generic/uptex-base/00readme_uptex.txt
index beb872e21a..2ebf58d0e8 100644
--- a/macros/jptex/generic/uptex-base/00readme_uptex.txt
+++ b/macros/jptex/generic/uptex-base/00readme_uptex.txt
@@ -1,5 +1,5 @@
upTeX, upLaTeX --- unicode version of ASCII pTeX, pLaTeX
-2023.01.12 Ver1.29
+2023.09.16 Ver1.30
TANAKA, Takuji ttk(at)t-lab(dot)opal(dot)ne(dot)jp
[ Contents ]
diff --git a/macros/jptex/generic/uptex-base/01uptex_doc_utf8.txt b/macros/jptex/generic/uptex-base/01uptex_doc_utf8.txt
index 71698bd269..d5cd9f1681 100644
--- a/macros/jptex/generic/uptex-base/01uptex_doc_utf8.txt
+++ b/macros/jptex/generic/uptex-base/01uptex_doc_utf8.txt
@@ -1,5 +1,5 @@
upTeX, upLaTeX --- 内部unicode版 pTeX, pLaTeX の実装
-2023.01.12 Ver1.29
+2023.09.16 Ver1.30
TANAKA, Takuji ttk(at)t-lab(dot)opal(dot)ne(dot)jp
◇ upTeX開発のねらい
@@ -456,9 +456,10 @@ kcatcodeは原則としてUnicodeのblock毎に与えられる。
(0x13D) 0x2B740..0x2B81F <16> CJK Unified Ideographs Extension D
(0x13E) 0x2B820..0x2CEAF <16> CJK Unified Ideographs Extension E
(0x13F) 0x2CEB0..0x2F7FF <16> CJK Unified Ideographs Extension F
- (0x140) 0x2F800..0x2FFFF <16> CJK Compatibility Ideographs Supplement
- (0x141) 0x30000..0x3134F <16> CJK Unified Ideographs Extension G
- (0x142) 0x31350..0x323AF <16> CJK Unified Ideographs Extension H
+ (0x140) 0x2EBF0..0x2EE5F <16> CJK Unified Ideographs Extension I
+ (0x141) 0x2F800..0x2FFFF <16> CJK Compatibility Ideographs Supplement
+ (0x142) 0x30000..0x3134F <16> CJK Unified Ideographs Extension G
+ (0x143) 0x31350..0x323AF <16> CJK Unified Ideographs Extension H
(上記の文字の範囲は実装に基づいており、Blocks.txtに記述されている範囲より広い場合がある)
○Unicode blockの例外
(0x1FD) 0xAA, 0xBA, 0xC0..0xD6, 0xD8..0xF6, 0xF8..0xFF <15> Latin-1 Letters
@@ -578,7 +579,7 @@ dvips TeX Live 2010 に取り込まれた。
dvipdfmx TeX Live svn に r24509 あたりで取り込まれた。
set3も含めて動いている。
ただし、set3で、「内部コードがUTF-32, CMapがUniXXX-UTF16」であること
- を仮定したハードコーディングになっているおり、柔軟性は乏しい。
+ を仮定したハードコーディングになっており、柔軟性は乏しい。
bookmark 作成は UTF8-UCS2, UTF8-UTF16 の CMap または、
convbkmk.rbの-oオプションを必要とする。
dvi2tty TeX Live svn に r24634 あたりで取り込まれた。
diff --git a/macros/jptex/generic/uptex-base/02uptex_changelog_utf8.txt b/macros/jptex/generic/uptex-base/02uptex_changelog_utf8.txt
index 32129136d5..3751fd9861 100644
--- a/macros/jptex/generic/uptex-base/02uptex_changelog_utf8.txt
+++ b/macros/jptex/generic/uptex-base/02uptex_changelog_utf8.txt
@@ -1,5 +1,35 @@
### ChangeLog / 変更履歴
+2023.09.16 Ver1.30-20230916a
+ TeXLive svn r68294 base
+ Build/source/texk/web2c/uptexdir:
+ * uptex-m.ch, uptex_version.h:
+ Bump upTeX version.
+ * uptexextra.h:
+ Add AUTHOR "Japanese TeX Development Community"
+ * uptex-m.ch, kanji.c:
+ Update reference of Unicode blocks to
+ "Blocks-15.1.0.txt Date: 2023-07-28, 15:47:20 GMT".
+ * uptex-m.ch:
+ Proper support for \kchar in math mode.
+ from Hironobu Yamashita san
+ https://github.com/texjporg/tex-jp-build/pull/159
+ * kanji.c: Check character code range < 2^24.
+ from Hironobu Yamashita san
+ https://github.com/texjporg/tex-jp-build/issues/160
+ * COPYRIGHT, COPYRIGHT.ja:
+ Update copyright year.
+ * upkcat.test, uptriptest.test, upver.test,
+ tests/kcat.tex, tests/upkcat.txt:
+ Update tests.
+ * gkhuge.test, newjfm.test, uparse.test,
+ tests/gkhuge*, tests/testnewu*, tests/unibib*, tests/uparse*:
+ Remove tests which are not related to the upTeX engine.
+ samples:
+ Update.
+ 00readme_uptex.txt, 01uptex_doc_utf8.txt:
+ Update.
+
2023.02.12 Ver1.29-20230212a
samples:
Update.
diff --git a/macros/jptex/generic/uptex-base/README.md b/macros/jptex/generic/uptex-base/README.md
index be31e44854..e35189c639 100644
--- a/macros/jptex/generic/uptex-base/README.md
+++ b/macros/jptex/generic/uptex-base/README.md
@@ -17,6 +17,6 @@ the 3-clause BSD license (see [LICENSE](./LICENSE)).
## Release Date
-2023-02-12
+2023-09-16
Japanese TeX Development Community
diff --git a/macros/jptex/generic/uptex-base/samples/adobe-gb-utf8.tex b/macros/jptex/generic/uptex-base/samples/adobe-gb-utf8.tex
index 9e2a274b41..d21915d21b 100644
--- a/macros/jptex/generic/uptex-base/samples/adobe-gb-utf8.tex
+++ b/macros/jptex/generic/uptex-base/samples/adobe-gb-utf8.tex
@@ -1,11 +1,11 @@
%
% This file is generated from the data of UniGB-UTF32
-% in cid2code.txt (Version 12/05/2017)
-% for Adobe-GB1-5
+% in cid2code.txt (Version 04/20/2023)
+% for Adobe-GB1-6
%
% Reference:
% https://github.com/adobe-type-tools/cmap-resources/
-% Adobe-GB1-5/cid2code.txt
+% Adobe-GB1-6/cid2code.txt
%
% A newer CMap may be required for some code points.
%
@@ -20,314 +20,314 @@
Adobe-GB1-0
-  、。·•・ˉˇ¨〃々—~‖…⋯‘’“”〔〕〈〈
-〉〉《》「」『』〖〗【】±×÷∶∧∨∑∏∪∩∈∷√
-⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″
-℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓
-⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛⑴⑵⑶⑷⑸
-⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇①②③④⑤⑥⑦⑧⑨⑩
-㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ!"#
-¥%&'()*+,-./0123456789:;<
-=>?@ABCDEFGHIJKLMNOPQRSTU
-VWXYZ[\]^_`abcdefghijklmn
-opqrstuvwxyz{|} ̄ぁあぃいぅうぇえぉ
-おかがきぎくぐけげこごさざしじすずせぜそぞただちぢ
-っつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほ
-ぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんァ
-アィイゥウェエォオカガキギクグケゲコゴサザシジスズ
-セゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビ
-ピフブプヘベペホボポマミムメモャヤュユョヨラリルレ
-ロヮワヰヱヲンヴヵヶΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟ
-ΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπ
-ρστυφχψω︐︒︑︓︔︕︖︵︶︹
-︺︿﹀︽︾﹁﹂﹃﹄︗︘︻︼︷︸︱⁝︙︳︴АБ
-ВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩ
-ЪЫЬЭЮЯабвгдеёжзийклмнопрс
-туфхцчшщъыьэюяāáǎàēéěèīíǐ
-ìōóǒòūúǔùǖǘǚǜüêɑḿńňǹɡㄅㄆ
-ㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟ
-ㄠㄡㄢㄣㄤㄥㄦㄨㄩㄧ─━│┃┄┅┆┇┈┉┊┋┌┍┎
-┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧
-┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀
-╁╂╃╄╅╆╇╈╉╊╋啊阿埃挨哎唉哀皑癌蔼矮艾碍爱
-隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒
-叭吧笆⼋八疤巴拔跋靶把耙坝霸罢爸⽩白柏百摆佰败拜稗
-斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑
-傍谤苞胞包褒剥薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈
-背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼⿐鼻⽐比鄙
-笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁
-便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙
-秉饼炳病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕
-⼘卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参
-蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬
-茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖场尝
-常长偿肠⼚厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈
-郴⾂臣⾠辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞
-骋秤吃痴持匙池迟弛驰耻齿侈尺⾚赤翅斥炽充冲⾍虫崇宠
-抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚础储矗
-搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇
-唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑
-粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存⼨寸磋撮搓措挫错
-搭达答瘩打⼤大呆⽍歹傣戴带殆代贷袋待逮怠耽担丹单郸
-掸胆旦氮但惮淡诞弹蛋当挡党荡档⼑刀捣蹈倒岛祷导到稻
-悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底
-地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼
-雕凋刁掉吊钓调跌爹碟蝶迭谍叠丁盯叮钉顶⿍鼎锭定订丢
-东冬董懂动栋侗恫冻洞兜抖⽃斗陡⾖豆逗痘都督毒犊独读
-堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤
-钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼
-遏鄂饿恩⽽而⼉儿⽿耳尔饵洱⼆二贰发罚筏伐乏阀法珐藩
-帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳⽅方肪房防妨仿
-访纺放菲⾮非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾
-粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷
-肤孵扶拂辐幅氟符伏俘服浮涪福袱弗甫抚辅俯釜斧脯腑府
-腐赴副覆赋复傅付⾩阜⽗父腹负富讣附妇缚咐噶嘎该改概
-钙盖溉⼲干⽢甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠
-篙皋⾼高膏羔糕搞镐稿告哥歌搁⼽戈鸽胳疙割⾰革葛格蛤
-阁隔铬个各给根跟耕更庚羹埂耿梗⼯工攻功恭龚供躬公宫
-⼸弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑⿎
-鼓古蛊⾻骨⾕谷股故顾固雇刮⽠瓜剐寡挂褂乖拐怪棺关官
-冠观管馆罐惯灌贯光⼴广逛瑰规圭硅归龟闺轨⿁鬼诡癸桂
-柜跪贵刽辊滚棍锅郭国果裹过哈骸孩海氦亥害骇酣憨邯韩
-含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗
-号浩呵喝荷菏核⽲禾和何合盒貉阂河涸赫褐鹤贺嘿⿊黑痕
-很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼
-乎忽瑚壶葫胡蝴狐糊湖弧虎唬护互沪户花哗华猾滑画划化
-话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗
-簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会
-烩汇讳诲绘荤昏婚魂浑混豁活伙⽕火获或惑霍货祸击圾基
-机畸稽积箕肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即
-嫉级挤⼏几脊⼰己蓟技冀季伎祭剂悸济寄寂计记既忌际妓
-继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间
-煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭
-件健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁
-焦胶交郊浇骄娇嚼搅铰矫侥脚狡⾓角饺缴绞剿教酵轿较叫
-窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介
-疥诫届⼱巾筋⽄斤⾦金今津襟紧锦仅谨进靳晋禁近烬浸尽
-劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞
-净炯窘揪究纠玖⾲韭久灸九酒厩救旧⾅臼舅咎就疚鞠拘狙
-疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟
-倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻俊竣浚郡骏
-喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤
-靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔
-控抠⼝口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡
-筐狂框矿眶旷况亏盔岿窥葵奎魁傀馈愧溃坤昆捆困括扩廓
-阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂
-滥琅榔狼廊郎朗浪捞劳牢⽼老佬姥酪烙涝勒乐雷镭蕾磊累
-儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李⾥里鲤礼莉荔
-吏栗丽厉励砾历利傈例俐痢⽴立粒沥⾪隶⼒力璃哩俩联莲
-连镰廉怜涟帘敛脸链恋炼练粮凉凉梁粱良两辆量晾亮谅撩
-聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋
-凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘
-瘤流柳六龙聋咙笼窿隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳
-卤虏鲁麓碌露路赂⿅鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯
-律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩
-骡裸落洛骆络妈⿇麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮
-满蔓曼慢漫谩芒茫盲氓忙莽猫茅锚⽑毛⽭矛铆卯茂冒帽貌
-贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟
-锰猛梦孟眯醚靡糜迷谜弥⽶米秘觅泌蜜密幂棉眠绵冕免勉
-娩缅⾯面苗描瞄藐秒渺庙妙蔑灭民抿⽫皿敏悯闽明螟鸣铭
-名命谬摸摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡
-亩姆母墓暮幕募慕⽊木⽬目睦牧穆拿哪呐钠那娜纳氖乃奶
-耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻
-逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁
-拧泞⽜牛扭钮纽脓浓农弄奴努怒⼥女暖虐疟挪懦糯诺哦欧
-鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判
-叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰
-抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗啤脾疲⽪
-皮匹痞僻屁譬篇偏⽚片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹
-萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃
-普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈
-祁骑起岂乞企启契砌器⽓气迄弃汽泣讫掐恰洽牵扦钎铅千
-迁签仟谦乾黔钱钳前潜遣浅谴堑嵌⽋欠歉枪呛腔羌墙蔷强
-抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦
-琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱
-球求囚酋泅趋区蛆曲躯屈驱渠取娶龋趣去圈颧权醛泉全痊
-拳⽝犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶
-扰绕惹热壬仁⼈人忍韧任认刃妊纫扔仍⽇日戎茸蓉荣融熔
-溶容绒冗揉柔⾁肉茹蠕儒孺如辱乳汝⼊入褥软阮蕊瑞锐闰
-润若弱撒洒萨腮鳃塞赛三叁伞散桑嗓丧搔骚扫嫂瑟⾊色涩
-森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉⼭山删煽衫闪陕擅赡
-膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢
-赊蛇⾆舌舍赦摄射慑涉社设砷申呻伸⾝身深娠绅神沈审婶
-甚肾慎渗声⽣生甥牲升绳省盛剩胜圣师失狮施湿诗⼫尸虱
-⼗十⽯石拾时什⾷食蚀实识史⽮矢使屎驶始式⽰示⼠士世
-柿事拭誓逝势是嗜噬适仕侍释饰⽒氏市恃室视试收⼿手⾸
-首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙
-署蜀⿉黍⿏鼠属术述树束戍竖墅庶数漱恕刷耍摔衰甩帅栓
-拴霜双爽谁⽔水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死
-肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速
-粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑
-梭唆缩琐索锁所塌他它她塔獭挞蹋踏胎苔抬台泰酞太态汰
-坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐
-糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢
-锑提题蹄啼体替嚏惕涕剃屉天添填⽥田甜恬舔腆挑条迢眺
-跳贴铁帖厅听烃汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒
-统痛偷投头透凸秃突图徒途涂屠⼟土吐兔湍团推颓腿蜕褪
-退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃⽡瓦袜歪外
-豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉⽹网往旺
-望忘妄威巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚
-味畏胃喂魏位渭谓尉慰卫瘟温蚊⽂文闻纹吻稳紊问嗡翁瓮
-挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋⽆无芜梧吾吴⽏毋武
-五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡
-牺稀息希悉膝⼣夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏
-细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲
-涎弦嫌显险现献县腺馅羡宪陷限线相厢镶⾹香箱襄湘乡翔
-祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓⼩小孝
-校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢
-屑薪芯锌欣⾟辛新忻⼼心信衅星腥猩惺兴刑型形邢⾏行醒
-幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘
-须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋⽞玄选癣眩绚
-靴薛学⽳穴雪⾎血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦
-鸭呀丫芽⽛牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延
-⾔言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央
-鸯秧杨扬佯疡⽺羊洋阳氧仰痒养样漾邀腰妖瑶摇尧遥窑谣
-姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液⼀一壹医
-揖铱依伊⾐衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已⼄乙矣以
-艺抑易⾢邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异
-翼翌绎茵荫因殷⾳音阴姻吟银淫寅饮尹引隐印英樱婴鹰应
-缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌
-永恿勇⽤用幽优悠忧尤由邮铀犹油游⾣酉有友右佑釉诱⼜
-又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱⾬雨与屿禹
-宇语⽻羽⽟玉域芋郁吁遇喻峪御愈欲狱育誉浴寓裕预豫驭
-鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院⽈曰约越跃
-钥岳粤⽉月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾
-宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥
-责择则泽贼怎增憎曾赠扎喳渣札轧铡闸眨栅榨咋乍炸诈摘
-斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰
-漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲
-蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣
-睁征狰争怔整拯正政帧症郑证芝枝⽀支吱蜘知肢脂汁之织
-职直植殖执值侄址指⽌止趾只旨纸志挚掷⾄至致置帜峙制
-智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众⾈舟周州洲
-诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐⽵竹烛煮拄瞩嘱
-主著柱助蛀贮铸筑住注祝驻抓⽖爪拽专砖转撰赚篆桩庄装
-妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨
-资姿滋淄孜紫仔籽滓⼦子⾃自渍字鬃棕踪宗综总纵邹⾛走
-奏揍租⾜足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作
-坐座亍丌兀兀丐廿卅丕亘丞⿀鬲孬噩⼁丨禺⼃丿⼔匕乇夭
-⽘爻卮氐囟胤馗毓睾鼗⼂丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣
-厥厮靥赝⼕匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯
-剽劂劁劐劓⼌冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫
-佞佧攸佚佝佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅
-俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻
-傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎⿕龠汆籴兮巽黉馘
-冁夔⼓勹匍訇匐凫夙兕⼇亠兖亳衮袤亵脔裒禀嬴蠃羸⼎冫
-冱冽冼凇⼍冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘
-诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖
-谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶⼙卩卺阝阢阡阱阪
-阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺邸
-邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆
-刍奂劢劬劭劾哿勐勖勰叟燮矍⼵廴⼐凵凼⾿鬯⼛厶弁畚巯
-坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭
-坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝堋堍埽
-埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗
-芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷
-苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴
-茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥荨茛荩荬荪荭荮莰荸
-莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋
-菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇
-蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴
-蒗蓥蓣蔌甍蔸蓰蔹蔟蔺蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤
-薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼⼶廾弈夼奁耷
-奕奚奘匏⼪尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱
-捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌
-搦搡摞撄摭撖摺撷撸撙撺擀擐擗擤擢攉攥攮⼷弋忒甙弑卟
-叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚
-咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪
-咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐
-唼唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔
-喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌
-嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓
-嚯囔⼞囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼帷幄幔幛
-幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤
-峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂
-嶙嶝豳嶷巅⼻彳彷徂徇徉後徕徙徜徨徭徵徼衢⼺彡犭犰犴
-犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺狻猗猓猡猊猞猝猕
-猢猹猥猬猸猱獐獍獗獠獬獯獾⾇舛夥飧夤⼡夂饣饧饨饩饪
-饫饬饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳
-赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦
-怛怏怍怩怫怊怿怡恸恹恻恺恂恪恽悖悚悭悝悃悒悌悛惬悻
-悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩
-闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬⽙爿
-戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠
-泖泺泫泮沱泓泯泾洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔
-洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫
-渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷
-滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼
-潺濑濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞⼧宀宄宕宓宥
-宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑
-逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋⼹彐彗
-彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻⼬屮妁妃妍妩妪妣妗
-姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧
-婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗
-嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒
-骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩纭纰纾绀绁绂绉
-绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋
-缌缏缑缒缗缙缜缛缟缡缢缣缤缥缦缧缪缫缬缭缯缰缱缲缳
-缵⼳幺畿⼮巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊
-珩珧珞玺珲琏琪瑛琦琥琨琰琮琬琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜
-璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘
-枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎
-柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷
-梓桫棂楮棼椟椠棹椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸
-椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭
-樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂
-殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄
-辇辋辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓⽁
-攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗
-晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇
-觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰搿擘耄
-毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰
-虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝
-胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩
-腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻臁膦欤欷欹歃歆歙飑
-飒飓飕飙飚⽎殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝
-炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠
-燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗
-祠祯祧祺禅禊禚禧禳忑忐怼恝恚恧恁恙恣悫愆愍慝憩憝懋
-懑戆肀⾀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥
-砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉
-磬磲礅磴礓礤礞礴龛⿋黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵
-眸睐睑睇睃睚睨睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈
-畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏
-钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钹钺钼钽钿
-铄铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨
-铪铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒锓锔
-锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅
-镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩镪
-镫镬镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔稹稷穑黏馥
-穰皈皎皓皙皤瓞瓠甬鸠鸢鸨鸩鸪鸫鸬鸲鸱鸶鸸鸷鸹鸺鸾鹁
-鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬鹱
-鹭鹳⽧疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫
-痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙瘛瘼瘢瘠癀瘭瘰瘿瘵癃
-瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩
-衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴
-褫褶襁襦襻⽦疋胥皲皴矜⽾耒耔耖耜耠耢耥耦耧耩耨耱耋
-耵聃聆聍聒聩聱覃顸颀颃颉颌颍颏颔颚颛颞颟颡颢颥颦⾌
-虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱
-蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻
-蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤
-蝙蝥螓螯螨蟒蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪
-蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼⽸缶罂罄罅舐竺竽笈笃笄笕笊笫笏
-筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐
-箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖
-簋簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾
-艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞
-粢粲粼粽糁糇糌糍糈糅糗糨⾉艮暨羿翎翕翥翡翦翩翮翳⽷
-糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤酢酡酰
-酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺⾗豕鹾趸
-跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉
-跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴
-躅躏躔躐躜躞⾘豸貂貊貅貘貔斛觖觞觚觜觥觫觯訾謦靓雩
-雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌黾鼋鼍⾫隹
-隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐
-鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲧鲨鲩鲫鲭鲮鲰鲱鲲鲳鲴
-鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙鳜
-鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋
-髌髑魅魃魇魉魈魍魑飨餍餮饕饔⾽髟髡髦髯髫髻髭髹鬈鬏
-鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯
-鼢鼬鼯鼹鼷鼽鼾齄〇©™ 
+ ­ 、。·•・ˉˇ¨〃々—~‖…⋯‘’“”〔〕〈
+〈〉〉《》「」『』〖〗【】±×÷∶∧∨∑∏∪∩∈∷
+√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′
+″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓
+〓⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛⑴⑵⑶⑷
+⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇①②③④⑤⑥⑦⑧⑨
+⑩㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ!"
+#¥%&'()*+,-./0123456789:;
+<=>?@ABCDEFGHIJKLMNOPQRST
+UVWXYZ[\]^_`abcdefghijklm
+nopqrstuvwxyz{|} ̄ぁあぃいぅうぇえ
+ぉおかがきぎくぐけげこごさざしじすずせぜそぞただち
+ぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺ
+ほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジス
+ズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒ
+ビピフブプヘベペホボポマミムメモャヤュユョヨラリル
+レロヮワヰヱヲンヴヵヶΑΒΓΔΕΖΗΘΙΚΛΜΝΞ
+ΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξο
+πρστυφχψω︐︒︑︓︔︕︖︵︶
+︹︺︿﹀︽︾﹁﹂﹃﹄︗︘︻︼︷︸︱⁝︙︳︴А
+БВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШ
+ЩЪЫЬЭЮЯабвгдеёжзийклмнопр
+стуфхцчшщъыьэюяāáǎàēéěèīí
+ǐìōóǒòūúǔùǖǘǚǜüêɑḿńňǹɡㄅ
+ㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞ
+ㄟㄠㄡㄢㄣㄤㄥㄦㄨㄩㄧ─━│┃┄┅┆┇┈┉┊┋┌┍
+┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦
+┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿
+╀╁╂╃╄╅╆╇╈╉╊╋啊阿埃挨哎唉哀皑癌蔼矮艾碍
+爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌
+扒叭吧笆⼋八疤巴拔跋靶把耙坝霸罢爸⽩白柏百摆佰败拜
+稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌
+镑傍谤苞胞包褒剥薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北
+辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼⿐鼻⽐比
+鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬
+扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄
+丙秉饼炳病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳
+捕⼘卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐
+参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉
+茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖场
+尝常长偿肠⼚厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻
+澈郴⾂臣⾠辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承
+逞骋秤吃痴持匙池迟弛驰耻齿侈尺⾚赤翅斥炽充冲⾍虫崇
+宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚础储
+矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿
+醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛
+凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存⼨寸磋撮搓措挫
+错搭达答瘩打⼤大呆⽍歹傣戴带殆代贷袋待逮怠耽担丹单
+郸掸胆旦氮但惮淡诞弹蛋当挡党荡档⼑刀捣蹈倒岛祷导到
+稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵
+底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉
+叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠丁盯叮钉顶⿍鼎锭定订
+丢东冬董懂动栋侗恫冻洞兜抖⽃斗陡⾖豆逗痘都督毒犊独
+读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿
+囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄
+扼遏鄂饿恩⽽而⼉儿⽿耳尔饵洱⼆二贰发罚筏伐乏阀法珐
+藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳⽅方肪房防妨
+仿访纺放菲⾮非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚
+汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫
+敷肤孵扶拂辐幅氟符伏俘服浮涪福袱弗甫抚辅俯釜斧脯腑
+府腐赴副覆赋复傅付⾩阜⽗父腹负富讣附妇缚咐噶嘎该改
+概钙盖溉⼲干⽢甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港
+杠篙皋⾼高膏羔糕搞镐稿告哥歌搁⼽戈鸽胳疙割⾰革葛格
+蛤阁隔铬个各给根跟耕更庚羹埂耿梗⼯工攻功恭龚供躬公
+宫⼸弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑
+⿎鼓古蛊⾻骨⾕谷股故顾固雇刮⽠瓜剐寡挂褂乖拐怪棺关
+官冠观管馆罐惯灌贯光⼴广逛瑰规圭硅归龟闺轨⿁鬼诡癸
+桂柜跪贵刽辊滚棍锅郭国果裹过哈骸孩海氦亥害骇酣憨邯
+韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好
+耗号浩呵喝荷菏核⽲禾和何合盒貉阂河涸赫褐鹤贺嘿⿊黑
+痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后
+呼乎忽瑚壶葫胡蝴狐糊湖弧虎唬护互沪户花哗华猾滑画划
+化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺
+蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽
+会烩汇讳诲绘荤昏婚魂浑混豁活伙⽕火获或惑霍货祸击圾
+基机畸稽积箕肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲
+即嫉级挤⼏几脊⼰己蓟技冀季伎祭剂悸济寄寂计记既忌际
+妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺
+间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键
+箭件健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒
+礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡⾓角饺缴绞剿教酵轿较
+叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借
+介疥诫届⼱巾筋⽄斤⾦金今津襟紧锦仅谨进靳晋禁近烬浸
+尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟
+竞净炯窘揪究纠玖⾲韭久灸九酒厩救旧⾅臼舅咎就疚鞠拘
+狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃
+娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻俊竣浚郡
+骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷
+烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐
+孔控抠⼝口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款
+匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀馈愧溃坤昆捆困括扩
+廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆
+烂滥琅榔狼廊郎朗浪捞劳牢⽼老佬姥酪烙涝勒乐雷镭蕾磊
+累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李⾥里鲤礼莉
+荔吏栗丽厉励砾历利傈例俐痢⽴立粒沥⾪隶⼒力璃哩俩联
+莲连镰廉怜涟帘敛脸链恋炼练粮凉凉梁粱良两辆量晾亮谅
+撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞
+淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留
+刘瘤流柳六龙聋咙笼窿隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉
+掳卤虏鲁麓碌露路赂⿅鹿潞禄录陆戮驴吕铝侣旅履屡缕虑
+氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣
+箩骡裸落洛骆络妈⿇麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒
+蛮满蔓曼慢漫谩芒茫盲氓忙莽猫茅锚⽑毛⽭矛铆卯茂冒帽
+貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬
+盟锰猛梦孟眯醚靡糜迷谜弥⽶米秘觅泌蜜密幂棉眠绵冕免
+勉娩缅⾯面苗描瞄藐秒渺庙妙蔑灭民抿⽫皿敏悯闽明螟鸣
+铭名命谬摸摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇
+牡亩姆母墓暮幕募慕⽊木⽬目睦牧穆拿哪呐钠那娜纳氖乃
+奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿
+腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝
+宁拧泞⽜牛扭钮纽脓浓农弄奴努怒⼥女暖虐疟挪懦糯诺哦
+欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔
+判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆
+砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗啤脾疲
+⽪皮匹痞僻屁譬篇偏⽚片骗飘漂瓢票撇瞥拼频贫品聘乒坪
+苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴
+圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗
+祈祁骑起岂乞企启契砌器⽓气迄弃汽泣讫掐恰洽牵扦钎铅
+千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌⽋欠歉枪呛腔羌墙蔷
+强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲
+秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘
+邱球求囚酋泅趋区蛆曲躯屈驱渠取娶龋趣去圈颧权醛泉全
+痊拳⽝犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让
+饶扰绕惹热壬仁⼈人忍韧任认刃妊纫扔仍⽇日戎茸蓉荣融
+熔溶容绒冗揉柔⾁肉茹蠕儒孺如辱乳汝⼊入褥软阮蕊瑞锐
+闰润若弱撒洒萨腮鳃塞赛三叁伞散桑嗓丧搔骚扫嫂瑟⾊色
+涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉⼭山删煽衫闪陕擅
+赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍
+奢赊蛇⾆舌舍赦摄射慑涉社设砷申呻伸⾝身深娠绅神沈审
+婶甚肾慎渗声⽣生甥牲升绳省盛剩胜圣师失狮施湿诗⼫尸
+虱⼗十⽯石拾时什⾷食蚀实识史⽮矢使屎驶始式⽰示⼠士
+世柿事拭誓逝势是嗜噬适仕侍释饰⽒氏市恃室视试收⼿手
+⾸首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑
+曙署蜀⿉黍⿏鼠属术述树束戍竖墅庶数漱恕刷耍摔衰甩帅
+栓拴霜双爽谁⽔水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝
+死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素
+速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋
+蓑梭唆缩琐索锁所塌他它她塔獭挞蹋踏胎苔抬台泰酞太态
+汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛
+唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔
+踢锑提题蹄啼体替嚏惕涕剃屉天添填⽥田甜恬舔腆挑条迢
+眺跳贴铁帖厅听烃汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅
+筒统痛偷投头透凸秃突图徒途涂屠⼟土吐兔湍团推颓腿蜕
+褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃⽡瓦袜歪
+外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉⽹网往
+旺望忘妄威巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未
+蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊⽂文闻纹吻稳紊问嗡翁
+瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋⽆无芜梧吾吴⽏毋
+武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸
+锡牺稀息希悉膝⼣夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙
+戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷
+闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶⾹香箱襄湘乡
+翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓⼩小
+孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻
+谢屑薪芯锌欣⾟辛新忻⼼心信衅星腥猩惺兴刑型形邢⾏行
+醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚
+嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋⽞玄选癣眩
+绚靴薛学⽳穴雪⾎血勋熏循旬询寻驯巡殉汛训讯逊迅压押
+鸦鸭呀丫芽⽛牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩
+延⾔言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃
+央鸯秧杨扬佯疡⽺羊洋阳氧仰痒养样漾邀腰妖瑶摇尧遥窑
+谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液⼀一壹
+医揖铱依伊⾐衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已⼄乙矣
+以艺抑易⾢邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译
+异翼翌绎茵荫因殷⾳音阴姻吟银淫寅饮尹引隐印英樱婴鹰
+应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳
+涌永恿勇⽤用幽优悠忧尤由邮铀犹油游⾣酉有友右佑釉诱
+⼜又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱⾬雨与屿
+禹宇语⽻羽⽟玉域芋郁吁遇喻峪御愈欲狱育誉浴寓裕预豫
+驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院⽈曰约越
+跃钥岳粤⽉月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉
+灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶
+燥责择则泽贼怎增憎曾赠扎喳渣札轧铡闸眨栅榨咋乍炸诈
+摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章
+彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折
+哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸
+挣睁征狰争怔整拯正政帧症郑证芝枝⽀支吱蜘知肢脂汁之
+织职直植殖执值侄址指⽌止趾只旨纸志挚掷⾄至致置帜峙
+制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众⾈舟周州
+洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐⽵竹烛煮拄瞩
+嘱主著柱助蛀贮铸筑住注祝驻抓⽖爪拽专砖转撰赚篆桩庄
+装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹
+咨资姿滋淄孜紫仔籽滓⼦子⾃自渍字鬃棕踪宗综总纵邹⾛
+走奏揍租⾜足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做
+作坐座亍丌兀兀丐廿卅丕亘丞⿀鬲孬噩⼁丨禺⼃丿⼔匕乇
+夭⽘爻卮氐囟胤馗毓睾鼗⼂丶亟鼐乜乩亓芈孛啬嘏仄厍厝
+厣厥厮靥赝⼕匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜
+蒯剽劂劁劐劓⼌冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉
+伫佞佧攸佚佝佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪
+俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬
+偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎⿕龠汆籴兮巽黉
+馘冁夔⼓勹匍訇匐凫夙兕⼇亠兖亳衮袤亵脔裒禀嬴蠃羸⼎
+冫冱冽冼凇⼍冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖
+诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕
+谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶⼙卩卺阝阢阡阱
+阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺
+邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃
+酆刍奂劢劬劭劾哿勐勖勰叟燮矍⼵廴⼐凵凼⾿鬯⼛厶弁畚
+巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨
+坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝堋堍
+埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑
+芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉
+苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼
+茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥荨茛荩荬荪荭荮莰
+荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘
+萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳
+蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹
+蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻
+薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼⼶廾弈夼奁
+耷奕奚奘匏⼪尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶
+捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠
+搌搦搡摞撄摭撖摺撷撸撙撺擀擐擗擤擢攉攥攮⼷弋忒甙弑
+卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤
+咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩
+咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿
+啐唼唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾
+喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈
+嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅
+嚓嚯囔⼞囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼帷幄幔
+幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒
+峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴
+嶂嶙嶝豳嶷巅⼻彳彷徂徇徉後徕徙徜徨徭徵徼衢⼺彡犭犰
+犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺狻猗猓猡猊猞猝
+猕猢猹猥猬猸猱獐獍獗獠獬獯獾⾇舛夥飧夤⼡夂饣饧饨饩
+饪饫饬饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾
+庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵
+怦怛怏怍怩怫怊怿怡恸恹恻恺恂恪恽悖悚悭悝悃悒悌悛惬
+悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳
+闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬⽙
+爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲
+泠泖泺泫泮沱泓泯泾洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒
+浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖
+涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻
+溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲
+潼潺濑濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞⼧宀宄宕宓
+宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦
+逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋⼹彐
+彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻⼬屮妁妃妍妩妪妣
+妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀
+婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉
+嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐
+骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩纭纰纾绀绁绂
+绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈
+缋缌缏缑缒缗缙缜缛缟缡缢缣缤缥缦缧缪缫缬缭缯缰缱缲
+缳缵⼳幺畿⼮巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼
+琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬琛琚瑁瑜瑗瑕瑙瑷瑭瑾
+璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳
+枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢
+栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴
+桷梓桫棂楮棼椟椠棹椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘
+楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯
+槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁
+殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂
+辄辇辋辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓
+⽁攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡
+晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙
+觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰搿擘
+耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖
+爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐
+胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠
+腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻臁膦欤欷欹歃歆歙
+飑飒飓飕飙飚⽎殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖
+炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨
+熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢
+祗祠祯祧祺禅禊禚禧禳忑忐怼恝恚恧恁恙恣悫愆愍慝憩憝
+懋懑戆肀⾀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼
+砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙
+磉磬磲礅磴礓礤礞礴龛⿋黹黻黼盱眄眍盹眇眈眚眢眙眭眦
+眵眸睐睑睇睃睚睨睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋
+畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍
+钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钹钺钼钽
+钿铄铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧
+铨铪铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒锓
+锔锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄
+镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩
+镪镫镬镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔稹稷穑黏
+馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨鸩鸪鸫鸬鸲鸱鸶鸸鸷鸹鸺鸾
+鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬
+鹱鹭鹳⽧疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤
+痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙瘛瘼瘢瘠癀瘭瘰瘿瘵
+癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤
+衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊
+褴褫褶襁襦襻⽦疋胥皲皴矜⽾耒耔耖耜耠耢耥耦耧耩耨耱
+耋耵聃聆聍聒聩聱覃顸颀颃颉颌颍颏颔颚颛颞颟颡颢颥颦
+⾌虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺
+蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣
+蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼
+蝤蝙蝥螓螯螨蟒蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛
+蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼⽸缶罂罄罅舐竺竽笈笃笄笕笊笫
+笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱
+箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏
+簖簋簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴
+舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜
+粞粢粲粼粽糁糇糌糍糈糅糗糨⾉艮暨羿翎翕翥翡翦翩翮翳
+⽷糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤酢酡
+酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺⾗豕鹾
+趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤
+踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯
+蹴躅躏躔躐躜躞⾘豸貂貊貅貘貔斛觖觞觚觜觥觫觯訾謦靓
+雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌黾鼋鼍⾫
+隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎
+鲐鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲧鲨鲩鲫鲭鲮鲰鲱鲲鲳
+鲴鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙
+鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂
+髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔⾽髟髡髦髯髫髻髭髹鬈
+鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪
+黯鼢鼬鼯鼹鼷鼽鼾齄〇©™ 
Adobe-GB1-1
@@ -1241,4 +1241,20 @@ Adobe-GB1-5
꒚꒛꒜꒝꒞꒟꒠꒡꒢꒣꒤꒥꒦꒧꒨꒩꒪꒫꒬꒭꒮꒯꒰꒱꒲
꒳꒴꒵꒶꒷꒸꒹꒺꒻꒼꒽꒾꒿꓀꓁꓂꓃꓄꓅꓆
+
+Adobe-GB1-6
+
+龦龧龨龩龪龫龬龭龮龯龰龱龲龳龼龽龾龿鿀鿁鿂鿃鿄鿅鿆
+鿇鿈鿉鿊鿋鿌鿍鿎鿏鿐鿑鿒鿓鿔鿕鿖鿗鿘鿙鿚鿛鿜鿝鿞鿟
+鿠鿡鿢鿣鿤鿥鿦鿧鿨鿩鿪鿫鿬鿭鿮鿯鿰鿱鿲鿳鿴鿵鿶鿷鿸
+鿹鿺鿻鿼鿽鿾鿿䶶䶷䶸䶹䶺䶻䶼䶽䶾䶿𠅤𠙶𠳐𡎚𡐓𣗋𣲗𣲘
+𣸣𤧛𤩽𤫉𥔲𥕢𥖨𥻗𦈡𦒍𦙶𦝼𦭜𦰡𧿹𨐈𨙸𨚕𨟠𨭉𨱇𨱏𨱑𨱔𨺙
+𩽾𩾃𩾌𪟝𪣻𪤗𪨰𪨶𪩘𪾢𫄧𫄨𫄷𫄸𫇭𫌀𫍣𫍯𫍲𫍽𫐄𫐐𫐓𫑡𫓧
+𫓯𫓶𫓹𫔍𫔎𫔶𫖮𫖯𫖳𫗧𫗴𫘜𫘝𫘦𫘧𫘨𫘪𫘬𫚕𫚖𫚭𫛭𫞩𫟅𫟦
+𫟹𫟼𫠆𫠊𫠜𫢸𫫇𫭟𫭢𫭼𫮃𫰛𫵷𫶇𫷷𫸩𬀩𬀪𬂩𬃊𬇕𬇙𬇹𬉼𬊈
+𬊤𬌗𬍛𬍡𬍤𬒈𬒔𬒗𬕂𬘓𬘘𬘡𬘩𬘫𬘬𬘭𬘯𬙂𬙊𬙋𬜬𬜯𬞟𬟁𬟽
+𬣙𬣞𬣡𬣳𬤇𬤊𬤝𬨂𬨎𬩽𬪩𬬩𬬭𬬮𬬱𬬸𬬹𬬻𬬿𬭁𬭊𬭎𬭚𬭛𬭤
+𬭩𬭬𬭯𬭳𬭶𬭸𬭼𬮱𬮿𬯀𬯎𬱖𬱟𬳵𬳶𬳽𬳿𬴂𬴃𬴊𬶋𬶍𬶏𬶐𬶟
+𬶠𬶨𬶭𬶮𬷕𬸘𬸚𬸣𬸦𬸪𬹼𬺈𬺓
+
\end
diff --git a/macros/jptex/generic/uptex-base/samples/show_kcat.tex b/macros/jptex/generic/uptex-base/samples/show_kcat.tex
index 73e8597806..7fed310d46 100644
--- a/macros/jptex/generic/uptex-base/samples/show_kcat.tex
+++ b/macros/jptex/generic/uptex-base/samples/show_kcat.tex
@@ -31,6 +31,7 @@
\message{\kc{𫝀}{2B740}}% U+2B740 CJK Unified Ideographs Extension D
\message{\kc{𫠠}{2B820}}% U+2B820 CJK Unified Ideographs Extension E
\message{\kc{𬺰}{2CEB0}}% U+2CEB0 CJK Unified Ideographs Extension F
+\message{\kc{𮯰}{2EBF0}}% U+2EBF0 CJK Unified Ideographs Extension I
\message{\kc{丽}{2F800}}% U+2F800 CJK Compatibility Ideographs Supplement
\message{\kc{𰀀}{30000}}% U+30000 CJK Unified Ideographs Extension G
\message{\kc{𱍐}{31350}}% U+31350 CJK Unified Ideographs Extension H
diff --git a/macros/luatex/latex/truthtable/README.md b/macros/luatex/latex/truthtable/README.md
index c41dd42fa3..de30851e56 100644
--- a/macros/luatex/latex/truthtable/README.md
+++ b/macros/luatex/latex/truthtable/README.md
@@ -1,8 +1,8 @@
# truthtable
-*Copyright (C) Dominic Flück (K-Trout) 2021* <k-trout.ctan[at]protonmail[dot]ch>
+*Copyright (C) Dominic Flück (K-Trout) 2021-2023* <k-trout.ctan[at]protonmail[dot]ch>
-truthtable 2021/10/08 v0.0.2
+truthtable 2023/09/16 v0.1.0
---
@@ -20,9 +20,9 @@ A small LaTeX package for generating truth tables automatically.
The package is available on CTAN: [ctan.org/pkg/truthtable](https://ctan.org/pkg/truthtable).
-## Github
+## GitHub
-The package repository is on Github: [github.com/K-Trout/truthtable](https://github.com/K-Trout/truthtable). For bug reports and feature requests create an issue: [github.com/K-Trout/truthtable/issues](https://github.com/K-Trout/truthtable/issues)
+The package repository is on GitHub: [github.com/K-Trout/truthtable](https://github.com/K-Trout/truthtable). For bug reports and feature requests create an issue: [github.com/K-Trout/truthtable/issues](https://github.com/K-Trout/truthtable/issues)
## Provided files
diff --git a/macros/luatex/latex/truthtable/truthtable.pdf b/macros/luatex/latex/truthtable/truthtable.pdf
index 2667782a89..92f0962a3b 100644
--- a/macros/luatex/latex/truthtable/truthtable.pdf
+++ b/macros/luatex/latex/truthtable/truthtable.pdf
Binary files differ
diff --git a/macros/luatex/latex/truthtable/truthtable.sty b/macros/luatex/latex/truthtable/truthtable.sty
index 991074264a..45076b024a 100644
--- a/macros/luatex/latex/truthtable/truthtable.sty
+++ b/macros/luatex/latex/truthtable/truthtable.sty
@@ -15,7 +15,7 @@
%
% This work consists of the file truthtable.sty.
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
-\ProvidesPackage{truthtable}[2021/10/08 0.0.2 Package for generating truth tables automatically using LuaTeX]
+\ProvidesPackage{truthtable}[2023/09/16 0.1.0 Package for generating truth tables automatically using LuaTeX]
\ProcessOptions\relax
\@ifpackageloaded{luacode}{
@@ -92,9 +92,9 @@ function printTruthValue(expr, dTrue, dFalse)
return returnVal;
end
-function parse(commaSepVariables, commaSepDisplayVariables, commaSepResultRows, commaSepResultDisplayRows, displayTrue, displayFalse)
+function parse(commaSepVariables, commaSepDisplayVariables, commaSepResultRows, commaSepResultDisplayRows, displayTrue, displayFalse, order)
- print("\n\ntruthtable v0.0.2\n")
+ print("\n\ntruthtable v0.1.0\n")
local vrbls = Split(commaSepVariables, ",");
local numberOfColumns = #(vrbls);
@@ -103,7 +103,7 @@ function parse(commaSepVariables, commaSepDisplayVariables, commaSepResultRows,
local resRows = Split(commaSepResultRows, ",");
local dResRows = Split(commaSepResultDisplayRows, ",");
- local dHeader = string.gsub(commaSepDisplayVariables, ",", " & ") .. " & " .. string.gsub(commaSepResultDisplayRows, ",", " & ") .. " \\\\ \\hline";
+ local dHeader = string.gsub(commaSepDisplayVariables, ",", " & ") .. " & " .. string.gsub(commaSepResultDisplayRows, ",", " & ") .. [[ \\ \hline]];
if (#(dVrbls) ~= #(vrbls)) then
print("Error: The number of variables does not match the number of display variables.");
@@ -115,9 +115,24 @@ function parse(commaSepVariables, commaSepDisplayVariables, commaSepResultRows,
return
end
- local tableContent = dHeader;
+ tex.print(dHeader);
- for i = (rows - 1),0,-1
+
+ local startVal;
+ local endVal;
+ local stepVal;
+
+ if order == "asc" then
+ startVal = 0;
+ endVal = rows - 1;
+ stepVal = 1;
+ else
+ startVal = rows - 1;
+ endVal = 0;
+ stepVal = -1;
+ end
+
+ for i = startVal,endVal,stepVal
do
local bitString = toBits(i);
@@ -149,18 +164,20 @@ function parse(commaSepVariables, commaSepDisplayVariables, commaSepResultRows,
row = row .. printTruthValue(EvaluateFormula(aWCommaSepRows[c]), displayTrue, displayFalse) .. " & ";
end
- row = string.sub(row, 1, #row - 2) .. "\\\\"
+ row = string.sub(row, 1, #row - 2) .. [[\\]];
- tableContent = tableContent .. "\n" .. row
+ tex.print(row);
end
-
- tex.print(tableContent);
end
\end{luacode*}
\newcommand{\truthtable}[6]{
- \luadirect{parse("#1", "\luaescapestring{#2}", "\luaescapestring{#3}", "\luaescapestring{#4}", "\luaescapestring{#5}","\luaescapestring{#6}")}
+ \luadirect{parse("#1", "\luaescapestring{#2}", "\luaescapestring{#3}", "\luaescapestring{#4}", "\luaescapestring{#5}","\luaescapestring{#6}", "\luaescapestring{desc}")}
+}
+
+\newcommand{\truthtableasc}[6]{
+ \luadirect{parse("#1", "\luaescapestring{#2}", "\luaescapestring{#3}", "\luaescapestring{#4}", "\luaescapestring{#5}","\luaescapestring{#6}", "\luaescapestring{asc}")}
}
\endinput \ No newline at end of file
diff --git a/macros/luatex/latex/truthtable/truthtable.tex b/macros/luatex/latex/truthtable/truthtable.tex
index d95d7d2c6d..46a2ab5f8f 100644
--- a/macros/luatex/latex/truthtable/truthtable.tex
+++ b/macros/luatex/latex/truthtable/truthtable.tex
@@ -5,15 +5,13 @@
\usepackage{xcolor}
\usepackage{caption}
\lstset{
- basicstyle=\footnotesize\ttfamily, % Default font
- numbers=none, % left % Location of line numbers
- numberstyle=\tiny, % Style of line numbers
- % stepnumber=2, % Margin between line numbers
- numbersep=0pt, %5pt, % Margin between line numbers and text
- tabsize=1, % Size of tabs
+ basicstyle=\footnotesize\ttfamily,
+ numbers=none,
+ numberstyle=\tiny,
+ numbersep=0pt,
+ tabsize=1,
extendedchars=true,
- breaklines=true, % Lines will be wrapped
- % keywordstyle=\color{red}\textbf,
+ breaklines=true,
commentstyle=\color{purple},
identifierstyle=\color{blue},
frame=tlrb,
@@ -21,17 +19,17 @@
keywordstyle={[2]\color{blue}\textbf},
keywordstyle={[3]\color{green}},
keywordstyle={[4]\textbf},
- stringstyle=\color{purple}\ttfamily, % Color of strings
+ stringstyle=\color{purple}\ttfamily,
showspaces=false,
showtabs=false,
- xleftmargin=5.5pt,%17pt,
- framexleftmargin=2pt,%17pt,
+ xleftmargin=5.5pt,
+ framexleftmargin=2pt,
framexrightmargin=2.5pt,
framexbottommargin=2pt,
backgroundcolor=\color[HTML]{E6E7E7},
showstringspaces=false,
}
-\lstloadlanguages{ % Check documentation for further languages ...
+\lstloadlanguages{
[LaTeX]TeX
}
\DeclareCaptionFont{blue}{\color{blue}}
@@ -48,12 +46,11 @@
bookmarksnumbered=true,
pdftitle={truthtable},
pdfauthor={Dominic Flück <K-Trout>},
- pdfsubject={truthtable package documentation v0.0.2},
+ pdfsubject={truthtable package documentation v0.1.0},
pdfkeywords={truthtable, LuaLaTeX, package, documentation, LaTeX},
pdfdisplaydoctitle=true,
pdflang={en-GB},
- pdfcreator={LuaHBTeX},
- pdfproducer={LuaHBTeX, Version 1.13.2}}
+ pdfcreator={LuaHBTeX}}
\usepackage{truthtable}
@@ -64,13 +61,13 @@
\title{\texttt{truthtable}\textbf{: \LaTeX\ Package\\for automatically generated Truth Tables}}
\author{Dominic Flück <K-Trout>}
-\date{0.0.2 2021/10/08}
+\date{0.1.0 2023/09/16}
\begin{document}
\maketitle
\begin{abstract}
- \noindent \texttt{truthtable} is a \LaTeX\ package for creating automatically generating truth tables given a table header. It supports a number of logical operations which can be combined as needed. It's built upon the package \href{https://ctan.org/pkg/luacode}{\texttt{luacode}} and therefore has to be used with the \LuaLaTeX\ compiler.
+ \noindent \texttt{truthtable} is a \LaTeX\ package for creating automatically generating truth tables given a table header. It supports a number of logical operations which can be combined as needed. It's built upon the package \href{https://ctan.org/pkg/luacode}{\texttt{luacode}} and therefore has to be used with the \LuaLaTeX\ compiler.
\end{abstract}
\tableofcontents
@@ -86,13 +83,24 @@ To help this situation when creating a truth table for a document, this package
\section{Usage}
-The \texttt{truthtable} package provides as of this version a single command:\bigskip\\
-\noindent\texttt{\textbackslash truthtable\{\emph{comma separated variables}\}\{\emph{comma separated display variables}\}\\\{\emph{comma separated statements}\}\{\emph{comma separated display statements}\}\\\{\emph{display true value}\}\{\emph{display false value}\}}
-\bigskip\\
-The command positions in the normal table boilerplate. This leads to the redundant practice of defining the column count twice, once for the table environment as the column layout and once in the command by defining the variables and statements.\footnote{See \autoref{lst:exampletable} for example}
+The \texttt{truthtable} package provides two commands: \texttt{\textbackslash truthtable} and \texttt{\textbackslash truthtableasc}. Both commands take the same arguments, but generate the table in different order.
+
+They position in the normal table boilerplate. This leads to the redundant practice of defining the column count twice, once for the table environment as the column layout and once in the command by defining the variables and statements.\footnote{See \autoref{lst:exampletable} for example}
This is intentional to allow for more flexibility in customising the column layout as well as pre- and appending of further rows to the table.
+\subsection{\texttt{\textbackslash truthtable}}
+\noindent\texttt{\textbackslash truthtable\{\emph{comma separated variables}\}\{\emph{comma separated display variables}\}\\\{\emph{comma separated statements}\}\{\emph{comma separated display statements}\}\\\{\emph{display true value}\}\{\emph{display false value}\}}\bigskip
+
+This command generates the table in descending value of the variables, from all variables being \emph{true} to being \emph{false}.
+
+\subsection{\texttt{\textbackslash truthtableasc}}
+
+\noindent\texttt{\textbackslash truthtableasc\{\emph{comma separated variables}\}\{\emph{comma separated display variables}\}\\\{\emph{comma separated statements}\}\{\emph{comma separated display statements}\}\\\{\emph{display true value}\}\{\emph{display false value}\}}
+\bigskip
+
+This command generates the table in ascending value of the variables, from all variables being \emph{false} to being \emph{true}.
+
\subsection{Comma separated variables}
The basic variables, for which every combination of \emph{true} and \emph{false} a row of table will be generated. The variables should be relatively simple, as they are not used for the formatting the table but simply to calculate the answers. The variables should be separated using commas. Don't use variables, which contain another variable, i.e., don't do this: \texttt{\{n,An\}}.
@@ -110,16 +118,16 @@ The statements using the \emph{Comma separated variables} which are used to eval
To negate a variable or statement, the exclamation point \texttt{!} is used.
\begin{itemize}
- \item $\lnot A$: \texttt{!A}
- \item $\lnot (\lnot A)$: \texttt{!(!A)}
+ \item $\lnot A$: \texttt{!A}
+ \item $\lnot (\lnot A)$: \texttt{!(!A)}
\end{itemize}
\subsubsection{\texttt{AND} / Conjunction}
For the conjunction of two variables or statements the and symbol \texttt{\&} is used. \textbf{The \& must not be escaped for the comma separated statements!}
\begin{itemize}
- \item $A \land B$: \texttt{A \& B}
- \item $A \land (A \land B)$: \texttt{A \& (A \& B)}
+ \item $A \land B$: \texttt{A \& B}
+ \item $A \land (A \land B)$: \texttt{A \& (A \& B)}
\end{itemize}
\subsubsection{\texttt{OR} / Disjunction}
@@ -127,8 +135,8 @@ For the conjunction of two variables or statements the and symbol \texttt{\&} is
For the Disjunction of two variables or statements the vertical line character \texttt{|} is used.
\begin{itemize}
- \item $A \lor B$: \texttt{A | B}
- \item $A \lor (A \lor B)$: \texttt{A | (A | B)}
+ \item $A \lor B$: \texttt{A | B}
+ \item $A \lor (A \lor B)$: \texttt{A | (A | B)}
\end{itemize}
\subsubsection{\texttt{XOR} / Exclusive disjunction}
@@ -136,8 +144,8 @@ For the Disjunction of two variables or statements the vertical line character \
The exclusive disjunction (\texttt{XOR}) is written in parentheses preceded by the hat operator. \textbf{Note that the delimiter used is the semicolon \texttt{;} and not the comma \texttt{,} ! This is because the statements are separated using the comma.}
\begin{itemize}
- \item $A \veebar B$: \texttt{\^\ (A; B)}
- \item $A \veebar (A \lor B)$: \texttt{\^\ (A; (A | B))}
+ \item $A \veebar B$: \texttt{\^\ (A; B)}
+ \item $A \veebar (A \lor B)$: \texttt{\^\ (A; (A | B))}
\end{itemize}
\subsubsection{\texttt{NAND} / Negated conjunction}
@@ -145,28 +153,28 @@ The exclusive disjunction (\texttt{XOR}) is written in parentheses preceded by t
The \texttt{NAND} operation is written in parentheses preceded by the the \texttt{NOT} and the \texttt{AND} operator (\texttt{!\&}). \textbf{Note that the delimiter used is the semicolon \texttt{;} and not the comma \texttt{,} ! This is because the statements are separated using the comma.}
\begin{itemize}
- \item $A | B$: \texttt{!\&(A; B)}
- \item $A | (A \lor B)$: \texttt{!\&(A; (A | B))}
+ \item $A | B$: \texttt{!\&(A; B)}
+ \item $A | (A \lor B)$: \texttt{!\&(A; (A | B))}
\end{itemize}
-\subsubsection{$\rightarrow$ / Implication}
+\subsubsection{\texorpdfstring{$\rightarrow$ / }{}Implication}
The implication can also be expressed. \textbf{Note that the delimiter used is the semicolon \texttt{;} and not the comma \texttt{,} ! This is because the statements are separated using the comma.}
\begin{itemize}
- \item $A \rightarrow B$: \texttt{>>(A; B)}
- \item $A \rightarrow (A \lor B)$: \texttt{>>(A; (A | B))}
- \item $A \land (A \rightarrow B)$: \texttt{A \& >>(A; B)}
+ \item $A \rightarrow B$: \texttt{>>(A; B)}
+ \item $A \rightarrow (A \lor B)$: \texttt{>>(A; (A | B))}
+ \item $A \land (A \rightarrow B)$: \texttt{A \& >>(A; B)}
\end{itemize}
-\subsubsection{$\leftrightarrow$ / Equality}
+\subsubsection{\texorpdfstring{$\leftrightarrow$ / }{}Equality}
The equality can also be expressed. Since version 0.0.2 this command can also be expressed as \texttt{<>(A;~B)}. The previous definition\footnote{The equality operation was defined this way in v0.0.1} of \texttt{\_\_(A;~B)} also works. \textbf{Note that the delimiter used is the semicolon \texttt{;} and not the comma \texttt{,} ! This is because the statements are separated using the comma.} \textbf{The \texttt{\_\_} must not be escaped for the comma separated statements!}
\begin{itemize}
- \item $A \leftrightarrow B$: \texttt{\_\_(A; B)} = \texttt{<>(A; B)}
- \item $A \leftrightarrow (A \lor B)$: \texttt{\_\_(A; (A | B))} = \texttt{<>(A; (A | B))}
- \item $A \land (A \leftrightarrow B)$: \texttt{A \& \_\_(A; B)} = \texttt{A \& <>(A; B)}
+ \item $A \leftrightarrow B$: \texttt{\_\_(A; B)} = \texttt{<>(A; B)}
+ \item $A \leftrightarrow (A \lor B)$: \texttt{\_\_(A; (A | B))} = \texttt{<>(A; (A | B))}
+ \item $A \land (A \leftrightarrow B)$: \texttt{A \& \_\_(A; B)} = \texttt{A \& <>(A; B)}
\end{itemize}
\subsection{Comma separated display statements}
@@ -183,7 +191,7 @@ The displaying string which will be used in the table body for \emph{false}. Nor
\section{Example of use}
-The code snippet seen in \autoref{lst:exampletable} is the entirety of code required to produce the truth table seen in \autoref{tab:sampletable}.\footnote{The captioning setup was omitted in the listing.}
+The code snippet seen in \autoref{lst:exampletable} is the entirety of code required to produce the truth table seen in \autoref{tab:sampletable}.\footnote{The captioning setup was omitted in the listing.} The code for the ascending truth table as seen in \autoref{tab:sampletableasc} is identical, except for the command used being \texttt{\textbackslash truthtableasc} instead of \texttt{\textbackslash truthtable}.
The command generates the code seen in \autoref{lst:exampletableoutput}.
@@ -191,15 +199,27 @@ The command generates the code seen in \autoref{lst:exampletableoutput}.
\lstinputlisting[language={[LaTeX]TeX}, label=lst:exampletableoutput, caption=Code generated by \textbackslash truthtable]{res/exampletableoutput.tex}
-\begin{table}[h]
- \centering
- \begin{tabular}{c|c||c|c|c|c|c|c|c}
- \truthtable{A,B}{$A$,$B$}
- {!A, A & B, A | B, ^(A; B), !&(A; B), >>(A; B), <>(A; B)}{$\lnot A$, $A \land B$, $A \lor B$,$A \veebar B$,$A | B$, $A \rightarrow B$, $A \leftrightarrow B$}
- {$T$}{$F$}
- \end{tabular}
- \caption{Sample truth table}
- \label{tab:sampletable}
+\begin{table}[ht]
+ \centering
+ \begin{tabular}{c|c||c|c|c|c|c|c|c}
+ \truthtable{A,B}{$A$,$B$}
+ {!A, A & B, A | B, ^(A; B), ! & (A; B), >>(A; B), <>(A; B)}{$\lnot A$, $A \land B$, $A \lor B$,$A \veebar B$,$A | B$, $A \rightarrow B$, $A \leftrightarrow B$}
+ {$T$}{$F$}
+ \end{tabular}
+ \caption{Sample truth table}
+ \label{tab:sampletable}
+\end{table}
+
+
+\begin{table}[ht]
+ \centering
+ \begin{tabular}{c|c||c|c|c|c|c|c|c}
+ \truthtableasc{A,B}{$A$,$B$}
+ {!A, A & B, A | B, ^(A; B), ! & (A; B), >>(A; B), <>(A; B)}{$\lnot A$, $A \land B$, $A \lor B$,$A \veebar B$,$A | B$, $A \rightarrow B$, $A \leftrightarrow B$}
+ {$T$}{$F$}
+ \end{tabular}
+ \caption{Sample truth table in ascending order}
+ \label{tab:sampletableasc}
\end{table}
\newpage
@@ -208,29 +228,34 @@ The command generates the code seen in \autoref{lst:exampletableoutput}.
\subsection{Repository}
-This package is on \emph{CTAN} (\href{https://ctan.org/pkg/truthtable}{ctan.org/pkg/truthtable}). The repository of the package is \href{https://github.com/K-Trout/truthtable}{github.com/K-Trout/truthtable}. For bug reports and feature requests create an issue on github: \href{https://github.com/K-Trout/truthtable/issues}{github.com/K-Trout/truthtable/issues}.
+This package is on \emph{CTAN} (\href{https://ctan.org/pkg/truthtable}{ctan.org/pkg/truthtable}). The repository of the package is \href{https://github.com/K-Trout/truthtable}{github.com/K-Trout/truthtable}. For bug reports and feature requests create an issue on GitHub: \href{https://github.com/K-Trout/truthtable/issues}{github.com/K-Trout/truthtable/issues}.
\subsection{Changes}
+\textbf{v0.1.0 (2023/09/16)}
+\begin{itemize}
+ \item Added the \texttt{\textbackslash truthtableasc} command to generate the table in ascending order. Thanks to \emph{slnkahveci} on GitHub for the feature request.
+ \item Fixed alignment issues in the first column of the table. Thanks to \emph{cpierquet} on GitHub for the bug report.
+\end{itemize}
\textbf{v0.0.2 (2021/10/08)}
\begin{itemize}
- \item Added support for \emph{XOR} and \emph{NAND}.
- \item Added definition for equivalence operation to be written as \texttt{<>(A; B)}. \texttt{\_\_(A; B)} is still supported
- \item Added some error messages when the number of arguments and display arguments don't correspond.
+ \item Added support for \emph{XOR} and \emph{NAND}.
+ \item Added definition for equivalence operation to be written as \texttt{<>(A; B)}. \texttt{\_\_(A; B)} is still supported
+ \item Added some error messages when the number of arguments and display arguments don't correspond.
\end{itemize}
\textbf{v0.0.1 (2021/10/01)}
\begin{itemize}
- \item Initial release
+ \item Initial release
\end{itemize}
\subsection{Known issues and bugs}
\begin{description}
- \item[Stability] The Lua code of the macro is not very error resistant. The package only checks if the same amount of working and display variables, as well as working and display statements are provided. If a mismatch is detected, an error message is output and the package code halts. Further improvements may be undertaken in the future.
- \item[Display formatting] Whilst normal text and ``math'' mode work for both headers and truth values, other text formatting such as \texttt{\textbackslash textbf} does not. It is not yet clear if this will be addressed in future versions.
- \item[Operations] For the moment seven operations are defined. Further operations may be added in future versions.
+ \item[Stability] The Lua code of the macro is not very error resistant. The package only checks if the same amount of working and display variables, as well as working and display statements are provided. If a mismatch is detected, an error message is output and the package code halts. Further improvements may be undertaken in the future.
+ \item[Display formatting] Whilst normal text and ``math'' mode work for both headers and truth values, other text formatting such as \texttt{\textbackslash textbf} does not. It is not yet clear if this will be addressed in future versions.
+ \item[Operations] For the moment seven operations are defined. Further operations may be added in future versions.
\end{description}
\newpage