release winning entries of IOCCC28 under the year 2024

Congratulations to:

* 2024/anders - Prize in sound coding - layered music generator
* 2024/burton - Prize in pentagrammatology - wordle hard mode solver
* 2024/cable1 - Prize in bot talk - LLM inference engine
* 2024/cable2 - Prize in murky waters - salmon recipe
* 2024/carlini - Prize in perfect timing - Intel 4004 emulation
* 2024/codemeow - Prize in tray planting - bonsai generator
* 2024/endoh1 - Prize in patient pointillism - slow ray tracer in CPP
* 2024/endoh2 - Prize in solid body physics - rotating rigid body simulation
* 2024/ferguson1 - Prize in diabolical logistics - Oregon trail pact with the devil
* 2024/ferguson2 - Prize in yil-tas - Navajo code talker translator
* 2024/howe - Nice accent eh-ward - mini vi
* 2024/kramer - Prize in linguistic arithmetic - natural language numerical calculator
* 2024/kurdyukov1 - Prize in phased periodicity - phase of the Moon
* 2024/kurdyukov2 - Prize in art restoration - JPEG artifact removal
* 2024/kurdyukov3 - Prize in virtual quietus - gaming VM and doom
* 2024/kurdyukov4 - Prize in embiggening - encode without literals
* 2024/maffiodo - Prize in creative interpretation - Jav\*script interpreter
* 2024/mills - Prize in ℤ₃ - Infocom v3 story interpreter
* 2024/stedolan - Best one liner - icon from MD5
* 2024/straadt - Prize in imitative rebooting - OpenRISC CPU and Linux
* 2024/tmarrec - Prize in cyclonic coding - 3D tornado simulation
* 2024/tompng - Prize in quasi bijection - vortex encryptor decryptor
* 2024/weaver - Sur prize - rickroll

Ran `make update` to perform the above.
 	new file:   2024/burton/.entry.json
This commit is contained in:
Landon Curt Noll committed 2025-08-02 14:43:07 -07:00
1 parent 10512e6c79
commit 09750f8899
443 files changed
+182938 -231

No files matched your search

+169
View File
@@ -0,0 +1,169 @@
{
"no_comment" : "mandatory comment: because comments were removed from the original JSON spec",
"entry_JSON_format_version" : "1.2 2024-09-25",
"award" : "Prize in yil-tas",
"year" : 2024,
"dir" : "ferguson2",
"entry_id" : "2024_ferguson2",
"title" : "navajo-code-talkers",
"abstract" : "Navajo code talker translator",
"author_set" : [
{
"author_handle" : "Cody_Boone_Ferguson"
}
],
"manifest" : [
{
"file_path" : "prog.c",
"inventory_order" : 20,
"OK_to_edit" : true,
"display_as" : "c",
"display_via_github" : true,
"entry_text" : "entry source code"
},
{
"file_path" : "Makefile",
"inventory_order" : 30,
"OK_to_edit" : true,
"display_as" : "makefile",
"display_via_github" : true,
"entry_text" : "entry Makefile"
},
{
"file_path" : "prog.alt.c",
"inventory_order" : 40,
"OK_to_edit" : true,
"display_as" : "c",
"display_via_github" : true,
"entry_text" : "alternate source code"
},
{
"file_path" : "prog.orig.c",
"inventory_order" : 50,
"OK_to_edit" : false,
"display_as" : "c",
"display_via_github" : true,
"entry_text" : "original source code"
},
{
"file_path" : "deobfus.c",
"inventory_order" : 100,
"OK_to_edit" : true,
"display_as" : "c",
"display_via_github" : true,
"entry_text" : "deobfucated source"
},
{
"file_path" : "dict",
"inventory_order" : 100,
"OK_to_edit" : true,
"display_as" : "text",
"display_via_github" : true,
"entry_text" : "code talker dictionary"
},
{
"file_path" : "sam.jpg",
"inventory_order" : 100,
"OK_to_edit" : true,
"display_as" : "image",
"display_via_github" : true,
"entry_text" : "medical record card for Unsinkable Sam"
},
{
"file_path" : "try.sh",
"inventory_order" : 100,
"OK_to_edit" : true,
"display_as" : "shellscript",
"display_via_github" : true,
"entry_text" : "script to try entry"
},
{
"file_path" : "dict.orig",
"inventory_order" : 125,
"OK_to_edit" : true,
"display_as" : "text",
"display_via_github" : true,
"entry_text" : "code talker dictionary in original form"
},
{
"file_path" : "prog.2.c",
"inventory_order" : 200,
"OK_to_edit" : true,
"display_as" : "c",
"display_via_github" : true,
"entry_text" : "older version 2 of the code"
},
{
"file_path" : "prog.3.c",
"inventory_order" : 200,
"OK_to_edit" : true,
"display_as" : "c",
"display_via_github" : true,
"entry_text" : "older version 3 of the code"
},
{
"file_path" : "prog.obfus.c",
"inventory_order" : 200,
"OK_to_edit" : true,
"display_as" : "c",
"display_via_github" : true,
"entry_text" : "intermedate code obfuscation"
},
{
"file_path" : "prog.pre-format.c",
"inventory_order" : 200,
"OK_to_edit" : true,
"display_as" : "c",
"display_via_github" : true,
"entry_text" : "2023 Mar 8 version of prog.c"
},
{
"file_path" : "2024_ferguson2.tar.bz2",
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
"entry_text" : "download entry tarball"
},
{
"file_path" : ".entry.json",
"inventory_order" : 4000000000,
"OK_to_edit" : true,
"display_as" : "json",
"display_via_github" : true,
"entry_text" : "entry summary and manifest in JSON"
},
{
"file_path" : ".gitignore",
"inventory_order" : 4000000000,
"OK_to_edit" : true,
"display_as" : "gitignore",
"display_via_github" : true,
"entry_text" : "list of files that should not be committed under git"
},
{
"file_path" : ".path",
"inventory_order" : 4000000000,
"OK_to_edit" : false,
"display_as" : "path",
"display_via_github" : false,
"entry_text" : "directory path from top level directory"
},
{
"file_path" : "README.md",
"inventory_order" : 4000000000,
"OK_to_edit" : true,
"display_as" : "markdown",
"display_via_github" : true,
"entry_text" : "markdown source for this web page"
},
{
"file_path" : "index.html",
"inventory_order" : 4294967295,
"OK_to_edit" : false,
"display_as" : "html",
"display_via_github" : false,
"entry_text" : "this web page"
}
]
}
+7
View File
@@ -0,0 +1,7 @@
#
# sort with: ../../bin/sgi.sh
*~
*.dSYM
*.o
.DS_Store
.*.swp
+1
View File
@@ -0,0 +1 @@
2024/ferguson2
Binary file not shown.
+213
View File
@@ -0,0 +1,213 @@
#!/usr/bin/env make
#
# 2024/ferguson2
#############################
# shell used by this Makefile
#############################
SHELL= bash
#######################
# common tool locations
#######################
include ../../var.mk
#####################
# C compiler settings
#####################
# Common C compiler warnings to silence
#
# Example: CSILENCE= -Wno-poison-system-directories
#
CSILENCE= -Wno-bool-operation -Wno-empty-body -Wno-parentheses \
-Wno-misleading-indentation -Wno-unused-value
# Attempt to silence unknown warning options
#
CUNKNOWN= -Wno-unknown-warning-option
# Common C compiler warning flags
#
# NOTE: The addition of -pedantic to CWARN is a challenge that
# You may wish to avoid if it proves too problematic.
# There is NO penalty for removing -pedantic from CWARN.
#
CWARN= -Wall -Wextra -pedantic ${CSILENCE} ${CUNKNOWN}
# Compiler standard
#
CSTD= -std=gnu17
# Compiler bit architecture
#
# Example for 32-bitness: ARCH= -m32
# Example for 64-bitness: ARCH= -m64
#
# NOTE: Normally one should NOT specify a specific architecture.
#
ARCH=
# Defines that are needed to compile
#
# Example: -Dfoo -Dbar=baz
#
CDEFINE= -DDATA="${DATA}"
# Include files that are needed to compile
#
# Example: CINCLUDE= -include stdio.h
#
CINCLUDE=
# Other flags to pass to the C compiler
#
# Example: COTHER= -fno-math-errno
#
COTHER=
# Optimization
#
# NOTE: Feel free to change the level of compiler optimization.
# The "-O3" is just a friendly default you might wish to try.
#
# Example: OPT= -O0 -g
#
OPT= -O3
# Default flags for ANSI C compilation
#
CFLAGS= ${CSTD} ${CWARN} ${ARCH} ${CDEFINE} ${CINCLUDE} ${COTHER} ${OPT}
# Libraries needed to build
#
# Example: LDFLAGS= -lncurses -lm
#
LDFLAGS=
# C compiler to use
#
# NOTE: The IOCCC Judges recommend you leave CC as just "cc"
# and NOT set it to clang, or gcc, or something else
# unless you have a STRONG reason to do so.
#
# Setting CC to something other than "cc" makes your
# code less portable to those who do not have your
# particular C compiler. **hint**
#
# If you want to test your code with a particular C compiler,
# use the make command line. For example:
#
# make all CC=clang
# make all CC=gcc
#
CC= cc
# Compiler add-ons or replacements for clang only
#
ifeq "$(findstring $(CLANG),${CC})" "$(CLANG)"
#
# NOTE: This code is only invoked when CC is "clang"
# such as when you use the make command line:
#
# make all CC=clang
#
CSILENCE+= -Wno-bool-operation -Wno-comma -Wno-empty-body -Wno-missing-prototypes \
-Wno-missing-variable-declarations -Wno-padded -Wno-parentheses \
-Wno-poison-system-directories -Wno-shadow -Wno-disabled-macro-expansion \
-Wno-unsafe-buffer-usage
#
CWARN+= -Weverything
#
endif
# Specific add-ons or replacements for gcc only
#
ifeq "$(findstring $(GCC),${CC})" "$(GCC)"
#
# NOTE: This code is only invoked when CC is "gcc"
# such as when you use the make command line:
#
# make all CC=gcc
#
CSILENCE+=
#
CWARN+=
#
endif
###########################################
# Special Makefile variables for this entry
###########################################
ENTRY= prog
PROG= ${ENTRY}
#
OBJ= ${PROG}.o
TARGET= ${PROG}
#
ALT_OBJ= ${PROG}.alt.o
ALT_TARGET= ${PROG}.alt
# list any data files supplied with your submission
#
# Example: DATA= curds whey
#
DATA= dict
#################
# build the entry
#################
all: data ${TARGET}
@${TRUE}
.PHONY: all alt data everything clean clobber
# how to compile
#
${PROG}: ${PROG}.c
${CC} ${CFLAGS} ${PROG}.c -o $@ ${LDFLAGS}
# alternative executable
#
alt: data ${ALT_TARGET}
@${TRUE}
${PROG}.alt: ${PROG}.alt.c
${CC} ${CFLAGS} ${PROG}.alt.c -o $@ ${LDFLAGS}
# data files
#
data: ${DATA}
@${TRUE}
# both all and alt
#
everything: all alt
@${TRUE}
###############
# utility rules
###############
#
clean:
${RM} -f ${OBJ} ${ALT_OBJ}
clobber: clean
${RM} -f ${TARGET} ${ALT_TARGET}
${RM} -rf *.dSYM
######################################
# optional include of 1337 hacker rulz
######################################
-include 1337.mk ../1337.mk ../../1337.mk
File diff suppressed because it is too large. Load diff
+682
View File
@@ -0,0 +1,682 @@
/*
* although not strictly deobfuscated it is commented to try and explain it more
*
* Please note that I have tried to keep this consistent with the 'final
* product' but I had to make fixes and so some of this might be out of date.
* Still I am trying to redo it all; but some comments might not be strictly
* correct. In which case I hope you can then fully appreciate just how twisted
* this code is (and you probably will anyway)!
*
* Also it is true that some of the variables in the code (which are in the
* submission itself, I believe but perhaps not) are not used. This was a
* mistake but it's not worth the effort to try and find them all, especially as
* it can also cause confusion to people. Trying to parse the code once let
* alone several times (which I did) was not something I wanted to repeat again.
*
* And on that note: there indeed might be things wrongly stated. I tried but
* failed to completely understand what I wrote years back. I have no idea how I
* managed some of this and I don't know what I did in every case so any
* incorrect statements are simply a sign of the obfuscation - a good thing!
*/
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#ifndef DICT
#define DICT "dict"
#endif
/*
* English -> Navajo.
*
* I am sorry but I can't even begin to fathom TRYING to do this again for the
* alt code (X=1), especially as a lot of it is the same but with some subtle
* differences.
*/
#define X 0
/*
* the struct a is the holder of state but the state is, as will be seen soon,
* mostly anonymous. Even the function pointers array has a different order per
* function call! The only time (I think) that there is some form of consistency
* is the *k and *c of the struct a which is the linked list of words for either
* deciphering (alt version with -DX=1) or enciphering (with -DX=0)
*/
struct a {
/*
* some of these are consistent if they're only used in a single function. I
* believe this applies in particular to:
*
* a - for Z(), which parses main() args and acts on them - it is that
* part of main()'s body instead of in main(), this so I could make it
* harder to keep follow with anonymous and inconsistent ordering and
* variables.
* N - first field in dictionary file.
* S - second field in dictionary file.
* A - temporary buffer when reading in dictionary file (which S and N use).
*
* Like I said the order of v changes depending on the function.
*
* However as for S and N it's not so simple because these char *'s are not
* directly strdup()d! Instead the function that does this, called by F()
* but not by those names (I will explain this later) set the 's' (below) in
* an anonymous structure to either S or N in the call. The function being
* called in all cases (even though it does not look like it) is the same in
* every case even though it doesn't look like it; that function is w().
*/
char *w, *c, *s, *x, *t, *u, **h, *S, *N, *A,*(*v[9])(struct a *), *y;
struct a *e, *a, *z, *k, *j;
int l;
} *f, *c;
/* ^ the linked list pointers - f is the list and c each node as the list is
* created. The ->e is the next node which is why this is consistent, at least
* in f.
*/
/*
* this is the alphabet of the language and it's translated for exact matches in
* the alt version especially (it might be used in the encipher - regular -
* version but I'm no longer sure of this).
*
* As can be seen the first element, element 0, is the letter, and the second
* element, element 1, is the translation. The word for C for instance is MOASI
* and it translates to 'cat'. When prog.alt encounters this it will report
* 'cat'. If however prog encounters it it will translate the letters as it's
* not in the dictionary. As well if prog.alt encounters something not in the
* dictionary, say IOCCC, it will spell out the letters.
*
* If one does something like:
*
* ./prog.alt $(./prog ioccc)
*
* then it should print out 'ioccc' (w/o quotes of course).
*/
char *B[][2] = {
{ "A", "WOL-LA-CHEE" } , { "B", "SHUSH" } , { "C", "MOASI" } , { "D", "CHINDI" } ,
{ "E", "DZEH" } , { "F", "CHUO" } , { "G", "JEHA" } , { "H", "TSE-GAH" } ,
{ "I", "YEH-HES" } , { "J", "AH-YA-TSINNE" } , { "K", "BA-AH-NE-DI-TININ" } , { "L", "NASH-DOIE-TSO" } ,
{ "M", "BE-TAS-TNI" } , { "N", "TSAH" } , { "O", "A-KHA" } , { "P", "CLA-GI-AIH" } ,
{ "Q", "CA-YEILTH" } , { "R", "DAH-NES-TSA" } , { "S", "KLESH" } , { "T", "D-AH" } ,
{ "U", "NO-DA-IH" } , { "V", "A-KEH-DI-GLINI" } , { "W", "GLOE-IH" } ,
{ "X", "AL-NA-AS-DZOH" } , { "Y", "TSAH-AS-ZIH" } , { "Z", "BESH-DO-TLIZ" } ,
} , *Y(struct a *) ;
int z, J, C, k, H, D, s, L; size_t n, o; FILE *g;
/*
* these variables would not fit in the structs as they are needed in multiple
* functions. Besides the next node of the linked list we can use the other
* members of the struct anonymously and differently depending on the function
* (to make it extremely hard to keep track of what is what).
*
* Now it would be possible to have these in as different variables but that
* would go well beyond the size limit of rule 2!
*
* I will tell what these are as we encounter them.
*/
char *I(struct a *a)
{
/*
* okay this is truly dreadful.
*
* What z is set to is actually 0. That's it.
*
* Remember that a->z is actually a->j which is f. Well okay you can't know
* that yet but you will.
*/
for (a->a = a->z, z = 0**"1"; a->a; a->a = a->a->e)
{
/*
* the function called (a->v[2] (and remember a is anonymous in this
* function, created by the calling function at time of calling it) is
* Y(). Y() also takes a struct a * but we create it as we call the
* function itself, just like what happened when we were called. We set
* .w to a->a->w (a->a is the current node in the linked list) and .c to
* a->x. But what are these?
*
* Well a->w is assigned (will talk about this later) the first field OR
* second field of the dictionary depending on if we are deciphering or
* enciphering. Of course this file is enciphering but that only adds to
* confusion! As I see it right now, if deciphering (X==1) (which again
* does not happen here) then it is the second field (S in that struct);
* else it is the first field (N in that struct).
*
* And what was 'x'? I am sorry but I can't figure that out but I can
* say that Y() checks if two strings are equal but ignoring !isalpha().
* What this implies is it is either the first or second string as Y()
* acts on exact matches of letters as noted earlier.
*
* Okay doing an fprintf() suggests that it is the input. For instance
* if I were to do ./prog.alt shush the a->x is shush itself.
*/
if (a->v[2](&(struct a){ .w=a->a->w, .c=a->x} ))
{
/*
* just to make sure we print out the stuff before in case there is
* a non-alpha character (or characters)
*/
while (!isalpha(*a->x) && *(a->x)) { L=putchar(*a->x); ++a->x; }
/*
* okay this is also really nasty. Remember that z starts out at 0
* and a->c is (I think!) the first field if X==1 (which is false)
* and the second field if X==0 (enciphering mode, true). Well okay
* so this part is not the nasty part; it's the body of the loop.
*/
while ((z++)[a->a->c])
/*
* this is truly awful. First of all remember that z starts out
* at 0 here and we want to set 's' to something terrible. But
* what in the world is '-*"1"-*"1"- -97? It is -1. But why do I
* want s to be -1? Well I don't. Remember that I'm adding it to
* s which starts out at 0. Thus the first pass this will be
* indeed -1, second pass 0 etc. But why start out at -1 when it
* seems like we're indexing into a->c (a char *)? This is
* extremely nasty too.
*
* Let us break this down a bit more. If s is -1 the !s (will
* end up being?) false. That means the !isupper(a->x[0**"z"])
* will not be called the first time (or perhaps it will, I
* don't know now). Okay but we have to back up a bit. What is
* 0**"z"? That is 1. So what is a->x[1]? This is also very
* ugly. I believe (but I am no longer sure!) that the calling
* code is:
*
* (((*a->h[--a->l]=='e'-':')&&(*a->v)(&(struct a){ .v[0]=I,
* .s=((a->l)[a->h])+1} ) &&++a->l)||(a->v[1](&(struct a){
* .v[2]=Y,.x=((a->l)[a->h])} ),++a->l)); if (g) puts(""); }
*
* Okay actually I'm sorry. I have absolutely no idea what this
* is. But the numbers at least can be explained. Also we can
* break the code down more though, just not determine all the
* values. If !s and isupper(a->x[1]) we will index a->a->c[s].
* But when it's not we will call tolower(a->a->c[s]). Now you
* might ask how in the world a->a->c[s] is legal on the first
* pass. I'm sorry but once again I have no clue I just know it
* does not evaluate to invalid indexing. Even more baffling is
* if the index starts out at 0 (i.e. - -98 instead of - - 97),
* the code does not work! Of course it might not be baffling at
* all but seems that way after trying to parse this nasty nasty
* code.
*/
s=z+-*"1"-*"1"- -97,L=putchar(!s&&isupper(a->x[0**"z"])?a->a->c[s]:tolower(a->a->c[s]));
goto n;
}
}
/*
* if we get here it means that the word is not in the dictionary. And of
* course this is also extremely nasty, the expressions. The 2/ *"z"
* evaluates to 0 and the 1+0**"1" evaluates to 1.
*
* Okay and the number[pointer] indexing is used. As noted above I believe
* K->x is the actual input. I'll try and parse the loop but no guarantees I
* get everything! Much of this was written years ago.
*/
for (z = 2/ *"z", s=1+0**"1"; z[a->x]; ++z)
{
/*
* okay the first part is simple enough. For each !isalpha() char in
* a->x we simply print the char via putchar(). Again I'm unclear what
* a->x is however.
*/
if (!isalpha(z[a->x]))
L=putchar(z[a->x]);
else
{
/*
* so C is if the current char of the current input is lower case. I
* am not sure if we actually need to save this or not but it's
* quite possible we do. It might just be to save bytes (or it might
* not save bytes).
*/
C = islower(z[a->x]);
/*
* This is even nastier than before I guess.
*
* The first one is easy: J is set to 0 and while J < 26 and ...
* hold on, what are we checking against now?
*
* Well remember that B is the letter <-> Navajo word for that
* letter array. So B[J][0] would be the letter itself and B[J][1]
* will be the word itself. But now we have the other horrible
* expressions! Remember that if X (it's always 1 in this file) is
* non-zero it's deciphering and if it's 0 it's enciphering. But
* what is:
*
* 1/ *"1"+s/
* *"1"+1/ *"1"+s/ *"1"+1+(s-s)**"1"+(s*(s-s))**"1"
*
* ? Well first of all let's clarify that this is actually:
*
* 1/ *"1"+s/ *"1"+1/ *"1"+s/ *"1"+1+(s-s)**"1"+(s*(s-s))**"1"
*
* Observe too how a space removed in several places will turn it
* into a comment!
*
* I can try and parse some of this but I'm not really sure of all
* of it. For instance, how is (s*(s-s)) parsed? It would appear that
* it's s * 0 and it might very well be. Assuming that s is 0 (for
* example) it is 1; assuming it is 1 it is ... 1? So it seems. And
* assuming it is 2 is .... 1 again? So it seems! So how in the
* world does this work? Well remember what we're trying to get:
* either the first element or the second, and in this place we
* always need 1. Let's evaluate the other part (I'm sure you can
* figure it out though after this first one): 0! Okay but there's
* something really sneaky here (and above): ask yourself if 's' is
* actually incremented. Got your answer? Okay good! In fact if you
* were to update it you will get bad answers! For instance what
* happens if it's 2? I got 5764801. And then what if it's 0?
* -5764801.
*/
for (J = *"1"-*"1"; J < 26 && B[J][X?1/ *"1"+s/
*"1"+1/ *"1"+s/ *"1"+1+(s-s)**"1"+(s*(s-s))**"1":((((s-1)**"1")**"1")**"1")**"1"]; ++J)
{
/*
* oh dear did I do it again? Yup. I did. But in this case you
* can probably figure it out. Even so I'll evaluate these for
* you. Yes: 0+*"1"-*"1" is 0.
*/
if (*B[J][0+*"1"-*"1"] == toupper(z[a->x]))
{
/*
* Not again! Okay to help out let's remember s is 1. So s *
* 2 is 2. It's the other stuff that's a nightmare.
*
* (s*2)**"9"-171+*"9" == 0
*
* And you probably want to kill me but what is:
*
* *"1"-49 ?
*
* It is 0. And since you killed me you probably now want to
* chop me up into tiny bits but before you do that I guess
* you want to know what s/ *"1"+s/ *"1"+1/ *"1"+(s*s*s) is?
* That evaluates to 1.
*/
for (k = (s*2)**"9"-171+*"9"; H=B[J][X?*"1"-49:s/ *"1"+s/ *"1"+1/ *"1"+(s*s*s)][k]; ++k)
putchar(C?tolower(H):toupper(H));
/*
* this is putchar(' ')
*/
L=putchar(('\0'+'!'-1));
break;
}
}
}
}
/*
* we jumped here if a word was in the dictionary and translated, as
* explained earlier but we also get here if we don't (obviously)
*/
n:
/*
* if the last char we pushed on the stream is a space, don't add a space
*/
if (!isspace(L))
putchar(' ');
return a->s;
}
/*
* Z() used to be the parsing of args in main() and it's also truly dreadful, I
* know. Unfortunately I am not sure if I can explain it all but I will try.
*/
char *Z(struct a *a)
{
/*
* it would appear that a->l was argc of main() (c) and a->h is the argv
* (a) so the condition of the loop is going through all the args. However
* before we can continue we need to see how this function was called:
*
* Z(&(struct a){ .v = { t, I } ,.k=0, .l=c, .h=a, .j=f} );
*
* This means that a->v[0] == t() and a->v[1] == I and a (our struct)'s l is
* c (argc in main()) and our a->l is argv in main(). Additionally a->j is
* the linked list of words.
*/
while (a->h[a->l++])
/*
* I() :-) no longer can parse this completely (as in I don't know all
* of what it does) but I'll still try breaking it down a bit. I make no
* promises however. I will break the line up to help out, though it
* might not do that much good.
*/
/*
* first notice how where the loop condition (postfix) increments argc
* (a->l) the body of the loop immediately decrements (prefix decrement)
* and compares the first char of the current arg to - what? The
* expression 'e'-':' evaluates to '+'. This is checking for file as
* input.
*/
(((*a->h[--a->l]=='e'-':')&&
/*
* Okay remember what I said above about x->v[0] being t() ? That means
* that this is calling t().
*/
(*a->v)
/*
* ...and here we create the anonymous struct * for t(). As you can see
* the first function pointer in the v[] array is I(). Observe how in
* _this_ function v[0] is a different function! In this function v->[0]
* is t() but in this next function (t() itself!) it will be I()! But how
* do we construct it? Well...
*
* The &(struct a) is important because we can't do:
*
* (struct a *)
*
* because it is an error:
*
* prog.c:67:41: error: initialization of non-aggregate type 'struct a *'
* with a designated initializer list.
*
* (Okay the line numbers are different but you get the idea.)
* But since we need a pointer we can use & to get the address of the
* anonymous struct.
*/
(&(struct a)
/*
* Now the fun part! The object we create is in the {}s (of course). Each
* field, even pointers use '.' (which as shown above is required as we
* can't do { ->s=... } as it's also illegal and this is why we make it a
* struct that's not a pointer and take its address to get past that
* problem).
*
* Here we are saying that in the anonymous struct we're passing to t()
* the v[0] is I() and the s (a char *) is - what? Well this is awful. Do
* you remember that a->l is argc and a->h is argv from main()? So
*
* ((a->l)[a->h])
*
* is argv[argc]. Now the usual C programmer would point out that that is
* NULL. But something *extremely* nasty was done before we called this
* function. I will explain it (or rather try to) in main() but it looks
* like this:
*
* F((c=((~~!!~!9u|2**"9"-15u/ *"0"-2u)<<~~!~!~9u),c&=9u,&(struct a){ .l=1, .s=a[c],.v= { &w, &w } } ));
*
* Remember that c in main() (or our a->l) is argc. So this horrible call
* resets c to some value, in particular 1 though that line does a lot
* more.
*
* So what this part does is, again, set OUR v[0] to I() which we are now
* calling, remember, and set OUR s (a char *) that is a->s to beyond
* (argv[argc])+1 (starting out with argc == 1). This also sets .j to
* a->k which is actually - what? This is sneaky. In main() when calling
* Z() a->j is set to f (the linked list) but here we're setting a->j (in
* the function call) to a->k. But in main() in calling Z() a->k is set
* to NULL! Further down though we will do .z=a->j so this might (or
* might not) be called a red herring.
*
* But of course we're not done!
*/
{ .v[0]=I, .j=a->k, .s=((a->l)[a->h])+1} )
/*
* I'm sure that some people are screaming by now, if they even got this
* far, but here we are doing something sneaky (imagine that) too.
*
* Remember how the loop condition incremented argc but the loop body
* immediately decremented it (since we needed to check the first char
* of the first arg, not the next)? Well the problem is now that we have
* checked that we nee to get x-> (argc) incremented again, but prefix.
*/
&&++a->l)||
/*
* But of course if these (what are these? Please go back up and check, I
* too am getting tired of trying to parse all this and I have a lot more
* to do!) did not succeed we still have more nastiness.
*
* a->v[1] is I() so now main() is (or rather we, Z(), are on behalf of
* main()) calling t with - yup, ANOTHER anonymous struct a *!
*/
(a->v[1](&(struct a)
/*
* The good news at least is you know how the struct is constructed but
* what are we doing here and why?
*
* Well here we are saying that in the call to I() that v[2] is Y() (not
* again) and x (a char *, not like x here which is a struct a *) is set
* to the current argv[argc].
*
*/
{ .v[2]=Y,.x=((a->l)[a->h]),.z=a->j}
/*
* this is the end of the function call but we're not actually done just
* yet.
*
* Observe how we are prefix incrementing a->l again (argc in main())!
*/
),++a->l));
/*
* Okay but you might ask yourself: how come we're using the comma
* operator here? Well because at this point although we do need to
* call I() we also need to increment argc (a->l) yet again!
*
* But...why? After all the body of the loop does this! Not quite. It
* does do this but that was on the left hand side (lhs) of the body
* of the loop and the beginning of the body of the loop decremented
* it! So in order to get argc back to the next one we have to
* increment it as a side effect!
*/
/*
* we only do this because we need to return a char *; a simple return
* 0 would also work and so would a return NULL.
*/
return "";
}
/*
* this function is simpler though there still are some potentially confusing
* things going on here. Yes this looks kind of like a rot13 implementation but
* the dictionary file actually has Z -> A, Y -> B, X -> C etc. But what was r
* formed of? Actually this is extremely sneaky.
*/
char *w(struct a *a)
{
/*
* Okay but you might notice I did something nasty again. Okay I did
* multiple nasty things! You probably can figure these out at least though.
* Anyway, 1/ *"s" is 0 and 'k'-'*' evaluates, as you might have guessed, to
* 'A'.
*
* That means start out at 0, go through a->s - well you get the idea. But
* what is a->s? Well that is the dictionary file of course but that'll be
* discussed in the respective function.
*/
for (D = 1/ *"s"; a && a->s && D[a->s] && (a->s[D]) &&
(a->s[D] = isupper(a->s[D])?("ZYXWVUTSRQPONMLKJIHGFEDCBA"
)[(a->s[D] - ('k'-'*'))]:D[a->s]); ++D) ;
/*
* at one point it was possible for a to be NULL so we checked here. It
* shouldn't be needed now though.
*/
return a?a->s:"";
}
/*
* this is kind of like strcasecmp() except that it ignores !isalpha(). There is
* only one thing that might not be immediately obvious so I'll only comment on
* that. Well okay as you'll see a->w is the first string and a->c is the
* second. But besides that it's pretty easy.
*/
char *Y(struct a *a)
{
if (*a->w && *a->c && a->w[1] && a->c[1])
while (*a->w && *a->c)
{
while (!isalpha(*a->w) && *a->w++);
while (!isalpha(*a->c) && *a->c++);
if (!*a->c || !*a->w || tolower(*a->w) != tolower(*a->c))
break;
++a->w; ++a->c;
}
/*
* remember that we need to return a char * so what this does is it
* evaluates to either a 'true' value (non NULL string) or a NULL pointer.
* This can be checked as if an int but matching the requirement that it
* returns a char * (for the function pointer array).
*/
return !*a->w&&!*a->c?"":0;
}
/*
* This function reads in the dictionary file as the first line might suggest.
*/
char *F(struct a *a)
{
g = fopen(DICT, "r");
if (g)
{
/*
* We use getline(3) even though there is the bug I mentioned in the
* remarks file because we can have it dynamically allocate memory. It
* stores the newline but so does fgets() and we don't really care about
* it. In fact we do not want to remove the newline!
*/
while (getline(&a->A, &n, g) != -1)
/*
* So we were called like this:
*
* F((c=((~~!!~!9u|2**"9"-15u/ *"0"-2u)<<~~!~!~9u),c&=9u,&(struct a){ .l=1, .s=a[c],.v= { &w, &w } } ));
*
* I am not going to explain the first part until main() but the
* second part, which can only happen by the comma operator (like in
* other places) and which we use as we need the other thing to be
* done first, it sets up our struct a *a's .l to 0, v[0] to &w and
* v[1] to &w. Why both? To mislead of course!
*/
/*
* this part is easy but note how we use a->A and a->S as the first
* and second column. They are not really needed except to have them
* also in the struct (and even if they were not NULL we assign them
* first).
*/
if ((a->N = strtok(a->A, "\t")) && (a->S = strtok(0, "\t")))
{
/*
* Oh no! Not another bonkers calculation! Well fortunately you can
* probably put together what it is but if not it evaluates to 1.
* Basically we're allocating a struct a *.
*/
c = calloc(1**"0"-47, sizeof *c);
/*
* more fun with anonymous structs here as we populate the struct a *
* we just created. As I might have said elsewhere if X is non-zero
* (never true here) it means decipher and otherwise it means encipher.
* means. But observe how c->w can be one or the other just like
* c->c. That's because the X check is done in other places too.
*
* Now about these structs being created. For c->w it is a strdup()d
* copy of the result of calling w() on either a->S or a->N.
* Similarly we are doing the same thing (but opposite order) for
* c->c. But hold on a moment you might think. Why then are we
* assigning multiple values? Well actually we're not. This is just
* the copy but both are always assigned to the w()'s struct a *'s s
* (a char *).
*
* As for the function calls:
*
* a->l is 0 and a->e is NULL but even if it wasn't it would
* evaluate to 1 and so a->v[a->l], a->v[a->e==0] (as 1 or 0)
* and a->v[1] all point to w()!
*/
c->w = strdup(X?a->v[a->l](&(struct a){ .s=a->S} ):a->v[a->e==0](&(struct a){ .s=a->N} ));
c->c = strdup(X?a->v[1](&(struct a){ .s=a->N} ):a->v[a->l](&(struct a){ .s=a->S} ));
c->e = f;
f = c;
}
free(a->A);
a->A = 0;
fclose(g);
g = 0;
}
else puts("couldn't open dict");
return "";
}
/*
* fortunately t() is a bit easier - although you might remember the call to it
* is not.
*/
char *t(struct a *a)
{
/*
* this assigns o with 0
*/
o = *"";
g = fopen(a->s, "r");
a->A = 0;
while (g && getline(&a->A, &o, g) != -1)
{
/*
* the usual suspect: we're using a->S as a temporary value for strtok()
* to extract the first field (space or tab delimited)
*/
a->S = strtok(a->A, " \t");
while (a->S)
/*
* strdup() is useful here
*/
if ((a->y=strdup(a->S))) {
/*
* if a token was found then we will call a->v[0] which is I don't
* even know; I'm really tired doing this and I have more to parse
* for you - sorry! Anyway in that function v[2] will be Y() and w
* will be S (the token we extracted).
*/
(*a->v)(&(struct a){ .v[2]=Y, .x=a->y} );
/*
* get next token for this line
*/
a->S = strtok(0, " \t"); free(a->y); a->y=0;
/*
* if the last char we pushed on the stream is a space
* don't add a space
*/
if (L!='\n')putchar(' ');
}
}
if(g) { clearerr(g); fclose(g); g = 0; free(a->A); a->A= 0; }
return "";
}
/*
* Good news: we've reached the last function!
*
* Bad news: it's also dreadful, really dreadful!
*/
int main(int c, char **a)
{
/*
* Do I have to try and parse this? Okay well I did explain in one function
* (F() itself) the second half but I did not explain the first half so I'll
* try here.
*
* Remember how I said (I think I said anyway) that argc is set to 1? Well
* that is because:
*
* ((~~!!~!9u|2**"9"-15u/ *"0"-2u)<<~~!~!~9u)
*
* evaluates to 113 and 113 & 9 is 1. The other parts are just a
* distraction.
*
* Notice the double {} there (that's not the only place this occurs though
* I think).
*/
F((c=((~~!!~!9u|2**"9"-15u/ *"0"-2u)<<~~!~!~9u),c&=9u,&(struct a){ .l=1, .s=a[c],.v= { &w, &w } } ));
/*
* This was the one that processes the args. It is not a hard call to deal
* with (the function Z() itself is of course): call Z() with an anonymous
* struct a * with v[0] == t(), v[1] == I(), l == c (argc), a == a
* (argv) and k == 0 (NULL) and j == f (linked list of words)
*/
Z(&(struct a){ .v = { t, I } ,.k=0, .l=c, .h=a, .j=f} );
puts("");
/*
* Now go have some good chocolate or some great pie! You deserve it!
*/
}
+677
View File
@@ -0,0 +1,677 @@
Z DLO-OZ-XSVV ZMG
Z YV-OZ-HZMZ ZKKOV
Z GHV-MROO ZCV
Y MZ-SZHS-XSRW YZWTVI
Y HSFHS YVZI
Y GLRHS-QVS YZIIVO
X NLZHR XZG
X GOZ-TRM XLZO
X YZ-TLHSR XLD
W YV WVVI
W XSRMWR WVERO
W OSZ-XSZ-VS WLT
V ZS-QZS VZI
V WAVS VOP
V ZS-MZS VBV
U XSFL URI
U GHZ-V-WLMRM-VV UOB
U NZ-V ULC
T ZS-GZW TRIO
T PORAARV TLZG
T QVSZ TFN
S GHV-TZS SZRI
S XSZ SZG
S ORM SLIHV
R GPRM RXV
R BVS-SVH RGXS
R Z-XSR RMGVHGRMV
Q GPVOV-XSL-T QZXPZHH
Q ZS-BZ-GHRMMV QZD
Q BRO-WLR QVIP
P QZW-SL-OLMR PVGGOV
P YZ-ZS-MV-WR-GRMRM PVB
P PORAARV-BZAARV PRW
O WRYVS-BZAARV OZNY
O ZS-QZW OVT
O MZHS-WLRV-GHL ORLM
N GHRM-GORGR NZGXS
N YV-GZH-GMR NRIILI
N MZ-ZH-GHL-HR NLFHV
M GHZS MVVWOV
M Z-XSRM MLHV
L Z-PSZ LRO
L GOL-XSRM LMRLM
L MV-ZSH-QZS LDO
K XOZ-TR-ZRS KZMG
K YR-HL-WRS KRT
K MV-ASLMR KIVGGB
J XZ-BVROGS JFREVI
I TZS IZYYRG
I WZS-MVH-GHZ IZN
I ZS-OLHA IRXV
H WRYVS HSVVK
H POVHS HMZPV
G W-ZS GVZ
G Z-DLS GLLGS
G GSZM-ARV GFIPVB
F HSR-WZ FMXOV
F ML-WZ-RS FGV
E Z-PVS-WR-TORMR ERXGLI
D TOLV-RS DVZHVO
C ZO-MZ-ZH-WALS XILHH
B GHZS-ZH-ARS BFXXZ
A YVHS-WL-GORA ARMX
XLIKH WRM-MVS-RS XOZM
WRERHRLM ZHSRS-SR HZOG
IVTRNVMG GZYZSZ VWTV DZGVI
YZGGZORLM GZXSVVMV IVW HLRO
XLNKZMB MZPRZ NVCRXZM
KOZGLLM SZH-XORHS-MRS NFW
HVXGRLM BL-RS YVZWH
HJFZW WVYVS-OR-ARMR YOZXP HSVVK
XLNNZMWRMT TVMVIZO YRS-PVS-SV DZI XSRVU
NZQLI TVMVIZO HL-MZ-PRS GDL HGZI
YIRTZWRVI TVMVIZO HL-Z-OZ-RS LMV HGZI
XLOLMVO ZGHZS-YVHS-OV-TZR HROEVI VZTOV
ORVFGVMZMG XLOLMVO XSV-XSRO-YV-GZS-YVHS-OVTZR HROEVI LZP OVZU
NZQLI XSV-XSRO-YV-GZS-LOZ TLOW LZP OVZU
XZKGZRM YVHS-OVTZR-MZS-PRS GDL HROEVI YZIH
ORVFGVMZMG YVHS-OVTZR-Z-OZS-RS LMV HROEVI YZI
XLNNZMWRMT LUURXVI SZHS-PZB-TR-MZ-GZS DZI XSRVU
VCVXFGREV LUURXVI YRS-WZ-SLO-MVSR GSLHV RM XSZITV
ZUIRXZ ASRM-MR YOZXPRVH
ZOZHPZ YVS-STZ DRGS DRMGVI
ZNVIRXZ MV-SV-NZS LFI NLGSVI
ZFHGIZORZ XSZ-BVH-WVHR ILOOVW SZG
YIRGZRM GLS-GZ YVGDVVM DZGVIH
XSRMZ XVS-BVSH-YVHR YIZRWVW SZRI
UIZMXV WZ-TSZ-SR YVZIW
TVINZMB YVHS-YV-XSZ-SV RILM SZG
RXVOZMW GPRM-PV-BZS RXV OZMW
RMWRZ ZS-OV-TZR DSRGV XOLGSVH
RGZOB WLS-SZ-XSR-BZOR-GXSR HGFGGVI
QZKZM YVS-MZ-ZOR-GHLHRV HOZMG VBV
KSRORKKRMV PV-BZS-WZ-MZ-OSV UOLZGRMT RHOZMW
IFHHRZ HROZ-TLO-XSR-RS IVW ZINB
HLFGS ZNVIRXZ HSZ-WV-ZS-MV-SR-NZS HLFGS LFI NLGSVI
HKZRM WVYZ-WV-MRS HSVVK KZRM
KOZMVH DL-GZS-WV-MV-RS ZRI ULIXV
WREV YLNYVI TRMR XSRXPVM SZDP
GLIKVWL KOZMV GZH-XSRAARV HDZOOLD
LYH KOZMV MV-ZH-QZS LDO
URTSGVI KOZMV WZ-SV-GRS-SR SFNNRMT YRIW
YLNYVI KOZMV QZB-HSL YFAAZIW
KZGILO KOZMV TZ-TRS XILD
GIZMHKLIG ZGHZS VZTOV
HSRKH GLS-WRMVS-RS HVZ ULIXV
YZGGOVHSRK OL-GHL DSZOV
ZRIXIZUG GHRWR-NLUUZ-BV-SR YRIW XZIIRVI
HFYNZIRMV YVHS-OL RILM URHS
NRMV HDVVKVI XSZ YVZEVI
WVHGILBVI XZ-OL HSZIP
GIZMHKLIG WRMVS-MZB-BV-SR NZM XZIIRVI
XIFRHVI OL-GHL-BZAARV HNZOO DSZOV
NLHJFRGL YLZG GHV-V NLHJFRGL
QZMFZIB ZGHZS-YV-BZA HNZOO VZTOV
UVYIFZIB DLA-XSVRMW HJFVZPB ELRXV
NZIXS GZS-XSROO HNZOO KOZMG
ZKIRO GZS-GHL YRT KOZMG
NZB GZS-GHLHRV HNZOO KOZMG
QFMV YV-MV-VS-VS-QZS-GHL YRT KOZMGRMT
QFOB YV-MV-GZ-GHLHRV HNZOO SZIEVHG
ZFTFHG YV-MVVM-GZ-GHL YRT SZIEVHG
HVKGVNYVI TSZD-QRS SZOU
LXGLYVI MRO-XSR-GHLHRV HNZOO DRMW
MLEVNYVI MRO-XSR-GHL YRT DRMW
WVXVNYVI BZH-MRO-GVH XIFHGVW HMLD
ZYZMWLM BV-GHZM IFM ZDZB UILN
ZYLFG DLOZ-XSR-Z-NLUUZ-TZSM ZMG URTSG
ZYIVZHG DLOZ-XSVV-YV-BRVW ZMG YIVZHG
ZXXLNKORHS FO-HL ZOO WLMV
ZXXLIWRMT YV-PZ-SL ZXXLIWRMT GL
ZXPMLDOVWTV SZMLG-WARVW ZXPMLDOVWTV
ZXGRLM ZS-SZ-GRMS KOZXV LU ZXGRLM
ZXGRERGB ZS-SZ-GRMS-B ZXGRLM VMWRMT RM B
ZWVJFZGV YVS-TSZ VMLFTS
ZWWRGRLM RS-SV-WV-MWVO ZWWRGRLM
ZWWIVHH BR-XSRM-SZ-GHV ZWWIVHH
ZWQZXVMG YV-TZSR MVZI
ZWQFHG SZH-GZR-MVO-PZW ZWQFHG
ZWEZMXV MZH-HVB ZSVZW
ZWERHV MZ-MVGRM ZWERHV
ZVIRZO YV-ALMA HGRMTVI
ZUURINZGREV OZMS ZUURINZGREV
ZUGVI YR-PSZ-WR ZUGVI
ZTZRMHG YV-MZ-TMRHS ZTZRMHG
ZRW VWZ-VOV-GHLLW ZRW
ZRI MROXSR ZRI
ZRIWLNV MROXSR-YVTSZM ZRIWLNV
ZOVIG SZ-RS-WVH-VV ZOVIG
ZOO GZ-Z-GZS ZOO
ZOORVH MRS-SR-XSL ZOORVH
ZOLMT DLOZXSVV-HMVA OLMT ZMG
ZOHL VS-WL ZOHL
ZOGVIMZGV MZ-PVV-TL-MV-MZM-WVB-SV HVXLMW KLHRGRLM
ZNYFHS PSZX-WZ ZNYFHS
ZNNFMRGRLM YVS-VOR-WLS-YV-XZS-ZOR-GZH-ZR ZNNFMRGRLM
ZNKSRYRLFH XSZO UILT
ZMW WL ZMW
ZMTOV WVV-XZSM HOZMGRMT
ZMMVC RS-MZB-GZMR ZWWRGRLM
ZMMLFMXV YVS-SZ-L-WAV ZMMLFMXV
ZMGR DLO-OZ-XSVV-GHRM ZMG RXV
ZMGRXRKZGV MR-QLO-ORS ZMGRXRKZGV
ZMB GZS-SZ-WZS ZMB
ZKKVZI BV-PZ-SZ-BZ ZKKVZI
ZKKILZXS YR-XSR-LO-WZS ZKKILZXS
ZKKILCRNZGV GL-PFH-WZM ZKKILCRNZGV
ZIV TZS-GHL YRT IZYYRG
ZIVZ SZA-Z-TRS ZIVZ
ZINLI YVHS-BV-SZ-WZ-WR-GVS RILM KILGVXGLI
ZINB OVR-XSZ-RS-BRO-PMVV-RS ZINB
ZIIREV RO-WZB ZIIREV
ZIGROOVIB YV-ZO-WLS-GHL-OZMR NZMB YRT TFMH
ZH ZSXV ZH
ZHHZFOG ZOGHVS-V-QZS-SV URIHG HGIRPVI
ZHHVNYOV WV-QR-PZHS YFMXS GLTVGSVI
ZHHRTM YZS-WVS-GZSM ZHHRTM
ZG ZS-WR ZG
ZGGZXP ZO-GZS-QV-QZB ZGGZXP
ZGGVNKG YL-L-MV-GZS GIB
ZGGVMGRLM TRSZ ZGGVMGRLM
ZFGSVMGRXZGLI SZMR-YZ-ZS-SL-ARM PMLD ZYLFG
ZFGSLIRAV YV-YL-SL-HMVV ZFGSLIRAV
ZEZROZYOV GZ-HSLA-GVS-RS ZEZROZYOV
YZTTZTV POZROS YZTTZTV
YZMAZR MV-GZS ULLO GSVN
YZITV YVHS-MZ-VOG YZITV
YZIIZTV YVHS-YZ-DZ-XSRMW YZIIZTV
YZIIRVI YRS-XSZM-MR-ZS RM GSV DZB
YZHV YRS-GHVV-WRS YZHV
YZGGVIB YRS-YV-ZO-WLS-GPZ-RS GSIVV TFMH
YZGGOV WZ-ZS-SR-WAR-GHRL YZGGOV
YZB GLS-ZS-SR-TSRMS YZB
YZALLPZ ZS-ASLO YZALLPZ
YV GHVH-MZS YVV
YVZXS GZS-YZSM YVZXS
YVVM GHVH-MZS-MVH-XSVV YVV MFG
YVULIV YRS-GHV-WRS YVULIV
YVTRM SZ-SLO-ARA XLNNVMXV UILN
YVOLMT GHVH-MZS-HMVA OLMT YVV
YVGDVVM YR-GZS-PRA YVGDVVM
YVBLMW YROS-OZ WR WLDM YVOLD
YRELFZX VSO-MZH-GVS YIFHS HSVOGVI
YLNY Z-BV-HSR VTTH
YLLYB GIZK WRMVS-YZ-DSLZ-YOVSR NZM GIZK
YLIMV BV-XSRV-GHZS YLIM VOP
YLFMWZIB PZ-BZS-YR-MZ-SZH-WALS YLFMWZIB
YFOO WLAVI WLOZ-ZOGS-DSLHS YFOO HOVVK
YFMPVI GHZH-PZ HZMWB SLOOLD
YFG MVS-WRS YFG
YB YV-TSZ YB
XZYOV YVHS-OPLS DRIV ILKV
XZORYVI MZSO-PRSW NLEV ZILFMW
XZNK GL-ZOGHVS-SLTZM GVNKLIZIB KOZXV
XZNLFUOZTV WR-MVH-RS SRW
XZM BZS-WR-ARMR XZM
XZMMLMVVI YV-ZO-WLS-GHL-WVB-WRO-WLM-RTR YRT TFM LKVIZGLI
XZKZXRGB YV-MVO-ZS XZKZXRGB
XZKGFIV BRH-MZS XZKGFIV
XZIIB BL-OZROS XZIIB
XZHV YRG-HZS XZHV
XZHFZOGB YRS-WRM-MV-WVB KFG LFG LU ZXGRLM
XZFHV YR-MRS-MZMR XZFHV
XZEV GHZ-LMW ILXP XZEV
XVRORMT WZ-GVO-QZB HVZO
XVNVGVIB QRHS-XSZ ZNLMT WVEROH
XVMGVI FOS-MV-RS XVMGVI
XSZMTV GSOZ-TL-Z-MZG-AZS XSZMTV
XSZMMVO SZ-GZOSR-BZAARV HNZOO HRMTVI
XSZITV ZS-GZS-TR-QZS XSZITV
XSVNRXZO GZ-MVV ZOPZOR
XRIXOV MZH-KZH XRIXOV
XRIXFRG ZS-SVS-SZ-WZROS XRIXFRG
XOZHH ZOGS-ZS-Z-GVS XOZHH
XOVZI BL-ZS-SLO-ASLW XOVZI
XORUU GHV-BV-XSVV XORUU
XOLHV FO-XSR-FS-MZO-BZS XOLHV
XLZHG TFZIW GZ-YZH-WHRHHR HSLIV IFMMVI
XLWV BRO-GZH KVXP
XLOLM MZPR-ZOS--WVS-WZ-ZO-ASRM GDL HKLGH
XLOFNM ZOGS-PZB-MV-ARS XLOFNM
XLNYZG WZ-ZS-SR-QRS-TZMS URTSGRMT
XLNYRMZGRLM ZO-GPZH-VR NRCVW
XLNV SFX-JFL XLNV
XLNNZ GHZ-MZ-WZSO GZRO WILK
XLNNVIXRZO MZR-VO-MV-SR XLNNVIXRZO
XLNNRG SFX-JFL-OZ-QRHS XLNV TOLEV
XLNNFMRXZGRLM SZ-MVS-ZO-VMQR NZPRMT GZOP
XLMXVZO YV-PR-ZHA-QLOV XLMXVZO
XLMXVMGIZGRLM GZ-OZ-SR-QRS LMV KOZXV
XLMXFHHRLM DSV-SFH-WRO XLMXFHHRLM
XLMWRGRLM ZS-SL-GZR SLD RG RH
XLMUVIVMXV YV-PV-BZ-GR GZOP LEVI
XLMURWVMGRZO MZ-MRO-RM PVKG HVXIVG
XLMURIN GZ-Z-MVS NZPV HFIV
XLMJFVI Z-PVS-WVH-WORM DLM
XLMHRWVI MV-GHZ-XZH GSRMP RG LEVI
XLMHRHG YROS XLMHRHG
XLMHLORWZGV ZS-SRS-SR-MRO KFG GLTVGSVI
XLMHGIFXG ZSO-MVS GL NZPV
XLMGZXG ZS-SR-WR-WZRO XLNV GLTVGSVI
XLMGRMFV GZ-BR-GVS XLMGRMFV
XLMGILO MZR-TSRA XLMGILO
XLMELB GPZO-PZS-L-MVO NLERMT LM DZGVI
XLLIWRMZGV YVS-VS-SL-ARM-MZ-ZH-WALS PMLDM ORMVH
XLFMGVI ZGGZXP DLOGZS-ZO-PR-TR-QVS XLFMGVI ZXG
XLFIHV XL-QR-TLS XLFIHV
XIZUG ZS-GLS MVHG
XIVVP GLS-MRO-GHZMS EVIB ORGGOV DZGVI
XILHH ZO-M-ZH-WALS XILHH
XFY HSFHS-BZSA XFY
WZHS FH-WALS WZHS
WZDM SZ-BVOR-PZSM WZDM
WVUVMHV ZS-PRM-XRO-GLS WVUVMHV
WVTIVV MZSO-PRSW WVTIVV
WVOZB YV-HRGRSM WVVI OZB
WVOREVI YV-YRS-ARSWV WVVI OREVI
WVNLORGRLM ZS-WVVO-GZSR YOLD FK
WVMHV SL-WROS-XOZ DVG
WVKZIG WZ-WV-BZS WVKZIG
WVKZIGNVMG SLTZM WVKZIGNVMG
WVHRTMZGV BV-PSR-WVO-MVR KLRMG LFG
WVHKVIZGV ZS-WZ-ZS-SL-WAZS WLDM GL OZHG
WVGZXS ZO-XSZ-MRO WVGZXSVW
WVGZRO YV-YVS-HSZ WVVI GZRO
WVGLMZGLI ZS-WVVO-GZSR(LI) YOLDM FK
WRUURXFOG MZ-MV-POZS WRUURXFOG
WRT-RM OV-VS-TZWV WRT RM
WRIVXG ZS-QR-TL WRIVXG
WRHVNYZIP VS-SZ-QZB TVG LFG
WRHKZGXS OZ-XSZR-VM-HVRH-YV-QZB WLT RH KZGXS
WRHKOZXV SRS-WL-MZO NLEV
WRHKOZB YV-HVRH-MZ-MVS WVVI RH KOZB
WRHKLHRGRLM Z-SL-GVB WRHKLHRGRLM
WRHGIRYFGV MZS-MVS WRHGIRYFGV
WRHGIRXG YV-GSRM-BZ-MR-XSV WVVI RXV HGIRXG
WL GHV-OV HNZOO KFK
WLXFNVMG YVS-VS-SL-ARMA WLXFNVMG
WIREV ZS-MLO-PZSO WIREV
WFW WR-TRHH-BZSARV HNZOO WFNNB
WFNNB WR-TRHH-GHL YRT WFNNB
VZXS GZ-OZSR-MV-ARMR-TL VZXS
VXSVOLM DSL-WAZS ORMV
VWTV YV-YZ-SR VWTV
VUUVXGREV YV-WVOS-MVVW VUUVXGREV
VUULIG BVZ-TL DRGS ZOO BLFI NRTSG
VOVNVMG ZS-MZ-MZR GILLK IVKIVHVMGRMT LGSVIH
VOVEZGV ZOR-PSR-SL-MV-LSZ VOVEZGV
VORNRMZGV SZ-YVS-GL-WARO VORNRMZGV
VNYZIP VS-SL-QZB TVG LM
VNVITVMXB SL-MVA-XOZ VNVITVMXB
VNKOZXVNVMG OZ-ZA-MRO VNKOZXVNVMG
VMXRIXOV BV-MZH-GVS VMXRIXOV
VMXLFMGVI YR-PSZMS TL ZTZRMHG
VMTZTV Z-SZ-MV-SL-GZ ZTIVVW
VMTRMV XSRWR-YR-GHR-GHRMV VMTRMV
VMTRMVVI WZB-WRO-QZS-SV VMTRMVVI
VMOZITV MRS-GHZ-TLS-ZO-MVS NZPV YRT
VMORHG YRS-ARS-Z-WZ-BR-OZS VMORHG
VMGRIV GZ-Z-GZS VMGRIV
VMGIVMXS V-TZW-ZS-MV-ORS NZPV WRGXS
VMEVOLK Z-AZS-TR-BZ VMEVOLK
VJFRKNVMG BZ-SZ-WV-GZSR VJFRKNVMG
VIVXG BVS-ARSM HGZMW FK
VHXZKV Z-AVS-SZ-TV-BZS VHXZKV
VHGZYORHS SZH-GZB-WAZS VHGZYORHS
VHGRNZGV YRS-PV-GHV-SLW-WVH-PVA VHGRNZGV
VEZXFZGV SZ-MZ VEZXFZGV
VCXVKG MVS-WRS VCXVKG
VCXVKG MZ-DLO-MV VCKVXG
VCXSZMTV ZOS-MZSO-BZS VCXSZMTV
VCVXFGV Z-WL-MRO VCVXFGV
VCKOLHREV ZS-WVO-GZSR VCKOLHREV
VCKVWRGV HSRO-OLS HKVVW FK
VCGVMW MV-GWZOV NZPV DRWV
VCGIVNV ZO-GHZM-ZS-YZSN VZXS VMW
UZRO XSZ-ZO-VRMW UZRO
UZROFIV BVVH-TSRM UZROFIV
UZIN NZR-YV-SV-ZSTZM ULC ZIN
UVVW WAVS-XSR-BLM UVVW
URVOW XOL-WRS URVOW
URVIXV GLS-YZS-SZ-AHRW ZUIZRW
UROV YZ-VS-XSVA UROV
URMZO GZS-ZS-PDL-WRS GSZG RH ZOO
UOZNV GSILDVI XLS-ZS-TSRO-GORW UOZNV GSILDVI
UOZMP WZS-WR-PZW UOZMP
UOZIV DL-XSR ORTSG HGIVZP
UORTSG NZ-V-ZH-AOLOR ULC ORTSG
ULIXV GZ-MZ-MV-OZWR DRGSLFG XZIV
ULIN YV-XSZ ULIN
ULINZGRLM YV-XSZ-BV-OZROS ULINZGRLM
ULIGRURXZGRLM ZS-MZ-HLAR XORUU WDVOORMT
ULIGRUB ZS-MZ-HLAR-BZAARV HNZOO ULIGRURXZGRLM
ULIDZIW GVSR OVG'H TL
UIZTNVMGZGRLM YVHS-BZAARV HNZOO NVGZO
UIVJFVMXB SZ-GZOSR-GHL YRT HRMTVI
UIRVMWOB MVS-SVXSL-WZ-MV UIRVMWOB
UILN YR-GHZM-WVSM UILN
UFIMRHS BVZH-MRO UFIMRHS
UFIGSVI DL-MZH-WR UFIGSVI
TZIIRHLM BZS-Z-WZ-SZO-BLM-RS GZPV XZIV LU
TZHLORMV XSRWR-YR-GLS TZHLORMV
TIVMZWV MR-NZ-HR KLGZGLVH
TFZIW MR-WRS-WZ-SR TFZIW
TFRWV MZS-V-GSOZR TFRWV
SZOO OSR-GZ-Z-GZ SLIHV ZOO
SZOU GIZXP ZOS-MRS-QZS-Z-JFSV IZXV GIZXP
SZOG GZ-ZPDZR-R SZOG
SZMWOV YVG-HVVM SZMWOV
SZEV QL SZEV
SVZWJFZIGVI MZ-SZ-GZS-GZ-YZ-SLTZM SVZWJFZIGVI
SVOW DL-GZS-GZ-VS-WZSM-LS SVOW(KZHG GVMHV)
SRTS DL-GZS SRTS
SRTS VCKOLHREV YV-ZO-WLS-YV-XZ-YRS-WARO-RTR KLDVIUFO HSVOO
SRTSDZB DL-GZS-SL-MV-GVS SRTS DZB
SLOW DL-GPZMS SLOW
SLHKRGZO Z-AVB-ZO-RS KOZXV LU NVWRXRMV
SLHGROV Z-MZS-MV-WARM MLG UIRVMWOB
SLDRGAVI YV-VO-WLM-GH-JFLWR HSLIG YRT TFM
ROOFNRMZGV DL-XSR ORTSG FK
RNNVWRZGVOB HSRO-OLS RNNVWRZGVOB
RNKZXG Z-SV-WRH-TLS RNKZXG
RNKLIGZMG YZ-SZH-GVS RNKLIGZMG
RNKILEV SL-WLO-ASLMW RNKILEV
RMXOFWV VO-GHLW RMXOFWV
RMXIVZHV SL-MZOS RMXIVZHV
RMWRXZGV YZ-SZO-MVS GVOO ZYLFG
RMUZMGIB GZ-MVS-MZO-WZSR RMUZMGIB
RMUROGIZGV BV-TSZ-MV-QVS DVMG GSILFTS
RMRGRZO YVS-VW-WV-WORW YIZMW
RMHGZOO VSW-GMZS RMHGZOO
RMHGZOOZGRLM MZH-MRO RM KOZXV
RMHGIFXG MZ-MV-GTRM GVZXS
RMGVOORTVMXV SL-BZ HNZIG
RMGVMHV WAVVO HGIVMTGS
RMGVIXVKG BVO-MZ-NV-QZS RMGVIXVKG
RMGVIUVIV ZS-MROS-PSOZR RMGVIUVIV
RMGVIKIVG ZS-GZS-SZ-MV RMGVIKIVG
RMEVHGRTZGV MZ-ZOR-PZ GIZXP
RMELOEV Z-GZS RMELOEV
RH HVRH HVEVM
RHOZMW HVRH-PVBZS HVEVM RHOZMW
RHLOZGV YRS-GHZ-MVO-PZW HVKZIZGV
QFMTOV DLS-WR-XSRO QFMTOV
PROO MZA-GHZRW PROO
PROLXBXOV MZH-GHZRW-Z-PSZ-ZS-BVS-SZ-WROS PROO LRO TL ZILFMW
OZYLI MZ-MRHS OZYLI
OZMW PZB-BZS OZMW
OZFMXS GPZ-TSRO-ASLW OZFMXS
OVZWVI ZS-MZ-TSZR OVZWVI
OVZHG WV-YV-BZARV-SZ-Z-ZS OZNY UVZHG
OVZEV WZS-WV-BZS SV OVUG
OVUG MRHS-XOZ-QRS-TLS OVUG
OVHH YR-LS OVHH
OVEVO WRO-PLMS OVEVO
ORZRHLM WZ-Z-SV-TR-VMVS PMLD LGSVI'H ZXGRLM
ORNRG YZ-SZH-ZS ORNRG
ORGGVI MR-WZH-GLM HXZGGVI
OLXZGV Z-PDV-VS HKLG
OLHH FG-WRM OLHH
NZXSRMV TFM Z-PMZS-ZH-WLMRS IZKRW URIV TFM
NZTMVGRX MZ-V-OZSR KRXP FK
NZMZTV SZHGMR-YVS-MZ-SZR NZM ZTV
NZMVFEVI MZ-MZ-L-MZOGS NLERMT ZILFMW
NZK PZS-BZ-MVHS-XSZR NZK
NZCRNFN YVO-WRO-PSLM UROO GL GLK
NVXSZMRX XSRGR-Z-MZBO-RMRS ZFGL IVKZRINZM
NVXSZMRAVW XSRWR-WZ-ZS-SV-TLMR URTSGRMT XZIH
NVWRXZO Z-AZB NVWRXRMV
NVTZXBXOV NRO-ZS-SVS-ZS-WROS NROORLM TL ZILFMW
NVIXSZMG HSRK MZ-VO-MVSR-GHRM-MZ-ZROS NVIXSZMG HSRK
NVHHZTV SZMV-ZO-MVS NVHHZTV
NRORGZIB HROZTL-PVS-TLS NRORGZIB
NROORNVGVI MZ-ZH-GHL-HR-Z-BV-WL-GRHS WLFYOV NLFHV
NRMV SZ-TZWV NRMV
NRMRNFN YV-LS NRMRNFN
NRMFGV ZS-PSZB-VO-PRG-BZAARV ORGGOV SLFI
NRHHRLM ZO-MVHSLWR NRHHRLM
NRHGZPV L-ASR NRHH
NLKKRMT SZ-GZL-WR NLKKRMT
NLIV GSOZ-MZ-MZS NLIV
NLIGZI YV-ZO-WLS-XRW-WZ-SR HRGGRMT TFM
NLGRLM MZ-SLG-MZS NLGRLM
NLGLI XSRWV-YV-GHV-GHVM XZI SVZW
MZGREV PZ-SZ-GVMR MZGREV
MZEB GZO-PZS-HROZTL HVZ HLOWRVI
MVXVHHZIB BV-MZ-AVSM DZMG
MVTZGREV WL-BZ-HSL-WZ ML TLLW
MVG MZ-MVH-WRAR MVG
MVFGIZO WL-MVS-ORMR MVFGIZO
MLINZO WLS-Z-GZ-S-WZS MLINZO
MLG MR-WZS-GSZM-ARV ML GFIPVB
MLGRXV MV-WZ-GZAR-GSRM ML GFIPVB RXV
MLD PFG MLD
MFNYVI YVS-YRS-PV-ZH-XSRMRTS DSZG'H DIRGGVM
LYQVXGREV YR-MV-BVR TLZO
LYHVIEV SZO-ARW LYHVIEV
LYHGZXOV WZ-SL-WVHS-ASZ LYHGZXOV
LXXFKB BVVO-GHLW GZPVM
LU GLS-MR-GPZO-OL LXVZM URHS
LUUVMHREV YRM-PRV-QRMS-QRS-WVA-QZB LUUVMHREV
LMXV GZ-OZR-WR LMXV
LMOB GZ-VR-GZB-Z-BZS LMOB
LKVIZGV BV-MZSO-MRHS DLIP ZG
LKKLIGFMRGB ZHS-TZ-ZORM LKKLIGFMRGB
LKKLHRGRLM MV-SV-GHZS-QRS-HSRM LKKLHRGRLM
LI VS-WL-WZS-TLS VRGSVI
LIZMTV GXSRO-OSV-HLR LIZMTV
LIWVI YV-VS-SL-ARMR LIWVI
LIWMZMXV OVR-ZA-QZS FMWVI TILFMW
LIRTRMZGV WZH-GVS-WL YVTRM
LGSVI OZ-V-XRS LGSVI
LFG XOL-WRS LFG HRWV
LEVIOZB YV-PZ-SZH-GHLA LEVIOZB
KZIVMGSVHRH ZGHZMS IRY
KZIGRXFOZI Z-BL-ZW-WL-MVS KZIGRXFOZI
KZIGB WZ-HSZ-QZS KZIGB
KZB MZ-VOR-BZ KZB
KVMZORAV GZS-MR-WVH-GZMS HVG YZXP
KVIXVMG BZO NLMVB
KVIRLW WZ-ZSO-ASRM KVIRLW
KVIRLWRX WZ-ZO-ASRM-GSRM-NLZHR KVIRLW RXV XZG
KVINRG TLH-HSR-V KVINRG
KVIHLMMVO WZ-MV-OVR NVNYVI
KSLGLTIZKS YVS-XSR-NZ-SZW-MRO KSLGLTIZKS
KROO YLC YR-HL-WRS-WLG-HZSR-YR-GHZS HRXP KRT YLC
KRMMVW WLDM YRO-WZS-SZH-GZMS-BZ KRMMVW WLDM
KOZMV GHRWR YRIW
KOZHNZ WRO-WR-TSROR KOZHNZ
KLRMG YV-HL-WV-WVA-ZSV KRT KLRMG
KLMGLLM GPLHS-QZS-WZ-MZ-VOG UOLZGRMT YZIIVO
KLHRGRLM YROS-SZH-ZSM KLHRGRLM
KLHHRYOV GZ-SZ-ZS-GZB KLHHRYOV
KLHG HZS-WVR KLHG
KIVKZIV SZHS-GZB-SL-WRG-MV KIVKZIV
KIVHVMG PFG KIVHVMG
KIVERLFH YRS-GHV-WRS KIVERLFH
KIRNZIB ZOGHVS-MZM-WZB-SR-TRS 1HG KLHRGRLM
KIRLIRGB SZMV-KVHLWR KIRLIRGB
KILYZYOV WZ-GHR KILYZYOV
KILYOVN MZ-MRHS-GHLS YRT QLY
KILXVVW MZB-MRS-QRS TL
KILTIVHH MZS-HZR KILTIVHH
KILGVXG ZS-XSZMS HVOU WVUVMHV
KILERWV BRH-MRO KILERWV
KFIKOV WRMO-XSR KFIKOV
KBILGVXSMRX XLS-MZ-XSZMS UZMXB URIV
JFVHGRLM ZS-QZS VZI
JFRXP HSRO-OLS JFRXP
IZWZI VHZG-GHZMS ORHGVM
IZRW WVAQZB IZRW
IZROSVZW Z-WV-TVS-SR HSRKKRMT KLRMG
IZROILZW PLMS-MZ-ZO-YZMHR-YR-GSRM IZROILZW
IZOOBRMT Z-OZS-MZ-L-TOZORS TZGSVIRMT
IZMTV ZM-AZS WRHGZMXV
IZGV TZS-VS-BZSM IZYYRG ZGV
IZGRLM MZ-Z-QZS IZGRLM
IZERMV XSFHS-PZ IZERMV
IVZXS RO-WZB IVZXS
IVZWB PFG IVZWB
IVZI YV-PZ-WVMS IVZI
IVXVRKG HSLA-GVS IVXVRKG
IVXLNNVMW XSV-SL-GZR-GZSM IVXLNNVMW
IVXLMMZRHHZMXV SZ-Z-XRWR RMHKVXGLI
IVXLMMLRGVI GZ-SZ-MV-ZO-BZ NZPV HFIV
IVXLIW TZS-ZS-MZS-POLOR I-V-ILKV
IVW OR-XSR IVW
IVVU GHZ-ASRM YOZXP ILXP
IVVNYZIP VS-MZ-XLS TL RM
IVURIV MZ-MZ-XLS IVURIV
IVTFOZGV MZ-BVO-M IVTFOZGV
IVRMULIXV MZO-WARO IVRMULIXV
IVORVU ZTZMS-GLO-QZB IVORVU
IVORVEV MZS-QRS-XL-MZO-BZ IVNLEV
IVLITZMRAV SZ-WRG-AZS IVLITZMRAV
IVKOZXVNVMG MR-MZ-WL-MRO IVKOZXVNVMG
IVKLIG DSL-MVS TLG DLIW
IVKIVHVMGZGREV GPZ-MZA-MROR GIRKOV NVM
IVJFVHG QL-PZBVW-TLS ZHP ULI
IVHVIEV SVHS-Q-V IVHVIEV
IVHGIRXG YZ-SL-XSRMR IVHGIRXG
IVGRIV ZS-SLH-GVVMW IVGRIV
IVGIVZG QR-WRM-MVH-XSZMS IVGIVZG
IVGFIM MZ-WAZS XZNV YZXP
IVEVZO DSL-MVS IVEVZO
IVEVIG MZ-HR-BRA GFIM ZYLFG
IVEVGNVMG YZ-MZH-XOZ XLIMVI
IRWTV TZS-TSRO-PVRW IZYYRG IRWTV
IRUOVNZM YV-ZO-WL-SLHGVVM IRUOVNVM
IREVI GLS-BRO-PZO NFXS DZGVI
ILYLG YLNY Z-BV-HSR-MZ-GZS-RS VTT UOB
ILXPVG OVHA-BRO-YVHSR HZMW YLRO
ILOO BVS-NZH ILOO
ILFMW MZA-KZH ILFMW
ILFGV TZS-YRS-GPVVM IZYYRG GIZRO
IFMMVI MRS-WARW-GVRS IFMMVI
HZYLGZTV Z-GPVO-BZS SRMWVIVW
HZYLGVFI Z-GPVO-VO-RMR GILFYOV NZPVI
HZROLI XSZ-OV-TZR DSRGV XZKH
HZOEZTV MZ-SZH-TOZS KRXP GSVN FK
HZG YRS-OZ-HZMZ-XRW-WZ-SR ZKKOV HRGGRMT
HXZIOVG IVW OSV-XSR(H & I) IVW
HXSVWFOV YVS-VS-SL-ARMR HXSVWFOV
HXLFG SZ-Z-HRW-ZO-HRAR-TRS HSLIG IZXXLLM
HXIVVM YVHS-MZ-MVH-WRAR HXIVVM
HVZNZM GPZO-PZS-WRMVS-RS HVZNZM
HVXIVG YZS-SZH-GPRS HVXIVG
HVXGLI BLVSR HVXGLI
HVXFIV BV-WASV-ZO-GHRHR HNZOO HVXFIRGB
HVRAV BVVO-HGLW HVRAV
HVOVXG YV-GZS-SZH-TOZ GLLP LFG
HVNR XLOLM WZ-ZSO-ASRM-YR-GHZ-MZ-WZSO WLG WILK
HVG WAVS-XRW-WZ-SR VOP HRGGRMT
HSZXPOV WR-YZS-MVHS-TLSA HSZXPOV
HSVOO YV-ZO-WLS-YV-XZ HSVOO
HSLIV GZS-YZSM HSLIV
HSLIG YLHS-PVVHS HSLIG
HRWV YLHS-PVVHS HRWV
HRTSG BV-VO-GHZMS HVVM
HRTMZO MZ-VS-VS-TRHS YB HRTMH
HRNKOVC ZOZS-RS-MV-GRS RMMVI DRIV
HRG GPRM-XRW-WZ-SR RXV HRGGRMT
HRGFZGV Z-SL-GZB HRGFZGV
HNLPV ORG HNLPV
HMRKVI LS-YVSR KRXP 'VN LUU
HKZXV YV-GPZS YVGDVVM
HKVXRZO V-BRS-HRS NZRM GSRMT
HKVVW BL-ALMH HDRUG NLGRLM
HKLIZWRX ZS-MZ-SL-MVRO MLD ZMW GSVM
HKLGGVI VVO-GHZB-R HKLGGVI
HKIZB POVHS-HL-WROARM HMZPV KIZB
HJFZWILM MZS-TSRAR HJFZHS
HGLIN MV-LO HGLIN
HGIZUV MZ-DL-TSR-TLRW SLV
HGIZTTOVI XSB-MV-WV-WZSV HGIZTTOVI
HGIZGVTB MZ-SZ-GZS HGIZGVTB
HGIVZN GLS-MR-ORS IFMMRMT DZGVI
HGIVMTGS WASVO HGIVMTGS
HGIVGXS WVHA-GHLLW HGIVGXS
HGIRPV MZB-WZO-TSZO HGIRPV
HGIRK SZ-GRS-QZS HGIRK
HGFYYLIM MRO-GZ HGFYYLIM
HFYQVXG MZ-MRHS-BZAARV HNZOO QLY
HFYNVITV GPZO-XOZ-BR-BZS DVMG FMWVI DZGVI
HFYNRG Z-MRS-OVS HVMW
HFYLIWRMZGV ZO-PSR-MZO-WAO SVOKRMT VZXS LGSVI
HFXXVVW BZS-GZB-TL-V-VOZS NZPV TLLW
HFXXVHH FG-AZS RG RH WLMV
HFXXVHHUFO FG-AZS-SZ-WVA-YRM RG RH WLMV DVOO
HFXXVHHREV FG-AZS-HRW HFXXVHH HXZI
HFXS BRH-XOVS HLC
HFUUVI GL-SL-MV HFUUVI
HFNNZIB HSRM-TL-YZS HFNNVI NZIB
HFKKOVNVMGZIB GPZ-TL-MV-MZM-WVB-SV 3IW KLHRGRLM
HFKKOB MZO-BVS-SR HFKKOB
HFKKOB HSRK MZOTZ-SR-GHRM-MZS-ZROS HFKKOB HSRK
HFKKLIG YZ-ZS-SLG-TOR WVKVMW
HFIIVMWVI MV-MZ-XSZ HFIIVMWVI
HFIILFMW MZA-KZH HFIILFMW
HFIEREV BRH-WZ-BZ HFIEREV
HBHGVN WR-YZ-GHZ-ZH-ASR-YR-GHRM HBHGVN
GZXGRXZO V-XSRSM GZXGRXZO
GZPV TZS-GZSM GZPV
GZMP XSZB-WZ-TZSR GLIGLRHV
GZMP WVHGILBVI XSZB-WZ-TZSR-MZRO-GHZRWR GLIGLRHV PROOVI
GZITVG DLO-WLMR GZITVG
GZHP GZAR-MZ-VS-WRO-PRW GFIPVB ZHP
GVZN WVS-MZ-ZH-GHL-HR GVZ NLFHV
GVIIZXV ZOR-PSR-SL-MV-LSZ GVIIZXV
GVIIZRM GZHSR-MZ-SZO-GSRM GFIPVB IZRM
GVIIRGLIB PZ-BZS GVIIRGLIB
GSZG GZAR-XSZ GFIPVB SZG
GSV XSZ-TVV YOFV-QZB
GSVRI YRS GSVRI
GSVIVZUGVI GZ-AR-PDZ-R-YV-PZ-WR GFIPVB SVIV ZUGVI
GSVHV XSZ-TR-L-VS GSV HVV
GSVB XSZ-TVV GSV B
GSRH WR GSV
GLTVGSVI GZ-YROS GLTVGSVI
GLIKVWL OL-YV-XZ URHS HSVOO
GLGZO GZ-ZO-HL GLGZO
GIZXVI YVS-MZ-ZO-PZS-SR GIZXVI
GIZUURX WRZTIZN SZMV-YZ-MZ-ZH-WALS WRZTIZN HGLIB ORMV
GIZRM XLS-MZR-ZOR-YZSM-HR GIZRM
GIZMHKLIGZGRLM Z-SZS-WZ-Z-XSZ GIZMHKLIGZGRLM
GIVMXS V-TZWV GIVMXS
GIRKOV GPZ-RS GIRKOV
GILLK MZO-WVS-SR GILLK
GIFXP XSRWL-GHL YRT ZFGL
GBKV ZOGS-ZS-Z-GVS GBKV
FMWVI YR-BZS FMWVI
FMRWVMGRURVW WL-YZB-SLHVM-V FMRWVMGRURVW
FMRG WZ-ZA-QZS FMRG
FMHSZXPOV ML-WZ-VS-MVHS-TLSA FMHSZXPOV
FMGRO FS-JFL-SL FMGRO
ERXRMRGB MZ-SLH-ZS-TRS GSVIV ZYLFG
EROOZTV XSZS-SL-LS-OSZM-RS NZMB HSVOGVI
ERHRYRORGB MZB-VH-GVV ERHRYRORGB
ERGZO GZ-VS-BV-HB ERGZO
DZIMRMT YROS-SV-MVS DZIMRMT
DZH MV-GVS DZH
DZGVI GPLS DZGVI
DZEV BROS-PLOS DZEV
DVZKLM YVS-WZS-Z-SR-QRS-TZMR URTSGRMT DVZKLM
DVOO GL-SZ-SZ-WOZB DVOO
DSVM TOLV-VS-MZ-ZS-DL-SZR DVZHVO SVM
DSVIV TOLV-RS-JFR-ZS DVZHVO SVIV
DSRXS TOLV-RS-Z-SHR-GOLM DVZHVO GRVW GLTVGSVI
DROO TOLV-RS-WLG-HZSR HRXP DVZHVO
DRIV YVHS-GHLHRV HNZOO DRIV
DRGS YROS DRGS
DRGSRM YROS-YRTRS DRGS RM
DRGSLFG GZ-TZRW DRGSLFG
DLLW XSRA URIV DLLW
DLFMW XZS-WZ-PSR DLFMW
BZIW Z-WVO-GZSO BZIW
ALMV YRS-MZ-SZH-WALS ALMV
+703
View File
@@ -0,0 +1,703 @@
Z DLO-OZ-XSVV ZMG
Z YV-OZ-HZMZ ZKKOV
Z GHV-MROO ZCV
Y MZ-SZHS-XSRW YZWTVI
Y HSFHS YVZI
Y GLRHS-QVS YZIIVO
X NLZHR XZG
X GOZ-TRM XLZO
X YZ-TLHSR XLD
W YV WVVI
W XSRMWR WVERO
W OSZ-XSZ-VS WLT
V ZS-QZS VZI
V WAVS VOP
V ZS-MZS VBV
U XSFL URI
U GHZ-V-WLMRM-VV UOB
U NZ-V ULC
T ZS-GZW TRIO
T PORAARV TLZG
T QVSZ TFN
S GHV-TZS SZRI
S XSZ SZG
S ORM SLIHV
R GPRM RXV
R BVS-SVH RGXS
R Z-XSR RMGVHGRMV
Q GPVOV-XSL-T QZXPZHH
Q ZS-BZ-GHRMMV QZD
Q BRO-WLR QVIP
P QZW-SL-OLMR PVGGOV
P YZ-ZS-MV-WR-GRMRM PVB
P PORAARV-BZAARV PRW
O WRYVS-BZAARV OZNY
O ZS-QZW OVT
O MZHS-WLRV-GHL ORLM
N GHRM-GORGR NZGXS
N YV-GZH-GMR NRIILI
N MZ-ZH-GHL-HR NLFHV
M GHZS MVVWOV
M Z-XSRM MLHV
L Z-PSZ LRO
L GOL-XSRM LMRLM
L MV-ZSH-QZS LDO
K XOZ-TR-ZRS KZMG
K YR-HL-WRS KRT
K MV-ASLMR KIVGGB
J XZ-BVROGS JFREVI
I TZS IZYYRG
I WZS-MVH-GHZ IZN
I ZS-OLHA IRXV
H WRYVS HSVVK
H POVHS HMZPV
G W-ZS GVZ
G Z-DLS GLLGS
G GSZM-ARV GFIPVB
F HSR-WZ FMXOV
F ML-WZ-RS FGV
E Z-PVS-WR-TORMR ERXGLI
D TOLV-RS DVZHVO
C ZO-MZ-ZH-WALS XILHH
B GHZS-ZH-ARS BFXXZ
A YVHS-WL-GORA ARMX
XLIKH WRM-MVS-RS XOZM
WRERHRLM ZHSRS-SR HZOG
IVTRNVMG GZYZSZ VWTV DZGVI
YZGGZORLM GZXSVVMV IVW HLRO
XLNKZMB MZPRZ NVCRXZM
KOZGLLM SZH-XORHS-MRS NFW
HVXGRLM BL-RS YVZWH
HJFZW WVYVS-OR-ARMR YOZXP HSVVK
 
XLNNZMWRMT TVMVIZO YRS-PVS-SV(T) DZI XSRVU
NZQLI TVMVIZO HL-MZ-PRS GDL HGZI
YIRTZWRVI TVMVIZO HL-Z-OZ-RS LMV HGZI
XLOLMVO ZGHZS-YVHS-OV-TZR HROEVI VZTOV
ORVFGVMZMG XLOLMVO XSV-XSRO-YV-GZS-YVHS-OVTZR HROEVI LZP OVZU
NZQLI XSV-XSRO-YV-GZS-LOZ TLOW LZP OVZU
XZKGZRM YVHS-OVTZR-MZS-PRS GDL HROEVI YZIH
ORVFGVMZMG YVHS-OVTZR-Z-OZS-RS LMV HROEVI YZI
XLNNZMWRMT LUURXVI SZHS-PZB-TR-MZ-GZS DZI XSRVU
VCVXFGREV LUURXVI YRS-WZ-SLO-MVSR GSLHV RM XSZITV
 
ZUIRXZ ASRM-MR YOZXPRVH
ZOZHPZ YVS-STZ DRGS DRMGVI
ZNVIRXZ MV-SV-NZS LFI NLGSVI
ZFHGIZORZ XSZ-BVH-WVHR ILOOVW SZG
YIRGZRM GLS-GZ YVGDVVM DZGVIH
XSRMZ XVS-BVSH-YVHR YIZRWVW SZRI
UIZMXV WZ-TSZ-SR YVZIW
TVINZMB YVHS-YV-XSZ-SV RILM SZG
RXVOZMW GPRM-PV-BZS RXV OZMW
RMWRZ ZS-OV-TZR DSRGV XOLGSVH
RGZOB WLS-SZ-XSR-BZOR-GXSR HGFGGVI
QZKZM YVS-MZ-ZOR-GHLHRV HOZMG VBV
KSRORKKRMV PV-BZS-WZ-MZ-OSV UOLZGRMT RHOZMW
IFHHRZ HROZ-TLO-XSR-RS IVW ZINB
HLFGS ZNVIRXZ HSZ-WV-ZS-MV-SR-NZS HLFGS LFI NLGSVI
HKZRM WVYZ-WV-MRS HSVVK KZRM
 
KOZMVH DL-GZS-WV-MV-RS ZRI ULIXV
WREV YLNYVI TRMR XSRXPVM SZDP
GLIKVWL KOZMV GZH-XSRAARV HDZOOLD
LYH KOZMV MV-ZH-QZS LDO
URTSGVI KOZMV WZ-SV-GRS-SR SFNNRMT YRIW
YLNYVI KOZMV QZB-HSL YFAAZIW
KZGILO KOZMV TZ-TRS XILD
GIZMHKLIG ZGHZS VZTOV
 
HSRKH GLS-WRMVS-RS HVZ ULIXV
YZGGOVHSRK OL-GHL DSZOV
ZRIXIZUG GHRWR-NLUUZ-BV-SR YRIW XZIIRVI
HFYNZIRMV YVHS-OL RILM URHS
NRMV HDVVKVI XSZ YVZEVI
WVHGILBVI XZ-OL HSZIP
GIZMHKLIG WRMVS-MZB-BV-SR NZM XZIIRVI
XIFRHVI OL-GHL-BZAARV HNZOO DSZOV
NLHJFRGL YLZG GHV-V NLHJFRGL
QZMFZIB ZGHZS-YV-BZA HNZOO VZTOV
UVYIFZIB DLA-XSVRMW HJFVZPB ELRXV
NZIXS GZS-XSROO HNZOO KOZMG
ZKIRO GZS-GHL YRT KOZMG
NZB GZS-GHLHRV HNZOO KOZMG
QFMV YV-MV-VS-VS-QZS-GHL YRT KOZMGRMT
QFOB YV-MV-GZ-GHLHRV HNZOO SZIEVHG
ZFTFHG YV-MVVM-GZ-GHL YRT SZIEVHG
HVKGVNYVI TSZD-QRS SZOU
LXGLYVI MRO-XSR-GHLHRV HNZOO DRMW
MLEVNYVI MRO-XSR-GHL YRT DRMW
WVXVNYVI BZH-MRO-GVH XIFHGVW HMLD
 
ZYZMWLM BV-GHZM IFM ZDZB UILN
ZYLFG DLOZ-XSR-Z-NLUUZ-TZSM ZMG URTSG
ZYIVZHG DLOZ-XSVV-YV-BRVW ZMG YIVZHG
ZXXLNKORHS FO-HL ZOO WLMV
ZXXLIWRMT YV-PZ-SL ZXXLIWRMT GL
ZXPMLDOVWTV SZMLG-WARVW ZXPMLDOVWTV
ZXGRLM ZS-SZ-GRMS KOZXV LU ZXGRLM
ZXGRERGB ZS-SZ-GRMS-B ZXGRLM VMWRMT RM B
ZWVJFZGV YVS-TSZ VMLFTS
ZWWRGRLM RS-SV-WV-MWVO ZWWRGRLM
ZWWIVHH BR-XSRM-SZ-GHV ZWWIVHH
ZWQZXVMG YV-TZSR MVZI
ZWQFHG SZH-GZR-MVO-PZW ZWQFHG
ZWEZMXV MZH-HVB ZSVZW
ZWERHV MZ-MVGRM ZWERHV
ZVIRZO YV-ALMA HGRMTVI
ZUURINZGREV OZMS ZUURINZGREV
ZUGVI YR-PSZ-WR(Z) ZUGVI
ZTZRMHG YV-MZ-TMRHS ZTZRMHG
ZRW VWZ-VOV-GHLLW ZRW
ZRI MROXSR ZRI
ZRIWLNV MROXSR-YVTSZM ZRIWLNV
ZOVIG SZ-RS-WVH-VV ZOVIG
ZOO GZ-Z-GZS(Z) ZOO
ZOORVH MRS-SR-XSL ZOORVH
ZOLMT DLOZXSVV-HMVA OLMT ZMG
ZOHL VS-WL ZOHL
ZOGVIMZGV MZ-PVV-TL-MV-MZM-WVB-SV HVXLMW KLHRGRLM
ZNYFHS PSZX-WZ ZNYFHS
ZNNFMRGRLM YVS-VOR-WLS-YV-XZS-ZOR-GZH-ZR ZNNFMRGRLM
ZNKSRYRLFH XSZO UILT
ZMW WL ZMW
ZMTOV WVV-XZSM HOZMGRMT
ZMMVC RS-MZB-GZMR ZWWRGRLM
ZMMLFMXV YVS-SZ-L-WAV ZMMLFMXV
ZMGR DLO-OZ-XSVV-GHRM ZMG RXV
ZMGRXRKZGV MR-QLO-ORS ZMGRXRKZGV
ZMB GZS-SZ-WZS ZMB
ZKKVZI BV-PZ-SZ-BZ ZKKVZI
ZKKILZXS YR-XSR-LO-WZS ZKKILZXS
ZKKILCRNZGV GL-PFH-WZM ZKKILCRNZGV
ZIV TZS-GHL YRT IZYYRG
ZIVZ SZA-Z-TRS ZIVZ
ZINLI YVHS-BV-SZ-WZ-WR-GVS RILM KILGVXGLI
ZINB OVR-XSZ-RS-BRO-PMVV-RS ZINB
ZIIREV RO-WZB ZIIREV
ZIGROOVIB YV-ZO-WLS-GHL-OZMR NZMB YRT TFMH
ZH ZSXV ZH
ZHHZFOG ZOGHVS-V-QZS-SV URIHG HGIRPVI
ZHHVNYOV WV-QR-PZHS YFMXS GLTVGSVI
ZHHRTM YZS-WVS-GZSM ZHHRTM
ZG ZS-WR ZG
ZGGZXP ZO-GZS-QV-QZB ZGGZXP
ZGGVNKG YL-L-MV-GZS(Z) GIB
ZGGVMGRLM TRSZ ZGGVMGRLM
ZFGSVMGRXZGLI SZMR-YZ-ZS-SL-ARM PMLD ZYLFG
ZFGSLIRAV YV-YL-SL-HMVV ZFGSLIRAV
ZEZROZYOV GZ-HSLA-GVS-RS ZEZROZYOV
 
YZTTZTV POZROS(Y) YZTTZTV
YZMAZR MV-GZS ULLO GSVN
YZITV YVHS-MZ-VOG YZITV
YZIIZTV YVHS-YZ-DZ-XSRMW YZIIZTV
YZIIRVI YRS-XSZM-MR-ZS RM GSV DZB
YZHV YRS-GHVV-WRS YZHV
YZGGVIB YRS-YV-ZO-WLS-GPZ-RS GSIVV TFMH
YZGGOV WZ-ZS-SR-WAR-GHRL YZGGOV
YZB GLS-ZS-SR-TSRMS YZB
YZALLPZ ZS-ASLO YZALLPZ
YV GHVH-MZS YVV
YVZXS GZS-YZSM(Y) YVZXS
YVVM GHVH-MZS-MVH-XSVV YVV MFG
YVULIV YRS-GHV-WRS YVULIV
YVTRM SZ-SLO-ARA XLNNVMXV UILN
YVOLMT GHVH-MZS-HMVA OLMT YVV
YVGDVVM YR-GZS-PRA YVGDVVM
YVBLMW YROS-OZ WR WLDM YVOLD
YRELFZX VSO-MZH-GVS YIFHS HSVOGVI
YLNY Z-BV-HSR VTTH
YLLYB GIZK WRMVS-YZ-DSLZ-YOVSR NZM GIZK
YLIMV BV-XSRV-GHZS YLIM VOP
YLFMWZIB PZ-BZS-YR-MZ-SZH-WALS(Y) YLFMWZIB
YFOO WLAVI WLOZ-ZOGS-DSLHS YFOO HOVVK
YFMPVI GHZH-PZ HZMWB SLOOLD
YFG MVS-WRS YFG
YB YV-TSZ YB
 
XZYOV YVHS-OPLS DRIV ILKV
XZORYVI MZSO-PRSW NLEV ZILFMW
XZNK GL-ZOGHVS-SLTZM GVNKLIZIB KOZXV
XZNLFUOZTV WR-MVH-RS SRW
XZM BZS-WR-ARMR XZM
XZMMLMVVI YV-ZO-WLS-GHL-WVB-WRO-WLM-RTR YRT TFM LKVIZGLI
XZKZXRGB YV-MVO-ZS XZKZXRGB
XZKGFIV BRH-MZS XZKGFIV
XZIIB BL-OZROS XZIIB
XZHV YRG-HZS XZHV
XZHFZOGB YRS-WRM-MV-WVB KFG LFG LU ZXGRLM
XZFHV YR-MRS-MZMR XZFHV
XZEV GHZ-LMW ILXP XZEV
XVRORMT WZ-GVO-QZB HVZO
XVNVGVIB QRHS-XSZ ZNLMT WVEROH
XVMGVI FOS-MV-RS XVMGVI
XSZMTV GSOZ-TL-Z-MZG-AZS XSZMTV
XSZMMVO SZ-GZOSR-BZAARV HNZOO HRMTVI
XSZITV ZS-GZS-TR-QZS XSZITV
XSVNRXZO GZ-MVV ZOPZOR
XRIXOV MZH-KZH XRIXOV
XRIXFRG ZS-SVS-SZ-WZROS XRIXFRG
XOZHH ZOGS-ZS-Z-GVS XOZHH
XOVZI BL-ZS-SLO-ASLW XOVZI
XORUU GHV-BV-XSVV XORUU
XOLHV FO-XSR-FS-MZO-BZS XOLHV
XLZHG TFZIW GZ-YZH-WHRHHR HSLIV IFMMVI
XLWV BRO-GZH KVXP
XLOLM MZPR-ZOS--WVS-WZ-ZO-ASRM GDL HKLGH
XLOFNM ZOGS-PZB-MV-ARS XLOFNM
XLNYZG WZ-ZS-SR-QRS-TZMS URTSGRMT
XLNYRMZGRLM ZO-GPZH-VR NRCVW
XLNV SFX-JFL XLNV
XLNNZ GHZ-MZ-WZSO GZRO WILK
XLNNVIXRZO MZR-VO-MV-SR XLNNVIXRZO
XLNNRG SFX-JFL-OZ-QRHS XLNV TOLEV
XLNNFMRXZGRLM SZ-MVS-ZO-VMQR NZPRMT GZOP
XLMXVZO YV-PR-ZHA-QLOV XLMXVZO
XLMXVMGIZGRLM GZ-OZ-SR-QRS LMV KOZXV
XLMXFHHRLM DSV-SFH-WRO XLMXFHHRLM
XLMWRGRLM ZS-SL-GZR SLD RG RH
XLMUVIVMXV YV-PV-BZ-GR GZOP LEVI
XLMURWVMGRZO MZ-MRO-RM PVKG HVXIVG
XLMURIN GZ-Z-MVS NZPV HFIV
XLMJFVI Z-PVS-WVH-WORM DLM
XLMHRWVI MV-GHZ-XZH GSRMP RG LEVI
XLMHRHG YROS(X) XLMHRHG
XLMHLORWZGV ZS-SRS-SR-MRO KFG GLTVGSVI
XLMHGIFXG ZSO-MVS GL NZPV
XLMGZXG ZS-SR-WR-WZRO XLNV GLTVGSVI
XLMGRMFV GZ-BR-GVS XLMGRMFV
XLMGILO MZR-TSRA XLMGILO
XLMELB GPZO-PZS-L-MVO NLERMT LM DZGVI
XLLIWRMZGV YVS-VS-SL-ARM-MZ-ZH-WALS PMLDM ORMVH
XLFMGVI ZGGZXP DLOGZS-ZO-PR-TR-QVS XLFMGVI ZXG
XLFIHV XL-QR-TLS XLFIHV
XIZUG ZS-GLS MVHG
XIVVP GLS-MRO-GHZMS EVIB ORGGOV DZGVI
XILHH ZO-M-ZH-WALS XILHH
XFY HSFHS-BZSA XFY
 
WZHS FH-WALS WZHS
WZDM SZ-BVOR-PZSM WZDM
WVUVMHV ZS-PRM-XRO-GLS WVUVMHV
WVTIVV MZSO-PRSW WVTIVV
WVOZB YV-HRGRSM WVVI OZB
WVOREVI YV-YRS-ARSWV WVVI OREVI
WVNLORGRLM ZS-WVVO-GZSR YOLD FK
WVMHV SL-WROS-XOZ(W) DVG
WVKZIG WZ-WV-BZS WVKZIG
WVKZIGNVMG SLTZM WVKZIGNVMG
WVHRTMZGV BV-PSR-WVO-MVR KLRMG LFG
WVHKVIZGV ZS-WZ-ZS-SL-WAZS WLDM GL OZHG
WVGZXS ZO-XSZ-MRO WVGZXSVW
WVGZRO YV-YVS-HSZ WVVI GZRO
WVGLMZGLI ZS-WVVO-GZSR(LI) YOLDM FK
WRUURXFOG MZ-MV-POZS WRUURXFOG
WRT-RM OV-VS-TZWV WRT RM
WRIVXG ZS-QR-TL WRIVXG
WRHVNYZIP VS-SZ-QZB TVG LFG
WRHKZGXS OZ-XSZR-VM-HVRH-YV-QZB WLT RH KZGXS
WRHKOZXV SRS-WL-MZO NLEV
WRHKOZB YV-HVRH-MZ-MVS WVVI RH KOZB
WRHKLHRGRLM Z-SL-GVB WRHKLHRGRLM
WRHGIRYFGV MZS-MVS WRHGIRYFGV
WRHGIRXG YV-GSRM-BZ-MR-XSV WVVI RXV HGIRXG
WL GHV-OV HNZOO KFK
WLXFNVMG YVS-VS-SL-ARMA WLXFNVMG
WIREV ZS-MLO-PZSO WIREV
WFW WR-TRHH-BZSARV HNZOO WFNNB
WFNNB WR-TRHH-GHL YRT WFNNB
 
VZXS GZ-OZSR-MV-ARMR-TL(W) VZXS
VXSVOLM DSL-WAZS ORMV
VWTV YV-YZ-SR VWTV
VUUVXGREV YV-WVOS-MVVW VUUVXGREV
VUULIG BVZ-TL DRGS ZOO BLFI NRTSG
VOVNVMG ZS-MZ-MZR GILLK IVKIVHVMGRMT LGSVIH
VOVEZGV ZOR-PSR-SL-MV-LSZ VOVEZGV
VORNRMZGV SZ-YVS-GL-WARO VORNRMZGV
VNYZIP VS-SL-QZB TVG LM
VNVITVMXB SL-MVA-XOZ VNVITVMXB
VNKOZXVNVMG OZ-ZA-MRO VNKOZXVNVMG
VMXRIXOV BV-MZH-GVS(V) VMXRIXOV
VMXLFMGVI YR-PSZMS TL ZTZRMHG
VMTZTV Z-SZ-MV-SL-GZ ZTIVVW
VMTRMV XSRWR-YR-GHR-GHRMV(V) VMTRMV
VMTRMVVI WZB-WRO-QZS-SV VMTRMVVI
VMOZITV MRS-GHZ-TLS-ZO-MVS NZPV YRT
VMORHG YRS-ARS-Z-WZ-BR-OZS VMORHG
VMGRIV GZ-Z-GZS(V) VMGRIV
VMGIVMXS V-TZW-ZS-MV-ORS NZPV WRGXS
VMEVOLK Z-AZS-TR-BZ VMEVOLK
VJFRKNVMG BZ-SZ-WV-GZSR VJFRKNVMG
VIVXG BVS-ARSM HGZMW FK
VHXZKV Z-AVS-SZ-TV-BZS VHXZKV
VHGZYORHS SZH-GZB-WAZS VHGZYORHS
VHGRNZGV YRS-PV-GHV-SLW-WVH-PVA VHGRNZGV
VEZXFZGV SZ-MZ VEZXFZGV
VCXVKG MVS-WRS(V) VCXVKG
VCXVKG MZ-DLO-MV VCKVXG
VCXSZMTV ZOS-MZSO-BZS VCXSZMTV
VCVXFGV Z-WL-MRO VCVXFGV
VCKOLHREV ZS-WVO-GZSR(V) VCKOLHREV
VCKVWRGV HSRO-OLS(V) HKVVW FK
VCGVMW MV-GWZOV NZPV DRWV
VCGIVNV ZO-GHZM-ZS-YZSN VZXS VMW
 
UZRO XSZ-ZO-VRMW UZRO
UZROFIV BVVH-TSRM UZROFIV
UZIN NZR-YV-SV-ZSTZM ULC ZIN
UVVW WAVS-XSR-BLM UVVW
URVOW XOL-WRS(U) URVOW
URVIXV GLS-YZS-SZ-AHRW ZUIZRW
UROV YZ-VS-XSVA UROV
URMZO GZS-ZS-PDL-WRS GSZG RH ZOO
UOZNV GSILDVI XLS-ZS-TSRO-GORW UOZNV GSILDVI
UOZMP WZS-WR-PZW UOZMP
UOZIV DL-XSR ORTSG HGIVZP
UORTSG NZ-V-ZH-AOLOR ULC ORTSG
ULIXV GZ-MZ-MV-OZWR DRGSLFG XZIV
ULIN YV-XSZ ULIN
ULINZGRLM YV-XSZ-BV-OZROS ULINZGRLM
ULIGRURXZGRLM ZS-MZ-HLAR XORUU WDVOORMT
ULIGRUB ZS-MZ-HLAR-BZAARV HNZOO ULIGRURXZGRLM
ULIDZIW GVSR OVG'H TL
UIZTNVMGZGRLM YVHS-BZAARV HNZOO NVGZO
UIVJFVMXB SZ-GZOSR-GHL YRT HRMTVI
UIRVMWOB MVS-SVXSL-WZ-MV UIRVMWOB
UILN YR-GHZM-WVSM UILN
UFIMRHS BVZH-MRO(U) UFIMRHS
UFIGSVI DL-MZH-WR UFIGSVI
TZIIRHLM BZS-Z-WZ-SZO-BLM-RS GZPV XZIV LU
TZHLORMV XSRWR-YR-GLS TZHLORMV
TIVMZWV MR-NZ-HR KLGZGLVH
TFZIW MR-WRS-WZ-SR TFZIW
TFRWV MZS-V-GSOZR TFRWV
SZOO OSR-GZ-Z-GZ SLIHV ZOO
SZOU GIZXP ZOS-MRS-QZS-Z-JFSV IZXV GIZXP
SZOG GZ-ZPDZR-R SZOG
SZMWOV YVG-HVVM SZMWOV
SZEV QL SZEV
SVZWJFZIGVI MZ-SZ-GZS-GZ-YZ-SLTZM SVZWJFZIGVI
SVOW DL-GZS-GZ-VS-WZSM-LS SVOW(KZHG GVMHV)
SRTS DL-GZS SRTS
SRTS VCKOLHREV YV-ZO-WLS-YV-XZ-YRS-WARO-RTR KLDVIUFO HSVOO
SRTSDZB DL-GZS-SL-MV-GVS SRTS DZB
SLOW DL-GPZMS SLOW
SLHKRGZO Z-AVB-ZO-RS KOZXV LU NVWRXRMV
SLHGROV Z-MZS-MV-WARM MLG UIRVMWOB
SLDRGAVI YV-VO-WLM-GH-JFLWR HSLIG YRT TFM
    
ROOFNRMZGV DL-XSR(R) ORTSG FK
RNNVWRZGVOB HSRO-OLS(R) RNNVWRZGVOB
RNKZXG Z-SV-WRH-TLS RNKZXG
RNKLIGZMG YZ-SZH-GVS RNKLIGZMG
RNKILEV SL-WLO-ASLMW RNKILEV
RMXOFWV VO-GHLW RMXOFWV
RMXIVZHV SL-MZOS RMXIVZHV
RMWRXZGV YZ-SZO-MVS GVOO ZYLFG
RMUZMGIB GZ-MVS-MZO-WZSR RMUZMGIB
RMUROGIZGV BV-TSZ-MV-QVS DVMG GSILFTS
RMRGRZO YVS-VW-WV-WORW YIZMW
RMHGZOO VSW-GMZS RMHGZOO
RMHGZOOZGRLM MZH-MRO RM KOZXV
RMHGIFXG MZ-MV-GTRM GVZXS
RLXXX Z-XSR-MV-ZSH-QZS-YZ-TLHSR-YZ-TLHSR-YZ-TLHSR HVXIVG
RMGVOORTVMXV SL-BZ(R) HNZIG
RMGVMHV WAVVO HGIVMTGS
RMGVIXVKG BVO-MZ-NV-QZS RMGVIXVKG
RMGVIUVIV ZS-MROS-PSOZR RMGVIUVIV
RMGVIKIVG ZS-GZS-SZ-MV RMGVIKIVG
RMEVHGRTZGV MZ-ZOR-PZ GIZXP
RMELOEV Z-GZS RMELOEV
RH HVRH HVEVM
RHOZMW HVRH-PVBZS HVEVM RHOZMW
RHLOZGV YRS-GHZ-MVO-PZW HVKZIZGV
 
QFMTOV DLS-WR-XSRO QFMTOV
 
PROO MZA-GHZRW PROO
PROLXBXOV MZH-GHZRW-Z-PSZ-ZS-BVS-SZ-WROS PROO LRO TL ZILFMW
 
OZYLI MZ-MRHS(O) OZYLI
OZMW PZB-BZS OZMW
OZFMXS GPZ-TSRO-ASLW OZFMXS
OVZWVI ZS-MZ-TSZR OVZWVI
OVZHG WV-YV-BZARV-SZ-Z-ZS OZNY UVZHG
OVZEV WZS-WV-BZS SV OVUG
OVUG MRHS-XOZ-QRS-TLS OVUG
OVHH YR-LS(O) OVHH
OVEVO WRO-PLMS OVEVO
ORZRHLM WZ-Z-SV-TR-VMVS PMLD LGSVI'H ZXGRLM
ORNRG YZ-SZH-ZS ORNRG
ORGGVI MR-WZH-GLM(O) HXZGGVI
OLXZGV Z-PDV-VS HKLG
OLHH FG-WRM OLHH
 
NZXSRMV TFM Z-PMZS-ZH-WLMRS IZKRW URIV TFM
NZTMVGRX MZ-V-OZSR KRXP FK
NZMZTV SZHGMR-YVS-MZ-SZR NZM ZTV
NZMVFEVI MZ-MZ-L-MZOGS NLERMT ZILFMW
NZK PZS-BZ-MVHS-XSZR NZK
NZCRNFN YVO-WRO-PSLM UROO GL GLK
NVXSZMRX XSRGR-Z-MZBO-RMRS ZFGL IVKZRINZM
NVXSZMRAVW XSRWR-WZ-ZS-SV-TLMR URTSGRMT XZIH
NVWRXZO Z-AZB NVWRXRMV
NVTZXBXOV NRO-ZS-SVS-ZS-WROS NROORLM TL ZILFMW
NVIXSZMG HSRK MZ-VO-MVSR-GHRM-MZ-ZROS NVIXSZMG HSRK
NVHHZTV SZMV-ZO-MVS NVHHZTV
NRORGZIB HROZTL-PVS-TLS NRORGZIB
NROORNVGVI MZ-ZH-GHL-HR-Z-BV-WL-GRHS WLFYOV NLFHV
NRMV SZ-TZWV NRMV
NRMRNFN YV-LS(N) NRMRNFN
NRMFGV ZS-PSZB-VO-PRG-BZAARV ORGGOV SLFI
NRHHRLM ZO-MVHSLWR NRHHRLM
NRHGZPV L-ASR NRHH
NLKKRMT SZ-GZL-WR NLKKRMT
NLIV GSOZ-MZ-MZS NLIV
NLIGZI YV-ZO-WLS-XRW-WZ-SR HRGGRMT TFM
NLGRLM MZ-SLG-MZS NLGRLM
NLGLI XSRWV-YV-GHV-GHVM XZI SVZW
 
MZGREV PZ-SZ-GVMR MZGREV
MZEB GZO-PZS-HROZTL HVZ HLOWRVI
MVXVHHZIB BV-MZ-AVSM DZMG
MVTZGREV WL-BZ-HSL-WZ ML TLLW
MVG MZ-MVH-WRAR MVG
MVFGIZO WL-MVS-ORMR MVFGIZO
MLINZO WLS-Z-GZ-S-WZS MLINZO
MLG MR-WZS-GSZM-ARV ML GFIPVB
MLGRXV MV-WZ-GZAR-GSRM ML GFIPVB RXV
MLD PFG MLD
MFNYVI YVS-YRS-PV-ZH-XSRMRTS DSZG'H DIRGGVM
 
LYQVXGREV YR-MV-BVR TLZO
LYHVIEV SZO-ARW LYHVIEV
LYHGZXOV WZ-SL-WVHS-ASZ LYHGZXOV
LXXFKB BVVO-GHLW GZPVM
LU GLS-MR-GPZO-OL LXVZM URHS
LUUVMHREV YRM-PRV-QRMS-QRS-WVA-QZB LUUVMHREV
LMXV GZ-OZR-WR LMXV
LMOB GZ-VR-GZB-Z-BZS LMOB
LKVIZGV BV-MZSO-MRHS DLIP ZG
LKKLIGFMRGB ZHS-TZ-ZORM LKKLIGFMRGB
LKKLHRGRLM MV-SV-GHZS-QRS-HSRM LKKLHRGRLM
LI VS-WL-WZS-TLS VRGSVI
LIZMTV GXSRO-OSV-HLR LIZMTV
LIWVI YV-VS-SL-ARMR LIWVI
LIWMZMXV OVR-ZA-QZS FMWVI TILFMW
LIRTRMZGV WZH-GVS-WL YVTRM
LGSVI OZ-V-XRS LGSVI
LFG XOL-WRS LFG HRWV
LEVIOZB YV-PZ-SZH-GHLA LEVIOZB
 
KZIVMGSVHRH ZGHZMS IRY
KZIGRXFOZI Z-BL-ZW-WL-MVS KZIGRXFOZI
KZIGB WZ-HSZ-QZS KZIGB
KZB MZ-VOR-BZ KZB
KVMZORAV GZS-MR-WVH-GZMS HVG YZXP
KVIXVMG BZO NLMVB
KVIRLW WZ-ZSO-ASRM KVIRLW
KVIRLWRX WZ-ZO-ASRM-GSRM-NLZHR KVIRLW RXV XZG
KVINRG TLH-HSR-V KVINRG
KVIHLMMVO WZ-MV-OVR NVNYVI
KSLGLTIZKS YVS-XSR-NZ-SZW-MRO KSLGLTIZKS
KROO YLC YR-HL-WRS-WLG-HZSR-YR-GHZS HRXP KRT YLC
KRMMVW WLDM YRO-WZS-SZH-GZMS-BZ KRMMVW WLDM
KOZMV GHRWR YRIW
KOZHNZ WRO-WR-TSROR KOZHNZ
KLRMG YV-HL-WV-WVA-ZSV KRT KLRMG
KLMGLLM GPLHS-QZS-WZ-MZ-VOG UOLZGRMT YZIIVO
KLHRGRLM YROS-SZH-ZSM KLHRGRLM
KLHHRYOV GZ-SZ-ZS-GZB KLHHRYOV
KLHG HZS-WVR KLHG
KIVKZIV SZHS-GZB-SL-WRG-MV KIVKZIV
KIVHVMG PFG KIVHVMG
KIVERLFH YRS-GHV-WRS KIVERLFH
KIRNZIB ZOGHVS-MZM-WZB-SR-TRS 1HG KLHRGRLM
KIRLIRGB SZMV-KVHLWR KIRLIRGB
KILYZYOV WZ-GHR KILYZYOV
KILYOVN MZ-MRHS-GHLS YRT QLY
KILXVVW MZB-MRS-QRS TL
KILTIVHH MZS-HZR KILTIVHH
KILGVXG ZS-XSZMS HVOU WVUVMHV
KILERWV BRH-MRO KILERWV
KFIKOV WRMO-XSR KFIKOV
KBILGVXSMRX XLS-MZ-XSZMS UZMXB URIV
 
JFVHGRLM ZS-QZS VZI
JFRXP HSRO-OLS JFRXP
 
IZWZI VHZG-GHZMS(I) ORHGVM
IZRW WVAQZB IZRW
IZROSVZW Z-WV-TVS-SR HSRKKRMT KLRMG
IZROILZW PLMS-MZ-ZO-YZMHR-YR-GSRM IZROILZW
IZOOBRMT Z-OZS-MZ-L-TOZORS TZGSVIRMT
IZMTV ZM-AZS WRHGZMXV
IZGV TZS-VS-BZSM IZYYRG ZGV
IZGRLM MZ-Z-QZS IZGRLM
IZERMV XSFHS-PZ(I) IZERMV
IVZXS RO-WZB(I) IVZXS
IVZWB PFG(I) IVZWB
IVZI YV-PZ-WVMS(I) IVZI
IVXVRKG HSLA-GVS IVXVRKG
IVXLNNVMW XSV-SL-GZR-GZSM IVXLNNVMW
IVXLMMZRHHZMXV SZ-Z-XRWR RMHKVXGLI
IVXLMMLRGVI GZ-SZ-MV-ZO-BZ NZPV HFIV
IVXLIW TZS-ZS-MZS-POLOR I-V-ILKV
IVW OR-XSR IVW
IVVU GHZ-ASRM YOZXP ILXP
IVVNYZIP VS-MZ-XLS TL RM
IVURIV MZ-MZ-XLS IVURIV
IVTFOZGV MZ-BVO-M IVTFOZGV
IVRMULIXV MZO-WARO IVRMULIXV
IVORVU ZTZMS-GLO-QZB IVORVU
IVORVEV MZS-QRS-XL-MZO-BZ IVNLEV
IVLITZMRAV SZ-WRG-AZS IVLITZMRAV
IVKOZXVNVMG MR-MZ-WL-MRO IVKOZXVNVMG
IVKLIG DSL-MVS TLG DLIW
IVKIVHVMGZGREV GPZ-MZA-MROR GIRKOV NVM
IVJFVHG QL-PZBVW-TLS ZHP ULI
IVHVIEV SVHS-Q-V IVHVIEV
IVHGIRXG YZ-SL-XSRMR IVHGIRXG
IVGRIV ZS-SLH-GVVMW IVGRIV
IVGIVZG QR-WRM-MVH-XSZMS IVGIVZG
IVGFIM MZ-WAZS XZNV YZXP
IVEVZO DSL-MVS(O) IVEVZO
IVEVIG MZ-HR-BRA GFIM ZYLFG
IVEVGNVMG YZ-MZH-XOZ(I) XLIMVI
IRWTV TZS-TSRO-PVRW IZYYRG IRWTV
IRUOVNZM YV-ZO-WL-SLHGVVM IRUOVNVM
IREVI GLS-BRO-PZO NFXS DZGVI
ILYLG YLNY Z-BV-HSR-MZ-GZS-RS VTT UOB
ILXPVG OVHA-BRO-YVHSR HZMW YLRO
ILOO BVS-NZH ILOO
ILFMW MZA-KZH(I) ILFMW
ILFGV TZS-YRS-GPVVM IZYYRG GIZRO
IFMMVI MRS-WARW-GVRS IFMMVI
 
HZYLGZTV Z-GPVO-BZS SRMWVIVW
HZYLGVFI Z-GPVO-VO-RMR GILFYOV NZPVI
HZROLI XSZ-OV-TZR DSRGV XZKH
HZOEZTV MZ-SZH-TOZS KRXP GSVN FK
HZG YRS-OZ-HZMZ-XRW-WZ-SR ZKKOV HRGGRMT
HXZIOVG IVW OSV-XSR(H & I) IVW
HXSVWFOV YVS-VS-SL-ARMR HXSVWFOV
HXLFG SZ-Z-HRW-ZO-HRAR-TRS HSLIG IZXXLLM
HXIVVM YVHS-MZ-MVH-WRAR HXIVVM
HVZNZM GPZO-PZS-WRMVS-RS HVZNZM
HVXIVG YZS-SZH-GPRS HVXIVG
HVXGLI BLVSR(H) HVXGLI
HVXFIV BV-WASV-ZO-GHRHR HNZOO HVXFIRGB
HVRAV BVVO-HGLW HVRAV
HVOVXG YV-GZS-SZH-TOZ GLLP LFG
HVNR XLOLM WZ-ZSO-ASRM-YR-GHZ-MZ-WZSO WLG WILK
HVG WAVS-XRW-WZ-SR VOP HRGGRMT
HSZXPOV WR-YZS-MVHS-TLSA HSZXPOV
HSVOO YV-ZO-WLS-YV-XZ HSVOO
HSLIV GZS-YZSM(H) HSLIV
HSLIG YLHS-PVVHS HSLIG
HRWV YLHS-PVVHS HRWV
HRTSG BV-VO-GHZMS HVVM
HRTMZO MZ-VS-VS-TRHS YB HRTMH
HRNKOVC ZOZS-RS-MV-GRS RMMVI DRIV
HRG GPRM-XRW-WZ-SR RXV HRGGRMT
HRGFZGV Z-SL-GZB (H) HRGFZGV
HNLPV ORG HNLPV
HMRKVI LS-YVSR KRXP 'VN LUU
HKZXV YV-GPZS YVGDVVM
HKVXRZO V-BRS-HRS NZRM GSRMT
HKVVW BL-ALMH HDRUG NLGRLM
HKLIZWRX ZS-MZ-SL-MVRO MLD ZMW GSVM
HKLGGVI VVO-GHZB-R HKLGGVI
HKIZB POVHS-HL-WROARM HMZPV KIZB
HJFZWILM MZS-TSRAR HJFZHS
HGLIN MV-LO HGLIN
HGIZUV MZ-DL-TSR-TLRW SLV
HGIZTTOVI XSB-MV-WV-WZSV HGIZTTOVI
HGIZGVTB MZ-SZ-GZS(H) HGIZGVTB
HGIVZN GLS-MR-ORS IFMMRMT DZGVI
HGIVMTGS WASVO HGIVMTGS
HGIVGXS WVHA-GHLLW HGIVGXS
HGIRPV MZB-WZO-TSZO HGIRPV
HGIRK SZ-GRS-QZS HGIRK
HGFYYLIM MRO-GZ HGFYYLIM
HFYQVXG MZ-MRHS-BZAARV HNZOO QLY
HFYNVITV GPZO-XOZ-BR-BZS DVMG FMWVI DZGVI
HFYNRG Z-MRS-OVS HVMW
HFYLIWRMZGV ZO-PSR-MZO-WAO SVOKRMT VZXS LGSVI
HFXXVVW BZS-GZB-TL-V-VOZS NZPV TLLW
HFXXVHH FG-AZS RG RH WLMV
HFXXVHHUFO FG-AZS-SZ-WVA-YRM RG RH WLMV DVOO
HFXXVHHREV FG-AZS-HRW HFXXVHH HXZI
HFXS BRH-XOVS HLC
HFUUVI GL-SL-MV HFUUVI
HFNNZIB HSRM-TL-YZS HFNNVI NZIB
HFKKOVNVMGZIB GPZ-TL-MV-MZM-WVB-SV 3IW KLHRGRLM
HFKKOB MZO-BVS-SR HFKKOB
HFKKOB HSRK MZOTZ-SR-GHRM-MZS-ZROS HFKKOB HSRK
HFKKLIG YZ-ZS-SLG-TOR WVKVMW
HFIIVMWVI MV-MZ-XSZ HFIIVMWVI
HFIILFMW MZA-KZH(H) HFIILFMW
HFIEREV BRH-WZ-BZ HFIEREV
HBHGVN WR-YZ-GHZ-ZH-ASR-YR-GHRM HBHGVN
 
GZXGRXZO V-XSRSM GZXGRXZO
GZPV TZS-GZSM GZPV
GZMP XSZB-WZ-TZSR GLIGLRHV
GZMP WVHGILBVI XSZB-WZ-TZSR-MZRO-GHZRWR GLIGLRHV PROOVI
GZITVG DLO-WLMR GZITVG
GZHP GZAR-MZ-VS-WRO-PRW GFIPVB ZHP
GVZN WVS-MZ-ZH-GHL-HR GVZ NLFHV
GVIIZXV ZOR-PSR-SL-MV-LSZ(G) GVIIZXV
GVIIZRM GZHSR-MZ-SZO-GSRM GFIPVB IZRM
GVIIRGLIB PZ-BZS(G) GVIIRGLIB
GSZG GZAR-XSZ GFIPVB SZG
GSV XSZ-TVV YOFV-QZB
GSVRI YRS GSVRI
GSVIVZUGVI GZ-AR-PDZ-R-YV-PZ-WR GFIPVB SVIV ZUGVI
GSVHV XSZ-TR-L-VS GSV HVV
GSVB XSZ-TVV(B) GSV B
GSRH WR GSV
GLTVGSVI GZ-YROS GLTVGSVI
GLIKVWL OL-YV-XZ URHS HSVOO
GLGZO GZ-ZO-HL GLGZO
GIZXVI YVS-MZ-ZO-PZS-SR GIZXVI
GIZUURX WRZTIZN SZMV-YZ-MZ-ZH-WALS WRZTIZN HGLIB ORMV
GIZRM XLS-MZR-ZOR-YZSM-HR GIZRM
GIZMHKLIGZGRLM Z-SZS-WZ-Z-XSZ GIZMHKLIGZGRLM
GIVMXS V-TZWV GIVMXS
GIRKOV GPZ-RS GIRKOV
GILLK MZO-WVS-SR GILLK
GIFXP XSRWL-GHL YRT ZFGL
GBKV ZOGS-ZS-Z-GVS GBKV
 
FMWVI YR-BZS FMWVI
FMRWVMGRURVW WL-YZB-SLHVM-V FMRWVMGRURVW
FMRG WZ-ZA-QZS(F) FMRG
FMHSZXPOV ML-WZ-VS-MVHS-TLSA FMHSZXPOV
FMGRO FS-JFL-SL FMGRO
 
ERXRMRGB MZ-SLH-ZS-TRS GSVIV ZYLFG
EROOZTV XSZS-SL-LS-OSZM-RS NZMB HSVOGVI
ERHRYRORGB MZB-VH-GVV ERHRYRORGB
ERGZO GZ-VS-BV-HB ERGZO
 
DZIMRMT YROS-SV-MVS(D) DZIMRMT
DZH MV-GVS DZH
DZGVI GPLS DZGVI
DZEV BROS-PLOS DZEV
DVZKLM YVS-WZS-Z-SR-QRS-TZMR URTSGRMT DVZKLM
DVOO GL-SZ-SZ-WOZB DVOO
DSVM TOLV-VS-MZ-ZS-DL-SZR DVZHVO SVM
DSVIV TOLV-RS-JFR-ZS DVZHVO SVIV
DSRXS TOLV-RS-Z-SHR-GOLM DVZHVO GRVW GLTVGSVI
DROO TOLV-RS-WLG-HZSR HRXP DVZHVO
DRIV YVHS-GHLHRV HNZOO DRIV
DRGS YROS(D) DRGS
DRGSRM YROS-YRTRS DRGS RM
DRGSLFG GZ-TZRW DRGSLFG
DLLW XSRA URIV DLLW
DLFMW XZS-WZ-PSR DLFMW
BZIW Z-WVO-GZSO BZIW
ALMV YRS-MZ-SZH-WALS ALMV
File diff suppressed because it is too large. Load diff
+703
View File
@@ -0,0 +1,703 @@
#include <string.h>
#include <stdio.h>
#include <strings.h>
#ifndef X
#define X 0
#endif
char *dict[][3] = {
{ "A", "WOL-LA-CHEE", "ANT" },
{ "A", "BE-LA-SANA", "APPLE" },
{ "A", "TSE-NILL", "AXE" },
{ "B", "NA-HASH-CHID", "BADGER" },
{ "B", "SHUSH", "BEAR" },
{ "B", "TOISH-JEH", "BARREL" },
{ "C", "MOASI", "CAT" },
{ "C", "TLA-GIN", "COAL" },
{ "C", "BA-GOSHI", "COW" },
{ "D", "BE", "DEER" },
{ "D", "CHINDI", "DEVIL" },
{ "D", "LHA-CHA-EH", "DOG" },
{ "E", "AH-JAH", "EAR" },
{ "E", "DZEH", "ELK" },
{ "E", "AH-NAH", "EYE" },
{ "F", "CHUO", "FIR" },
{ "F", "TSA-E-DONIN-EE", "FLY" },
{ "F", "MA-E", "FOX" },
{ "G", "AH-TAD", "GIRL" },
{ "G", "KLIZZIE", "GOAT" },
{ "G", "JEHA", "GUM" },
{ "H", "TSE-GAH", "HAIR" },
{ "H", "CHA", "HAT" },
{ "H", "LIN", "HORSE" },
{ "I", "TKIN", "ICE" },
{ "I", "YEH-HES", "ITCH" },
{ "I", "A-CHI", "INTESTINE" },
{ "J", "TKELE-CHO-G", "JACKASS" },
{ "J", "AH-YA-TSINNE", "JAW" },
{ "J", "YIL-DOI", "JERK" },
{ "K", "JAD-HO-LONI", "KETTLE" },
{ "K", "BA-AH-NE-DI-TININ", "KEY" },
{ "K", "KLIZZIE-YAZZIE", "KID" },
{ "L", "DIBEH-YAZZIE", "LAMB" },
{ "L", "AH-JAD", "LEG" },
{ "L", "NASH-DOIE-TSO", "LION" },
{ "M", "TSIN-TLITI", "MATCH" },
{ "M", "BE-TAS-TNI", "MIRROR" },
{ "M", "NA-AS-TSO-SI", "MOUSE" },
{ "N", "TSAH", "NEEDLE" },
{ "N", "A-CHIN", "NOSE" },
{ "O", "A-KHA", "OIL" },
{ "O", "TLO-CHIN", "ONION" },
{ "O", "NE-AHS-JAH", "OWL" },
{ "P", "CLA-GI-AIH", "PANT" },
{ "P", "BI-SO-DIH", "PIG" },
{ "P", "NE-ZHONI", "PRETTY" },
{ "Q", "CA-YEILTH", "QUIVER" },
{ "R", "GAH", "RABBIT" },
{ "R", "DAH-NES-TSA", "RAM" },
{ "R", "AH-LOSZ", "RICE" },
{ "S", "DIBEH", "SHEEP" },
{ "S", "KLESH", "SNAKE" },
{ "T", "D-AH", "TEA" },
{ "T", "A-WOH", "TOOTH" },
{ "T", "THAN-ZIE", "TURKEY" },
{ "U", "SHI-DA", "UNCLE" },
{ "U", "NO-DA-IH", "UTE" },
{ "V", "A-KEH-DI-GLINI", "VICTOR" },
{ "W", "GLOE-IH", "WEASEL" },
{ "X", "AL-NA-AS-DZOH", "CROSS" },
{ "Y", "TSAH-AS-ZIH", "YUCCA" },
{ "Z", "BESH-DO-TLIZ", "ZINC" },
{ "CORPS", "DIN-NEH-IH", "CLAN" },
{ "DIVISION", "ASHIH-HI", "SALT" },
{ "REGIMENT", "TABAHA", "EDGE WATER" },
{ "BATTALION", "TACHEENE", "RED SOIL" },
{ "COMPANY", "NAKIA", "MEXICAN" },
{ "PLATOON", "HAS-CLISH-NIH", "MUD" },
{ "SECTION", "YO-IH", "BEADS" },
{ "SQUAD", "DEBEH-LI-ZINI", "BLACK SHEEP" },
{ "COMMANDING GEN.", "BIH-KEH-HE(G)", "WAR CHIEF" },
{ "MAJOR GEN.", "SO-NA-KIH", "TWO STAR" },
{ "BRIGADIER GEN.", "SO-A-LA-IH", "ONE STAR" },
{ "COLONEL", "ATSAH-BESH-LE-GAI", "SILVER EAGLE" },
{ "LT.COLONEL", "CHE-CHIL-BE-TAH-BESH-LEGAI", "SILVER OAK LEAF" },
{ "MAJOR", "CHE-CHIL-BE-TAH-OLA", "GOLD OAK LEAF" },
{ "CAPTAIN", "BESH-LEGAI-NAH-KIH", "TWO SILVER BARS" },
{ "LIEUTENANT", "BESH-LEGAI-A-LAH-IH", "ONE SILVER BAR" },
{ "COMMANDING OFFICER", "HASH-KAY-GI-NA-TAH", "WAR CHIEF" },
{ "EXECUTIVE OFFICER", "BIH-DA-HOL-NEHI", "THOSE IN CHARGE" },
{ "AFRICA", "ZHIN-NI", "BLACKIES" },
{ "ALASKA", "BEH-HGA", "WITH WINTER" },
{ "AMERICA", "NE-HE-MAH", "OUR MOTHER" },
{ "AUSTRALIA", "CHA-YES-DESI", "ROLLED HAT" },
{ "BRITAIN", "TOH-TA", "BETWEEN WATERS" },
{ "CHINA", "CEH-YEHS-BESI", "BRAIDED HAIR" },
{ "FRANCE", "DA-GHA-HI", "BEARD" },
{ "GERMANY", "BESH-BE-CHA-HE", "IRON HAT" },
{ "ICELAND", "TKIN-KE-YAH", "ICE LAND" },
{ "INDIA", "AH-LE-GAI", "WHITE CLOTHES" },
{ "ITALY", "DOH-HA-CHI-YALI-TCHI", "STUTTER" },
{ "JAPAN", "BEH-NA-ALI-TSOSIE", "SLANT EYE" },
{ "PHILIPPINE", "KE-YAH-DA-NA-LHE", "FLOATING ISLAND" },
{ "RUSSIA", "SILA-GOL-CHI-IH", "RED ARMY" },
{ "S.AMERICA", "SHA-DE-AH-NE-HI-MAH", "SOUTH OUR MOTHER" },
{ "SPAIN", "DEBA-DE-NIH", "SHEEP PAIN" },
{ "PLANES", "WO-TAH-DE-NE-IH", "AIR FORCE" },
{ "DIVE BOMBER", "GINI", "CHICKEN HAWK" },
{ "TORPEDO PLANE", "TAS-CHIZZIE", "SWALLOW" },
{ "OBS. PLANE", "NE-AS-JAH", "OWL" },
{ "FIGHTER PLANE", "DA-HE-TIH-HI", "HUMMING BIRD" },
{ "BOMBER PLANE", "JAY-SHO", "BUZZARD" },
{ "PATROL PLANE", "GA-GIH", "CROW" },
{ "TRANSPORT", "ATSAH", "EAGLE" },
{ "SHIPS", "TOH-DINEH-IH", "SEA FORCE" },
{ "BATTLESHIP", "LO-TSO", "WHALE" },
{ "AIRCRAFT", "TSIDI-MOFFA-YE-HI", "BIRD CARRIER" },
{ "SUBMARINE", "BESH-LO", "IRON FISH" },
{ "MINE SWEEPER", "CHA", "BEAVER" },
{ "DESTROYER", "CA-LO", "SHARK" },
{ "TRANSPORT", "DINEH-NAY-YE-HI", "MAN CARRIER" },
{ "CRUISER", "LO-TSO-YAZZIE", "SMALL WHALE" },
{ "MOSQUITO BOAT", "TSE-E", "MOSQUITO" },
{ "JANUARY", "ATSAH-BE-YAZ", "SMALL EAGLE" },
{ "FEBRUARY", "WOZ-CHEIND", "SQUEAKY VOICE" },
{ "MARCH", "TAH-CHILL", "SMALL PLANT" },
{ "APRIL", "TAH-TSO", "BIG PLANT" },
{ "MAY", "TAH-TSOSIE", "SMALL PLANT" },
{ "JUNE", "BE-NE-EH-EH-JAH-TSO", "BIG PLANTING" },
{ "JULY", "BE-NE-TA-TSOSIE", "SMALL HARVEST" },
{ "AUGUST", "BE-NEEN-TA-TSO", "BIG HARVEST" },
{ "SEPTEMBER", "GHAW-JIH", "HALF" },
{ "OCTOBER", "NIL-CHI-TSOSIE", "SMALL WIND" },
{ "NOVEMBER", "NIL-CHI-TSO", "BIG WIND" },
{ "DECEMBER", "YAS-NIL-TES", "CRUSTED SNOW" },
{ "ABANDON", "YE-TSAN", "RUN AWAY FROM" },
{ "ABOUT", "WOLA-CHI-A-MOFFA-GAHN", "ANT FIGHT" },
{ "ABREAST", "WOLA-CHEE-BE-YIED", "ANT BREAST" },
{ "ACCOMPLISH", "UL-SO", "ALL DONE" },
{ "ACCORDING", "BE-KA-HO", "ACCORDING TO" },
{ "ACKNOWLEDGE", "HANOT-DZIED", "ACKNOWLEDGE" },
{ "ACTION", "AH-HA-TINH", "PLACE OF ACTION" },
{ "ACTIVITY", "AH-HA-TINH-Y", "ACTION ENDING IN Y" },
{ "ADEQUATE", "BEH-GHA", "ENOUGH" },
{ "ADDITION", "IH-HE-DE-NDEL", "ADDITION" },
{ "ADDRESS", "YI-CHIN-HA-TSE", "ADDRESS" },
{ "ADJACENT", "BE-GAHI", "NEAR" },
{ "ADJUST", "HAS-TAI-NEL-KAD", "ADJUST" },
{ "ADVANCE", "NAS-SEY", "AHEAD" },
{ "ADVISE", "NA-NETIN", "ADVISE" },
{ "AERIAL", "BE-ZONZ", "STINGER" },
{ "AFFIRMATIVE", "LANH", "AFFIRMATIVE" },
{ "AFTER", "BI-KHA-DI(A)", "AFTER" },
{ "AGAINST", "BE-NA-GNISH", "AGAINST" },
{ "AID", "EDA-ELE-TSOOD", "AID" },
{ "AIR", "NILCHI", "AIR" },
{ "AIRDOME", "NILCHI-BEGHAN", "AIRDOME" },
{ "ALERT", "HA-IH-DES-EE", "ALERT" },
{ "ALL", "TA-A-TAH(A)", "ALL" },
{ "ALLIES", "NIH-HI-CHO", "ALLIES" },
{ "ALONG", "WOLACHEE-SNEZ", "LONG ANT" },
{ "ALSO", "EH-DO", "ALSO" },
{ "ALTERNATE", "NA-KEE-GO-NE-NAN-DEY-HE", "SECOND POSITION" },
{ "AMBUSH", "KHAC-DA", "AMBUSH" },
{ "AMMUNITION", "BEH-ELI-DOH-BE-CAH-ALI-TAS-AI", "AMMUNITION" },
{ "AMPHIBIOUS", "CHAL", "FROG" },
{ "AND", "DO", "AND" },
{ "ANGLE", "DEE-CAHN", "SLANTING" },
{ "ANNEX", "IH-NAY-TANI", "ADDITION" },
{ "ANNOUNCE", "BEH-HA-O-DZE", "ANNOUNCE" },
{ "ANTI", "WOL-LA-CHEE-TSIN", "ANT ICE" },
{ "ANTICIPATE", "NI-JOL-LIH", "ANTICIPATE" },
{ "ANY", "TAH-HA-DAH", "ANY" },
{ "APPEAR", "YE-KA-HA-YA", "APPEAR" },
{ "APPROACH", "BI-CHI-OL-DAH", "APPROACH" },
{ "APPROXIMATE", "TO-KUS-DAN", "APPROXIMATE" },
{ "ARE", "GAH-TSO", "BIG RABBIT" },
{ "AREA", "HAZ-A-GIH", "AREA" },
{ "ARMOR", "BESH-YE-HA-DA-DI-TEH", "IRON PROTECTOR" },
{ "ARMY", "LEI-CHA-IH-YIL-KNEE-IH", "ARMY" },
{ "ARRIVE", "IL-DAY", "ARRIVE" },
{ "ARTILLERY", "BE-AL-DOH-TSO-LANI", "MANY BIG GUNS" },
{ "AS", "AHCE", "AS" },
{ "ASSAULT", "ALTSEH-E-JAH-HE", "FIRST STRIKER" },
{ "ASSEMBLE", "DE-JI-KASH", "BUNCH TOGETHER" },
{ "ASSIGN", "BAH-DEH-TAHN", "ASSIGN" },
{ "AT", "AH-DI", "AT" },
{ "ATTACK", "AL-TAH-JE-JAY", "ATTACK" },
{ "ATTEMPT", "BO-O-NE-TAH(A)", "TRY" },
{ "ATTENTION", "GIHA", "ATTENTION" },
{ "AUTHENTICATOR", "HANI-BA-AH-HO-ZIN", "KNOW ABOUT" },
{ "AUTHORIZE", "BE-BO-HO-SNEE", "AUTHORIZE" },
{ "AVAILABLE", "TA-SHOZ-TEH-IH", "AVAILABLE" },
{ "BAGGAGE", "KLAILH(B)", "BAGGAGE" },
{ "BANZAI", "NE-TAH", "FOOL THEM" },
{ "BARGE", "BESH-NA-ELT", "BARGE" },
{ "BARRAGE", "BESH-BA-WA-CHIND", "BARRAGE" },
{ "BARRIER", "BIH-CHAN-NI-AH", "IN THE WAY" },
{ "BASE", "BIH-TSEE-DIH", "BASE" },
{ "BATTERY", "BIH-BE-AL-DOH-TKA-IH", "THREE GUNS" },
{ "BATTLE", "DA-AH-HI-DZI-TSIO", "BATTLE" },
{ "BAY", "TOH-AH-HI-GHINH", "BAY" },
{ "BAZOOKA", "AH-ZHOL", "BAZOOKA" },
{ "BE", "TSES-NAH", "BEE" },
{ "BEACH", "TAH-BAHN(B)", "BEACH" },
{ "BEEN", "TSES-NAH-NES-CHEE", "BEE NUT" },
{ "BEFORE", "BIH-TSE-DIH", "BEFORE" },
{ "BEGIN", "HA-HOL-ZIZ", "COMMENCE FROM" },
{ "BELONG", "TSES-NAH-SNEZ", "LONG BEE" },
{ "BETWEEN", "BI-TAH-KIZ", "BETWEEN" },
{ "BEYOND", "BILH-LA", "DI DOWN BELOW" },
{ "BIVOUAC", "EHL-NAS-TEH", "BRUSH SHELTER" },
{ "BOMB", "A-YE-SHI", "EGGS" },
{ "BOOBY TRAP", "DINEH-BA-WHOA-BLEHI", "MAN TRAP" },
{ "BORNE", "YE-CHIE-TSAH", "BORN ELK" },
{ "BOUNDARY", "KA-YAH-BI-NA-HAS-DZOH(B)", "BOUNDARY" },
{ "BULL DOZER", "DOLA-ALTH-WHOSH", "BULL SLEEP" },
{ "BUNKER", "TSAS-KA", "SANDY HOLLOW" },
{ "BUT", "NEH-DIH", "BUT" },
{ "BY", "BE-GHA", "BY" },
{ "CABLE", "BESH-LKOH", "WIRE ROPE" },
{ "CALIBER", "NAHL-KIHD", "MOVE AROUND" },
{ "CAMP", "TO-ALTSEH-HOGAN", "TEMPORARY PLACE" },
{ "CAMOUFLAGE", "DI-NES-IH", "HID" },
{ "CAN", "YAH-DI-ZINI", "CAN" },
{ "CANNONEER", "BE-AL-DOH-TSO-DEY-DIL-DON-IGI", "BIG GUN OPERATOR" },
{ "CAPACITY", "BE-NEL-AH", "CAPACITY" },
{ "CAPTURE", "YIS-NAH", "CAPTURE" },
{ "CARRY", "YO-LAILH", "CARRY" },
{ "CASE", "BIT-SAH", "CASE" },
{ "CASUALTY", "BIH-DIN-NE-DEY", "PUT OUT OF ACTION" },
{ "CAUSE", "BI-NIH-NANI", "CAUSE" },
{ "CAVE", "TSA-OND", "ROCK CAVE" },
{ "CEILING", "DA-TEL-JAY", "SEAL" },
{ "CEMETERY", "JISH-CHA", "AMONG DEVILS" },
{ "CENTER", "ULH-NE-IH", "CENTER" },
{ "CHANGE", "THLA-GO-A-NAT-ZAH", "CHANGE" },
{ "CHANNEL", "HA-TALHI-YAZZIE", "SMALL SINGER" },
{ "CHARGE", "AH-TAH-GI-JAH", "CHARGE" },
{ "CHEMICAL", "TA-NEE", "ALKALI" },
{ "CIRCLE", "NAS-PAS", "CIRCLE" },
{ "CIRCUIT", "AH-HEH-HA-DAILH", "CIRCUIT" },
{ "CLASS", "ALTH-AH-A-TEH", "CLASS" },
{ "CLEAR", "YO-AH-HOL-ZHOD", "CLEAR" },
{ "CLIFF", "TSE-YE-CHEE", "CLIFF" },
{ "CLOSE", "UL-CHI-UH-NAL-YAH", "CLOSE" },
{ "COAST GUARD", "TA-BAS-DSISSI", "SHORE RUNNER" },
{ "CODE", "YIL-TAS", "PECK" },
{ "COLON", "NAKI-ALH--DEH-DA-AL-ZHIN", "TWO SPOTS" },
{ "COLUMN", "ALTH-KAY-NE-ZIH", "COLUMN" },
{ "COMBAT", "DA-AH-HI-JIH-GANH", "FIGHTING" },
{ "COMBINATION", "AL-TKAS-EI", "MIXED" },
{ "COME", "HUC-QUO", "COME" },
{ "COMMA", "TSA-NA-DAHL", "TAIL DROP" },
{ "COMMERCIAL", "NAI-EL-NE-HI", "COMMERCIAL" },
{ "COMMIT", "HUC-QUO-LA-JISH", "COME GLOVE" },
{ "COMMUNICATION", "HA-NEH-AL-ENJI", "MAKING TALK" },
{ "CONCEAL", "BE-KI-ASZ-JOLE", "CONCEAL" },
{ "CONCENTRATION", "TA-LA-HI-JIH", "ONE PLACE" },
{ "CONCUSSION", "WHE-HUS-DIL", "CONCUSSION" },
{ "CONDITION", "AH-HO-TAI", "HOW IT IS" },
{ "CONFERENCE", "BE-KE-YA-TI", "TALK OVER" },
{ "CONFIDENTIAL", "NA-NIL-IN", "KEPT SECRET" },
{ "CONFIRM", "TA-A-NEH", "MAKE SURE" },
{ "CONQUER", "A-KEH-DES-DLIN", "WON" },
{ "CONSIDER", "NE-TSA-CAS", "THINK IT OVER" },
{ "CONSIST", "BILH(C)", "CONSIST" },
{ "CONSOLIDATE", "AH-HIH-HI-NIL", "PUT TOGETHER" },
{ "CONSTRUCT", "AHL-NEH", "TO MAKE" },
{ "CONTACT", "AH-HI-DI-DAIL", "COME TOGETHER" },
{ "CONTINUE", "TA-YI-TEH", "CONTINUE" },
{ "CONTROL", "NAI-GHIZ", "CONTROL" },
{ "CONVOY", "TKAL-KAH-O-NEL", "MOVING ON WATER" },
{ "COORDINATE", "BEH-EH-HO-ZIN-NA-AS-DZOH", "KNOWN LINES" },
{ "COUNTER ATTACK", "WOLTAH-AL-KI-GI-JEH", "COUNTER ACT" },
{ "COURSE", "CO-JI-GOH", "COURSE" },
{ "CRAFT", "AH-TOH", "NEST" },
{ "CREEK", "TOH-NIL-TSANH", "VERY LITTLE WATER" },
{ "CROSS", "AL-N-AS-DZOH", "CROSS" },
{ "CUB", "SHUSH-YAHZ", "CUB" },
{ "DASH", "US-DZOH", "DASH" },
{ "DAWN", "HA-YELI-KAHN", "DAWN" },
{ "DEFENSE", "AH-KIN-CIL-TOH", "DEFENSE" },
{ "DEGREE", "NAHL-KIHD", "DEGREE" },
{ "DELAY", "BE-SITIHN", "DEER LAY" },
{ "DELIVER", "BE-BIH-ZIHDE", "DEER LIVER" },
{ "DEMOLITION", "AH-DEEL-TAHI", "BLOW UP" },
{ "DENSE", "HO-DILH-CLA(D)", "WET" },
{ "DEPART", "DA-DE-YAH", "DEPART" },
{ "DEPARTMENT", "HOGAN", "DEPARTMENT" },
{ "DESIGNATE", "YE-KHI-DEL-NEI", "POINT OUT" },
{ "DESPERATE", "AH-DA-AH-HO-DZAH", "DOWN TO LAST" },
{ "DETACH", "AL-CHA-NIL", "DETACHED" },
{ "DETAIL", "BE-BEH-SHA", "DEER TAIL" },
{ "DETONATOR", "AH-DEEL-TAHI(OR)", "BLOWN UP" },
{ "DIFFICULT", "NA-NE-KLAH", "DIFFICULT" },
{ "DIG-IN", "LE-EH-GADE", "DIG IN" },
{ "DIRECT", "AH-JI-GO", "DIRECT" },
{ "DISEMBARK", "EH-HA-JAY", "GET OUT" },
{ "DISPATCH", "LA-CHAI-EN-SEIS-BE-JAY", "DOG IS PATCH" },
{ "DISPLACE", "HIH-DO-NAL", "MOVE" },
{ "DISPLAY", "BE-SEIS-NA-NEH", "DEER IS PLAY" },
{ "DISPOSITION", "A-HO-TEY", "DISPOSITION" },
{ "DISTRIBUTE", "NAH-NEH", "DISTRIBUTE" },
{ "DISTRICT", "BE-THIN-YA-NI-CHE", "DEER ICE STRICT" },
{ "DO", "TSE-LE", "SMALL PUP" },
{ "DOCUMENT", "BEH-EH-HO-ZINZ", "DOCUMENT" },
{ "DRIVE", "AH-NOL-KAHL", "DRIVE" },
{ "DUD", "DI-GISS-YAHZIE", "SMALL DUMMY" },
{ "DUMMY", "DI-GISS-TSO", "BIG DUMMY" },
{ "EACH", "TA-LAHI-NE-ZINI-GO(D)", "EACH" },
{ "ECHELON", "WHO-DZAH", "LINE" },
{ "EDGE", "BE-BA-HI", "EDGE" },
{ "EFFECTIVE", "BE-DELH-NEED", "EFFECTIVE" },
{ "EFFORT", "YEA-GO", "WITH ALL YOUR MIGHT" },
{ "ELEMENT", "AH-NA-NAI", "TROOP REPRESENTING OTHERS" },
{ "ELEVATE", "ALI-KHI-HO-NE-OHA", "ELEVATE" },
{ "ELIMINATE", "HA-BEH-TO-DZIL", "ELIMINATE" },
{ "EMBARK", "EH-HO-JAY", "GET ON" },
{ "EMERGENCY", "HO-NEZ-CLA", "EMERGENCY" },
{ "EMPLACEMENT", "LA-AZ-NIL", "EMPLACEMENT" },
{ "ENCIRCLE", "YE-NAS-TEH(E)", "ENCIRCLE" },
{ "ENCOUNTER", "BI-KHANH", "GO AGAINST" },
{ "ENGAGE", "A-HA-NE-HO-TA", "AGREED" },
{ "ENGINE", "CHIDI-BI-TSI-TSINE(E)", "ENGINE" },
{ "ENGINEER", "DAY-DIL-JAH-HE", "ENGINEER" },
{ "ENLARGE", "NIH-TSA-GOH-AL-NEH", "MAKE BIG" },
{ "ENLIST", "BIH-ZIH-A-DA-YI-LAH", "ENLIST" },
{ "ENTIRE", "TA-A-TAH(E)", "ENTIRE" },
{ "ENTRENCH", "E-GAD-AH-NE-LIH", "MAKE DITCH" },
{ "ENVELOP", "A-ZAH-GI-YA", "ENVELOP" },
{ "EQUIPMENT", "YA-HA-DE-TAHI", "EQUIPMENT" },
{ "ERECT", "YEH-ZIHN", "STAND UP" },
{ "ESCAPE", "A-ZEH-HA-GE-YAH", "ESCAPE" },
{ "ESTABLISH", "HAS-TAY-DZAH", "ESTABLISH" },
{ "ESTIMATE", "BIH-KE-TSE-HOD-DES-KEZ", "ESTIMATE" },
{ "EVACUATE", "HA-NA", "EVACUATE" },
{ "EXCEPT", "NEH-DIH(E)", "EXCEPT" },
{ "EXCEPT", "NA-WOL-NE", "EXPECT" },
{ "EXCHANGE", "ALH-NAHL-YAH", "EXCHANGE" },
{ "EXECUTE", "A-DO-NIL", "EXECUTE" },
{ "EXPLOSIVE", "AH-DEL-TAHI(E)", "EXPLOSIVE" },
{ "EXPEDITE", "SHIL-LOH(E)", "SPEED UP" },
{ "EXTEND", "NE-TDALE", "MAKE WIDE" },
{ "EXTREME", "AL-TSAN-AH-BAHM", "EACH END" },
{ "FAIL", "CHA-AL-EIND", "FAIL" },
{ "FAILURE", "YEES-GHIN", "FAILURE" },
{ "FARM", "MAI-BE-HE-AHGAN", "FOX ARM" },
{ "FEED", "DZEH-CHI-YON", "FEED" },
{ "FIELD", "CLO-DIH(F)", "FIELD" },
{ "FIERCE", "TOH-BAH-HA-ZSID", "AFRAID" },
{ "FILE", "BA-EH-CHEZ", "FILE" },
{ "FINAL", "TAH-AH-KWO-DIH", "THAT IS ALL" },
{ "FLAME THROWER", "COH-AH-GHIL-TLID", "FLAME THROWER" },
{ "FLANK", "DAH-DI-KAD", "FLANK" },
{ "FLARE", "WO-CHI", "LIGHT STREAK" },
{ "FLIGHT", "MA-E-AS-ZLOLI", "FOX LIGHT" },
{ "FORCE", "TA-NA-NE-LADI", "WITHOUT CARE" },
{ "FORM", "BE-CHA", "FORM" },
{ "FORMATION", "BE-CHA-YE-LAILH", "FORMATION" },
{ "FORTIFICATION", "AH-NA-SOZI", "CLIFF DWELLING" },
{ "FORTIFY", "AH-NA-SOZI-YAZZIE", "SMALL FORTIFICATION" },
{ "FORWARD", "TEHI", "LET'S GO" },
{ "FRAGMENTATION", "BESH-YAZZIE", "SMALL METAL" },
{ "FREQUENCY", "HA-TALHI-TSO", "BIG SINGER" },
{ "FRIENDLY", "NEH-HECHO-DA-NE", "FRIENDLY" },
{ "FROM", "BI-TSAN-DEHN", "FROM" },
{ "FURNISH", "YEAS-NIL(F)", "FURNISH" },
{ "FURTHER", "WO-NAS-DI", "FURTHER" },
{ "GARRISON", "YAH-A-DA-HAL-YON-IH", "TAKE CARE OF" },
{ "GASOLINE", "CHIDI-BI-TOH", "GASOLINE" },
{ "GRENADE", "NI-MA-SI", "POTATOES" },
{ "GUARD", "NI-DIH-DA-HI", "GUARD" },
{ "GUIDE", "NAH-E-THLAI", "GUIDE" },
{ "HALL", "LHI-TA-A-TA", "HORSE ALL" },
{ "HALF TRACK", "ALH-NIH-JAH-A-QUHE", "RACE TRACK" },
{ "HALT", "TA-AKWAI-I", "HALT" },
{ "HANDLE", "BET-SEEN", "HANDLE" },
{ "HAVE", "JO", "HAVE" },
{ "HEADQUARTER", "NA-HA-TAH-TA-BA-HOGAN", "HEADQUARTER" },
{ "HELD", "WO-TAH-TA-EH-DAHN-OH", "HELD(PAST TENSE)" },
{ "HIGH", "WO-TAH", "HIGH" },
{ "HIGH EXPLOSIVE", "BE-AL-DOH-BE-CA-BIH-DZIL-IGI", "POWERFUL SHELL" },
{ "HIGHWAY", "WO-TAH-HO-NE-TEH", "HIGH WAY" },
{ "HOLD", "WO-TKANH", "HOLD" },
{ "HOSPITAL", "A-ZEY-AL-IH", "PLACE OF MEDICINE" },
{ "HOSTILE", "A-NAH-NE-DZIN", "NOT FRIENDLY" },
{ "HOWITZER", "BE-EL-DON-TS-QUODI", "SHORT BIG GUN" },
{ "ILLUMINATE", "WO-CHI(I)", "LIGHT UP" },
{ "IMMEDIATELY", "SHIL-LOH(I)", "IMMEDIATELY" },
{ "IMPACT", "A-HE-DIS-GOH", "IMPACT" },
{ "IMPORTANT", "BA-HAS-TEH", "IMPORTANT" },
{ "IMPROVE", "HO-DOL-ZHOND", "IMPROVE" },
{ "INCLUDE", "EL-TSOD", "INCLUDE" },
{ "INCREASE", "HO-NALH", "INCREASE" },
{ "INDICATE", "BA-HAL-NEH", "TELL ABOUT" },
{ "INFANTRY", "TA-NEH-NAL-DAHI", "INFANTRY" },
{ "INFILTRATE", "YE-GHA-NE-JEH", "WENT THROUGH" },
{ "INITIAL", "BEH-ED-DE-DLID", "BRAND" },
{ "INSTALL", "EHD-TNAH", "INSTALL" },
{ "INSTALLATION", "NAS-NIL", "IN PLACE" },
{ "INSTRUCT", "NA-NE-TGIN", "TEACH" },
{ "INTELLIGENCE", "HO-YA(I)", "SMART" },
{ "INTENSE", "DZEEL", "STRENGTH" },
{ "INTERCEPT", "YEL-NA-ME-JAH", "INTERCEPT" },
{ "INTERFERE", "AH-NILH-KHLAI", "INTERFERE" },
{ "INTERPRET", "AH-TAH-HA-NE", "INTERPRET" },
{ "INVESTIGATE", "NA-ALI-KA", "TRACK" },
{ "INVOLVE", "A-TAH", "INVOLVE" },
{ "IS", "SEIS", "SEVEN" },
{ "ISLAND", "SEIS-KEYAH", "SEVEN ISLAND" },
{ "ISOLATE", "BIH-TSA-NEL-KAD", "SEPARATE" },
{ "JUNGLE", "WOH-DI-CHIL", "JUNGLE" },
{ "KILL", "NAZ-TSAID", "KILL" },
{ "KILOCYCLE", "NAS-TSAID-A-KHA-AH-YEH-HA-DILH", "KILL OIL GO AROUND" },
{ "LABOR", "NA-NISH(L)", "LABOR" },
{ "LAND", "KAY-YAH", "LAND" },
{ "LAUNCH", "TKA-GHIL-ZHOD", "LAUNCH" },
{ "LEADER", "AH-NA-GHAI", "LEADER" },
{ "LEAST", "DE-BE-YAZIE-HA-A-AH", "LAMB FEAST" },
{ "LEAVE", "DAH-DE-YAH", "HE LEFT" },
{ "LEFT", "NISH-CLA-JIH-GOH", "LEFT" },
{ "LESS", "BI-OH(L)", "LESS" },
{ "LEVEL", "DIL-KONH", "LEVEL" },
{ "LIAISON", "DA-A-HE-GI-ENEH", "KNOW OTHER'S ACTION" },
{ "LIMIT", "BA-HAS-AH", "LIMIT" },
{ "LITTER", "NI-DAS-TON(L)", "SCATTER" },
{ "LOCATE", "A-KWE-EH", "SPOT" },
{ "LOSS", "UT-DIN", "LOSS" },
{ "MACHINE GUN", "A-KNAH-AS-DONIH", "RAPID FIRE GUN" },
{ "MAGNETIC", "NA-E-LAHI", "PICK UP" },
{ "MANAGE", "HASTNI-BEH-NA-HAI", "MAN AGE" },
{ "MANEUVER", "NA-NA-O-NALTH", "MOVING AROUND" },
{ "MAP", "KAH-YA-NESH-CHAI", "MAP" },
{ "MAXIMUM", "BEL-DIL-KHON", "FILL TO TOP" },
{ "MECHANIC", "CHITI-A-NAYL-INIH", "AUTO REPAIRMAN" },
{ "MECHANIZED", "CHIDI-DA-AH-HE-GONI", "FIGHTING CARS" },
{ "MEDICAL", "A-ZAY", "MEDICINE" },
{ "MEGACYCLE", "MIL-AH-HEH-AH-DILH", "MILLION GO AROUND" },
{ "MERCHANT SHIP", "NA-EL-NEHI-TSIN-NA-AILH", "MERCHANT SHIP" },
{ "MESSAGE", "HANE-AL-NEH", "MESSAGE" },
{ "MILITARY", "SILAGO-KEH-GOH", "MILITARY" },
{ "MILLIMETER", "NA-AS-TSO-SI-A-YE-DO-TISH", "DOUBLE MOUSE" },
{ "MINE", "HA-GADE", "MINE" },
{ "MINIMUM", "BE-OH(M)", "MINIMUM" },
{ "MINUTE", "AH-KHAY-EL-KIT-YAZZIE", "LITTLE HOUR" },
{ "MISSION", "AL-NESHODI", "MISSION" },
{ "MISTAKE", "O-ZHI", "MISS" },
{ "MOPPING", "HA-TAO-DI", "MOPPING" },
{ "MORE", "THLA-NA-NAH", "MORE" },
{ "MORTAR", "BE-AL-DOH-CID-DA-HI", "SITTING GUN" },
{ "MOTION", "NA-HOT-NAH", "MOTION" },
{ "MOTOR", "CHIDE-BE-TSE-TSEN", "CAR HEAD" },
{ "NATIVE", "KA-HA-TENI", "NATIVE" },
{ "NAVY", "TAL-KAH-SILAGO", "SEA SOLDIER" },
{ "NECESSARY", "YE-NA-ZEHN", "WANT" },
{ "NEGATIVE", "DO-YA-SHO-DA", "NO GOOD" },
{ "NET", "NA-NES-DIZI", "NET" },
{ "NEUTRAL", "DO-NEH-LINI", "NEUTRAL" },
{ "NORMAL", "DOH-A-TA-H-DAH", "NORMAL" },
{ "NOT", "NI-DAH-THAN-ZIE", "NO TURKEY" },
{ "NOTICE", "NE-DA-TAZI-THIN", "NO TURKEY ICE" },
{ "NOW", "KUT", "NOW" },
{ "NUMBER", "BEH-BIH-KE-AS-CHINIGH", "WHAT'S WRITTEN" },
{ "OBJECTIVE", "BI-NE-YEI", "GOAL" },
{ "OBSERVE", "HAL-ZID", "OBSERVE" },
{ "OBSTACLE", "DA-HO-DESH-ZHA", "OBSTACLE" },
{ "OCCUPY", "YEEL-TSOD", "TAKEN" },
{ "OF", "TOH-NI-TKAL-LO", "OCEAN FISH" },
{ "OFFENSIVE", "BIN-KIE-JINH-JIH-DEZ-JAY", "OFFENSIVE" },
{ "ONCE", "TA-LAI-DI", "ONCE" },
{ "ONLY", "TA-EI-TAY-A-YAH", "ONLY" },
{ "OPERATE", "YE-NAHL-NISH", "WORK AT" },
{ "OPPORTUNITY", "ASH-GA-ALIN", "OPPORTUNITY" },
{ "OPPOSITION", "NE-HE-TSAH-JIH-SHIN", "OPPOSITION" },
{ "OR", "EH-DO-DAH-GOH", "EITHER" },
{ "ORANGE", "TCHIL-LHE-SOI", "ORANGE" },
{ "ORDER", "BE-EH-HO-ZINI", "ORDER" },
{ "ORDNANCE", "LEI-AZ-JAH", "UNDER GROUND" },
{ "ORIGINATE", "DAS-TEH-DO", "BEGIN" },
{ "OTHER", "LA-E-CIH", "OTHER" },
{ "OUT", "CLO-DIH", "OUT SIDE" },
{ "OVERLAY", "BE-KA-HAS-TSOZ", "OVERLAY" },
{ "PARENTHESIS", "ATSANH", "RIB" },
{ "PARTICULAR", "A-YO-AD-DO-NEH", "PARTICULAR" },
{ "PARTY", "DA-SHA-JAH", "PARTY" },
{ "PAY", "NA-ELI-YA", "PAY" },
{ "PENALIZE", "TAH-NI-DES-TANH", "SET BACK" },
{ "PERCENT", "YAL", "MONEY" },
{ "PERIOD", "DA-AHL-ZHIN", "PERIOD" },
{ "PERIODIC", "DA-AL-ZHIN-THIN-MOASI", "PERIOD ICE CAT" },
{ "PERMIT", "GOS-SHI-E", "PERMIT" },
{ "PERSONNEL", "DA-NE-LEI", "MEMBER" },
{ "PHOTOGRAPH", "BEH-CHI-MA-HAD-NIL", "PHOTOGRAPH" },
{ "PILL BOX", "BI-SO-DIH-DOT-SAHI-BI-TSAH", "SICK PIG BOX" },
{ "PINNED DOWN", "BIL-DAH-HAS-TANH-YA", "PINNED DOWN" },
{ "PLANE", "TSIDI", "BIRD" },
{ "PLASMA", "DIL-DI-GHILI", "PLASMA" },
{ "POINT", "BE-SO-DE-DEZ-AHE", "PIG POINT" },
{ "PONTOON", "TKOSH-JAH-DA-NA-ELT", "FLOATING BARREL" },
{ "POSITION", "BILH-HAS-AHN", "POSITION" },
{ "POSSIBLE", "TA-HA-AH-TAY", "POSSIBLE" },
{ "POST", "SAH-DEI", "POST" },
{ "PREPARE", "HASH-TAY-HO-DIT-NE", "PREPARE" },
{ "PRESENT", "KUT", "PRESENT" },
{ "PREVIOUS", "BIH-TSE-DIH", "PREVIOUS" },
{ "PRIMARY", "ALTSEH-NAN-DAY-HI-GIH", "1ST POSITION" },
{ "PRIORITY", "HANE-PESODI", "PRIORITY" },
{ "PROBABLE", "DA-TSI", "PROBABLE" },
{ "PROBLEM", "NA-NISH-TSOH", "BIG JOB" },
{ "PROCEED", "NAY-NIH-JIH", "GO" },
{ "PROGRESS", "NAH-SAI", "PROGRESS" },
{ "PROTECT", "AH-CHANH", "SELF DEFENSE" },
{ "PROVIDE", "YIS-NIL", "PROVIDE" },
{ "PURPLE", "DINL-CHI", "PURPLE" },
{ "PYROTECHNIC", "COH-NA-CHANH", "FANCY FIRE" },
{ "QUESTION", "AH-JAH", "EAR" },
{ "QUICK", "SHIL-LOH", "QUICK" },
{ "RADAR", "ESAT-TSANH(R)", "LISTEN" },
{ "RAID", "DEZJAY", "RAID" },
{ "RAILHEAD", "A-DE-GEH-HI", "SHIPPING POINT" },
{ "RAILROAD", "KONH-NA-AL-BANSI-BI-THIN", "RAILROAD" },
{ "RALLYING", "A-LAH-NA-O-GLALIH", "GATHERING" },
{ "RANGE", "AN-ZAH", "DISTANCE" },
{ "RATE", "GAH-EH-YAHN", "RABBIT ATE" },
{ "RATION", "NA-A-JAH", "RATION" },
{ "RAVINE", "CHUSH-KA(R)", "RAVINE" },
{ "REACH", "IL-DAY(R)", "REACH" },
{ "READY", "KUT(R)", "READY" },
{ "REAR", "BE-KA-DENH(R)", "REAR" },
{ "RECEIPT", "SHOZ-TEH", "RECEIPT" },
{ "RECOMMEND", "CHE-HO-TAI-TAHN", "RECOMMEND" },
{ "RECONNAISSANCE", "HA-A-CIDI", "INSPECTOR" },
{ "RECONNOITER", "TA-HA-NE-AL-YA", "MAKE SURE" },
{ "RECORD", "GAH-AH-NAH-KLOLI", "R-E-ROPE" },
{ "RED", "LI-CHI", "RED" },
{ "REEF", "TSA-ZHIN", "BLACK ROCK" },
{ "REEMBARK", "EH-NA-COH", "GO IN" },
{ "REFIRE", "NA-NA-COH", "REFIRE" },
{ "REGULATE", "NA-YEL-N", "REGULATE" },
{ "REINFORCE", "NAL-DZIL", "REINFORCE" },
{ "RELIEF", "AGANH-TOL-JAY", "RELIEF" },
{ "RELIEVE", "NAH-JIH-CO-NAL-YA", "REMOVE" },
{ "REORGANIZE", "HA-DIT-ZAH", "REORGANIZE" },
{ "REPLACEMENT", "NI-NA-DO-NIL", "REPLACEMENT" },
{ "REPORT", "WHO-NEH", "GOT WORD" },
{ "REPRESENTATIVE", "TKA-NAZ-NILI", "TRIPLE MEN" },
{ "REQUEST", "JO-KAYED-GOH", "ASK FOR" },
{ "RESERVE", "HESH-J-E", "RESERVE" },
{ "RESTRICT", "BA-HO-CHINI", "RESTRICT" },
{ "RETIRE", "AH-HOS-TEEND", "RETIRE" },
{ "RETREAT", "JI-DIN-NES-CHANH", "RETREAT" },
{ "RETURN", "NA-DZAH", "CAME BACK" },
{ "REVEAL", "WHO-NEH(L)", "REVEAL" },
{ "REVERT", "NA-SI-YIZ", "TURN ABOUT" },
{ "REVETMENT", "BA-NAS-CLA(R)", "CORNER" },
{ "RIDGE", "GAH-GHIL-KEID", "RABBIT RIDGE" },
{ "RIFLEMAN", "BE-AL-DO-HOSTEEN", "RIFLEMEN" },
{ "RIVER", "TOH-YIL-KAL", "MUCH WATER" },
{ "ROBOT BOMB", "A-YE-SHI-NA-TAH-IH", "EGG FLY" },
{ "ROCKET", "LESZ-YIL-BESHI", "SAND BOIL" },
{ "ROLL", "YEH-MAS", "ROLL" },
{ "ROUND", "NAZ-PAS(R)", "ROUND" },
{ "ROUTE", "GAH-BIH-TKEEN", "RABBIT TRAIL" },
{ "RUNNER", "NIH-DZID-TEIH", "RUNNER" },
{ "SABOTAGE", "A-TKEL-YAH", "HINDERED" },
{ "SABOTEUR", "A-TKEL-EL-INI", "TROUBLE MAKER" },
{ "SAILOR", "CHA-LE-GAI", "WHITE CAPS" },
{ "SALVAGE", "NA-HAS-GLAH", "PICK THEM UP" },
{ "SAT", "BIH-LA-SANA-CID-DA-HI", "APPLE SITTING" },
{ "SCARLET RED", "LHE-CHI(S & R)", "RED" },
{ "SCHEDULE", "BEH-EH-HO-ZINI", "SCHEDULE" },
{ "SCOUT", "HA-A-SID-AL-SIZI-GIH", "SHORT RACCOON" },
{ "SCREEN", "BESH-NA-NES-DIZI", "SCREEN" },
{ "SEAMAN", "TKAL-KAH-DINEH-IH", "SEAMAN" },
{ "SECRET", "BAH-HAS-TKIH", "SECRET" },
{ "SECTOR", "YOEHI(S)", "SECTOR" },
{ "SECURE", "YE-DZHE-AL-TSISI", "SMALL SECURITY" },
{ "SEIZE", "YEEL-STOD", "SEIZE" },
{ "SELECT", "BE-TAH-HAS-GLA", "TOOK OUT" },
{ "SEMI COLON", "DA-AHL-ZHIN-BI-TSA-NA-DAHL", "DOT DROP" },
{ "SET", "DZEH-CID-DA-HI", "ELK SITTING" },
{ "SHACKLE", "DI-BAH-NESH-GOHZ", "SHACKLE" },
{ "SHELL", "BE-AL-DOH-BE-CA", "SHELL" },
{ "SHORE", "TAH-BAHN(S)", "SHORE" },
{ "SHORT", "BOSH-KEESH", "SHORT" },
{ "SIDE", "BOSH-KEESH", "SIDE" },
{ "SIGHT", "YE-EL-TSANH", "SEEN" },
{ "SIGNAL", "NA-EH-EH-GISH", "BY SIGNS" },
{ "SIMPLEX", "ALAH-IH-NE-TIH", "INNER WIRE" },
{ "SIT", "TKIN-CID-DA-HI", "ICE SITTING" },
{ "SITUATE", "A-HO-TAY (S)", "SITUATE" },
{ "SMOKE", "LIT", "SMOKE" },
{ "SNIPER", "OH-BEHI", "PICK 'EM OFF" },
{ "SPACE", "BE-TKAH", "BETWEEN" },
{ "SPECIAL", "E-YIH-SIH", "MAIN THING" },
{ "SPEED", "YO-ZONS", "SWIFT MOTION" },
{ "SPORADIC", "AH-NA-HO-NEIL", "NOW AND THEN" },
{ "SPOTTER", "EEL-TSAY-I", "SPOTTER" },
{ "SPRAY", "KLESH-SO-DILZIN", "SNAKE PRAY" },
{ "SQUADRON", "NAH-GHIZI", "SQUASH" },
{ "STORM", "NE-OL", "STORM" },
{ "STRAFE", "NA-WO-GHI-GOID", "HOE" },
{ "STRAGGLER", "CHY-NE-DE-DAHE", "STRAGGLER" },
{ "STRATEGY", "NA-HA-TAH(S)", "STRATEGY" },
{ "STREAM", "TOH-NI-LIH", "RUNNING WATER" },
{ "STRENGTH", "DZHEL", "STRENGTH" },
{ "STRETCH", "DESZ-TSOOD", "STRETCH" },
{ "STRIKE", "NAY-DAL-GHAL", "STRIKE" },
{ "STRIP", "HA-TIH-JAH", "STRIP" },
{ "STUBBORN", "NIL-TA", "STUBBORN" },
{ "SUBJECT", "NA-NISH-YAZZIE", "SMALL JOB" },
{ "SUBMERGE", "TKAL-CLA-YI-YAH", "WENT UNDER WATER" },
{ "SUBMIT", "A-NIH-LEH", "SEND" },
{ "SUBORDINATE", "AL-KHI-NAL-DZL", "HELPING EACH OTHER" },
{ "SUCCEED", "YAH-TAY-GO-E-ELAH", "MAKE GOOD" },
{ "SUCCESS", "UT-ZAH", "IT IS DONE" },
{ "SUCCESSFUL", "UT-ZAH-HA-DEZ-BIN", "IT IS DONE WELL" },
{ "SUCCESSIVE", "UT-ZAH-SID", "SUCCESS SCAR" },
{ "SUCH", "YIS-CLEH", "SOX" },
{ "SUFFER", "TO-HO-NE", "SUFFER" },
{ "SUMMARY", "SHIN-GO-BAH", "SUMMER MARY" },
{ "SUPPLEMENTARY", "TKA-GO-NE-NAN-DEY-HE", "3RD POSITION" },
{ "SUPPLY", "NAL-YEH-HI", "SUPPLY" },
{ "SUPPLY SHIP", "NALGA-HI-TSIN-NAH-AILH", "SUPPLY SHIP" },
{ "SUPPORT", "BA-AH-HOT-GLI", "DEPEND" },
{ "SURRENDER", "NE-NA-CHA", "SURRENDER" },
{ "SURROUND", "NAZ-PAS(S)", "SURROUND" },
{ "SURVIVE", "YIS-DA-YA", "SURVIVE" },
{ "SYSTEM", "DI-BA-TSA-AS-ZHI-BI-TSIN", "SYSTEM" },
{ "TACTICAL", "E-CHIHN", "TACTICAL" },
{ "TAKE", "GAH-TAHN", "TAKE" },
{ "TANK", "CHAY-DA-GAHI", "TORTOISE" },
{ "TANK DESTROYER", "CHAY-DA-GAHI-NAIL-TSAIDI", "TORTOISE KILLER" },
{ "TARGET", "WOL-DONI", "TARGET" },
{ "TASK", "TAZI-NA-EH-DIL-KID", "TURKEY ASK" },
{ "TEAM", "DEH-NA-AS-TSO-SI", "TEA MOUSE" },
{ "TERRACE", "ALI-KHI-HO-NE-OHA(T)", "TERRACE" },
{ "TERRAIN", "TASHI-NA-HAL-THIN", "TURKEY RAIN" },
{ "TERRITORY", "KA-YAH(T)", "TERRITORY" },
{ "THAT", "TAZI-CHA", "TURKEY HAT" },
{ "THE", "CHA-GEE", "BLUE-JAY" },
{ "THEIR", "BIH", "THEIR" },
{ "THEREAFTER", "TA-ZI-KWA-I-BE-KA-DI", "TURKEY HERE AFTER" },
{ "THESE", "CHA-GI-O-EH", "THE SEE" },
{ "THEY", "CHA-GEE(Y)", "THE Y" },
{ "THIS", "DI", "THE" },
{ "TOGETHER", "TA-BILH", "TOGETHER" },
{ "TORPEDO", "LO-BE-CA", "FISH SHELL" },
{ "TOTAL", "TA-AL-SO", "TOTAL" },
{ "TRACER", "BEH-NA-AL-KAH-HI", "TRACER" },
{ "TRAFFIC DIAGRAM", "HANE-BA-NA-AS-DZOH", "DIAGRAM STORY LINE" },
{ "TRAIN", "COH-NAI-ALI-BAHN-SI", "TRAIN" },
{ "TRANSPORTATION", "A-HAH-DA-A-CHA", "TRANSPORTATION" },
{ "TRENCH", "E-GADE", "TRENCH" },
{ "TRIPLE", "TKA-IH", "TRIPLE" },
{ "TROOP", "NAL-DEH-HI", "TROOP" },
{ "TRUCK", "CHIDO-TSO", "BIG AUTO" },
{ "TYPE", "ALTH-AH-A-TEH", "TYPE" },
{ "UNDER", "BI-YAH", "UNDER" },
{ "UNIDENTIFIED", "DO-BAY-HOSEN-E", "UNIDENTIFIED" },
{ "UNIT", "DA-AZ-JAH(U)", "UNIT" },
{ "UNSHACKLE", "NO-DA-EH-NESH-GOHZ", "UNSHACKLE" },
{ "UNTIL", "UH-QUO-HO", "UNTIL" },
{ "VICINITY", "NA-HOS-AH-GIH", "THERE ABOUT" },
{ "VILLAGE", "CHAH-HO-OH-LHAN-IH", "MANY SHELTER" },
{ "VISIBILITY", "NAY-ES-TEE", "VISIBILITY" },
{ "VITAL", "TA-EH-YE-SY", "VITAL" },
{ "WARNING", "BILH-HE-NEH(W)", "WARNING" },
{ "WAS", "NE-TEH", "WAS" },
{ "WATER", "TKOH", "WATER" },
{ "WAVE", "YILH-KOLH", "WAVE" },
{ "WEAPON", "BEH-DAH-A-HI-JIH-GANI", "FIGHTING WEAPON" },
{ "WELL", "TO-HA-HA-DLAY", "WELL" },
{ "WHEN", "GLOE-EH-NA-AH-WO-HAI", "WEASEL HEN" },
{ "WHERE", "GLOE-IH-QUI-AH", "WEASEL HERE" },
{ "WHICH", "GLOE-IH-A-HSI-TLON", "WEASEL TIED TOGETHER" },
{ "WILL", "GLOE-IH-DOT-SAHI", "SICK WEASEL" },
{ "WIRE", "BESH-TSOSIE", "SMALL WIRE" },
{ "WITH", "BILH(W)", "WITH" },
{ "WITHIN", "BILH-BIGIH", "WITH IN" },
{ "WITHOUT", "TA-GAID", "WITHOUT" },
{ "WOOD", "CHIZ", "FIRE WOOD" },
{ "WOUND", "CAH-DA-KHI", "WOUND" },
{ "YARD", "A-DEL-TAHL", "YARD" },
{ "ZONE", "BIH-NA-HAS-DZOH", "ZONE" },
{ NULL, NULL, NULL }
};
char *
find(char *w)
{
int i;
for (i = 0; dict[i][0]; ++i)
if (!strcasecmp(dict[i][0], w))
return dict[i][1];
return NULL;
}
int main(int argc, char **argv)
{
char *t;
for (argc = 1; argv[argc]; ++argc)
if ((t = find(argv[argc])))
printf("%s is %s\n", argv[argc], t);
}
+241
View File
@@ -0,0 +1,241 @@
#include <string.h>
#include <stdio.h>
#include <strings.h>
#include <stdlib.h>
#include <ctype.h>
#ifndef X
#define X 0
#endif
char *l[][2] = {
{ "A", "WOL-LA-CHEE" },
{ "A", "BE-LA-SANA" },
{ "A", "TSE-NILL" },
{ "B", "NA-HASH-CHID" },
{ "B", "SHUSH" },
{ "B", "TOISH-JEH" },
{ "C", "MOASI" },
{ "C", "TLA-GIN" },
{ "C", "BA-GOSHI" },
{ "D", "BE" },
{ "D", "CHINDI" },
{ "D", "LHA-CHA-EH" },
{ "E", "AH-JAH" },
{ "E", "DZEH" },
{ "E", "AH-NAH" },
{ "F", "CHUO" },
{ "F", "TSA-E-DONIN-EE" },
{ "F", "MA-E" },
{ "G", "AH-TAD" },
{ "G", "KLIZZIE" },
{ "G", "JEHA" },
{ "H", "TSE-GAH" },
{ "H", "CHA" },
{ "H", "LIN" },
{ "I", "TKIN" },
{ "I", "YEH-HES" },
{ "I", "A-CHI" },
{ "J", "TKELE-CHO-G" },
{ "J", "AH-YA-TSINNE" },
{ "J", "YIL-DOI" },
{ "K", "JAD-HO-LONI" },
{ "K", "BA-AH-NE-DI-TININ" },
{ "K", "KLIZZIE-YAZZIE" },
{ "L", "DIBEH-YAZZIE" },
{ "L", "AH-JAD" },
{ "L", "NASH-DOIE-TSO" },
{ "M", "TSIN-TLITI" },
{ "M", "BE-TAS-TNI" },
{ "M", "NA-AS-TSO-SI" },
{ "N", "TSAH" },
{ "N", "A-CHIN" },
{ "O", "A-KHA" },
{ "O", "TLO-CHIN" },
{ "O", "NE-AHS-JAH" },
{ "P", "CLA-GI-AIH" },
{ "P", "BI-SO-DIH" },
{ "P", "NE-ZHONI" },
{ "Q", "CA-YEILTH" },
{ "R", "GAH" },
{ "R", "DAH-NES-TSA" },
{ "R", "AH-LOSZ" },
{ "S", "DIBEH" },
{ "S", "KLESH" },
{ "T", "D-AH" },
{ "T", "A-WOH" },
{ "T", "THAN-ZIE" },
{ "U", "SHI-DA" },
{ "U", "NO-DA-IH" },
{ "V", "A-KEH-DI-GLINI" },
{ "W", "GLOE-IH" },
{ "X", "AL-NA-AS-DZOH" },
{ "Y", "TSAH-AS-ZIH" },
{ "Z", "BESH-DO-TLIZ" },
{ NULL, NULL }
};
struct c
{
char *w;
char *C;
char *L;
struct c *n;
};
struct c *c;
void
L(void)
{
FILE *f = fopen("dict", "r");
if (f != NULL)
{
char *line = NULL;
size_t n = 0;
ssize_t len;
while ((len = getline(&line, &n, f)) > 0)
{
char *lst = strtok(line, "\t");
char *snd = strtok(NULL, "\t");
char *erd = strtok(NULL, "\t");
if (snd || erd)
{
struct c *d = calloc(1, sizeof *d);
d->w = strdup(X?snd:lst);
d->C = strdup(X?lst:snd);
d->L = erd?strdup(erd):"";
d->n = c;
c = d;
}
}
fclose(f);
f = NULL;
}
else
puts("could not open dictionary");
}
#define up(C) (isascii((C))&&isupper(C))
#define lo(C) (isascii((C))&&islower(C))
#define na(C) (!isascii((C))||!isalpha(C))
void
print(char *w)
{
struct c *C = c;
int i = 0, j, u=1, k, L;
char *v;
for (v = strtok(w, " "); v; v = strtok(NULL, " "))
{
for (C = c ; C; C = C->n)
if (!strcasecmp(C->w, v))
{
u = up(v[0]);
for (i = 0; i[C->C]; ++i)
putchar(!i&&u?C->C[i]:tolower(C->C[i]));
goto F;
}
for (i = 0; i[v]; ++i)
{
if (na(i[v]))
putchar(i[v]);
else
{
u = lo(i[v]);
for (j = 0; l[j][X?1:0]; ++j)
{
if (*l[j][0] == toupper(i[v]))
{
printf("%s",i?" ":"");
for (k = 0; L=l[j][X?0:1][k]; ++k)
putchar(k||u?tolower(L):L);
break;
}
}
}
}
F:printf(" ");
}
}
void
F(char *w)
{
int i = 0, j, u=1, k, L;
size_t s=0;
struct c *C = c;
FILE *f = NULL;
char *v;
if (*w=='+')
{
f = 1[w]=='-'?stdin:fopen(w+1, "r");
if (f)
{
w=NULL;
while (getdelim(&w, &s, EOF, f) > 0)
print(w);
if (!w) goto E;
}
}
#if 0
for ( ; C; C = C->n)
if (!strcasecmp(C->w, w))
{
u = up(w[0]);
for (; i[C->C]; ++i)
putchar(!i&&u?C->C[i]:tolower(C->C[i]));
goto E;
}
#endif
for (v = strtok(w, " "); v; v = strtok(NULL, " "))
{
for (C = c ; C; C = C->n)
if (!strcasecmp(C->w, v))
{
u = up(v[0]);
for (i = 0; i[C->C]; ++i)
putchar(!i&&u?C->C[i]:tolower(C->C[i]));
goto F;
}
for (i = 0; i[v]; ++i)
{
if (na(i[v]))
putchar(i[v]);
else
{
u = lo(i[v]);
for (j = 0; l[j][X?1:0]; ++j)
{
if (*l[j][0] == toupper(i[v]))
{
printf("%s",i?" ":"");
for (k = 0; L=l[j][X?0:1][k]; ++k)
putchar(k||u?tolower(L):L);
break;
}
}
}
}
F:printf(" ");
}
E:
putchar(' ');
if (f)
{
if (f!=stdin)
fclose(f);
free(w);
}
}
int main(int C, char **V)
{
L();
for (C = 1; V[C]; ++C)
F(V[C]);
puts("");
}
+41
View File
@@ -0,0 +1,41 @@
#include<string.h>
#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
#ifndef DICT
#define DICT "dict"
#endif
#define X 1
struct a{char*w,*c,*s,*x,*t,*u,**h,*S,*N,*A,*(*v[9])(struct a*),*y;struct a*e,*a;int l;
}*f,*c;char*B[][2]={{"A","WOL-LA-CHEE"},{"B","SHUSH"},{"C","MOASI"},{"D","CHINDI"},{"E",
"DZEH"},{"F","CHUO"},{"G","JEHA"},{"H","TSE-GAH"},{"I","YEH-HES"},{"J","AH-YA-TSINNE"},
{"K","BA-AH-NE-DI-TININ"},{"L","NASH-DOIE-TSO"},{"M","BE-TAS-TNI"},{"N","TSAH"},{"O",
"A-KHA"},{"P","CLA-GI-AIH"},{"Q","CA-YEILTH"},{"R","DAH-NES-TSA"},{"S","KLESH"},{"T",
"D-AH"},{"U","NO-DA-IH"},{"V","A-KEH-DI-GLINI"},{"W","GLOE-IH"},{"X","AL-NA-AS-DZOH"},
{"Y","TSAH-AS-ZIH"},{"Z","BESH-DO-TLIZ"},},*Y(struct a*);int i,z,J,C,k,H,D,L,s;size_t n,
o;FILE*g;size_t v;char*I(struct a*a){for(a->a=f,z=0**"1";a->a;a->a=a->a->e){if(a->v[2](
&(struct a){.w=a->a->w,.c=a->x})){while(!isalpha(*a->x)&&*(a->x)){L=putchar(*a->x);++a->x;}
while((z++)[a->a->c])s=z+-*"1"-*"1"- -97,L=putchar(!s&&isupper(a->x[0**"z"])?a->a->c[s]:
tolower(a->a->c[s]));goto n;}}for(z=2/ *"z",s=1+0**"1";z[a->x];++z){if(!isalpha(z[a->x]))
L=putchar(z[a->x]);else{C=islower(z[a->x]);for(J=*"1"-*"1";J<26&&B[J][X?1/ *"1"+s/ *"1"+1
/ *"1"+s/ *"1"+1+(s-s)**"1"+(s*(s-s))**"1":((((s-1)**"1")**"1")**"1")**"1"];++J){if(*B[J
][0+*"1"-*"1"]==toupper(z[a->x])){for(k=(s*2)**"9"-171+*"9";H=B[J][X?*"1"-49:s/ *"1"+s/ *
"1"+1/ *"1"+(s*s*s)][k];++k)L=putchar(C?tolower(H):toupper(H));}}}}n:return a->s;}char*Z(
struct a*a){i=0;while(a->h[a->l++])(((*a->h[--a->l]=='e'-':')&&(*a->v)(&(struct a){.v[0]
=I,.s=((a->l)[a->h])+1})&&++a->l)||(a->v[1](&(struct a){.v[2]=Y,.x=((a->l)[a->h])}),++a->
l,i=1));if((i&&g)||!i)putchar(' ');return"";}char*w(struct a*a){for(D=1/ * "s";a&&a->s&&
D[a->s]&&(a->s[D])&&(a->s[D]=isupper(a->s[D])?("ZYXWVUTSRQPONMLKJIHGFEDCBA") [(a->s[D]-(
'k'-'*'))]:D[a->s]);++D);return a?a->s:"";}char*Y(struct a*a){if(*a->w&&*a->c&&a->w[1]&&
a->c[1])while(*a->w&&*a->c){while(!isalpha(*a->w)&&*a->w++);while(!isalpha(*a->c)&&*a->c
++);if(!*a->c||!*a->w||tolower(*a->w)!=tolower(*a->c))break;++a->w;++a->c;}return!*a->w&&
!*a->c?"":0;}char*F(struct a*a){g=fopen(DICT,"r");if(g){while(getline(&a->A,&n,g)!=-1)if(
(a->N=strtok(a->A,"\t"))&&(a->S=strtok(0,"\t"))){c=calloc(1**"0"-47,sizeof*c);c->w=strdup
(X?a->v[a->l](&(struct a){.s=a->S}):a->v[a->e==0](&(struct a){.s=a->N}));c->c=strdup(X?a
->v[1](&(struct a){.s=a->N}):a->v[a->l](&(struct a){.s=a->S}));c->e=f;f=c;}free(a->A);a->
A=0;fclose(g);g=0;}else puts("couldn't open dict");return"";}char*t(struct a*a){o=*"";g=
fopen(a->s,"r");a->A=0;while(g&&getline(&a->A,&o,g)!=-1){a->S=strtok(a->A," \t");while(a
->S)if((a->y=strdup(a->S))){(*a->v)(&(struct a){.v[2]=Y,.x=a->y});a->S=strtok(0, " \t");
free(a->y);a->y=0;if(!isspace(L))putchar(' ');}}if(g){clearerr(g);fclose(g);g=0;free(a->
A);a->A=0;}return"";}int main(int c, char**a){F((c=((~~!!~!9u|2**"9"-15u/ *"0"-2u)<<~~!~
!~9u),c&=9u,&(struct a){.l=1,.s=a[c],.v={&w,&w}}));Z(&(struct a){.v={t,I},.l=c,.h=a});
puts("");}
+598
View File
@@ -0,0 +1,598 @@
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#ifndef DICT
#define DICT "dict"
#endif
#define X 0
struct a {
char *w,
*c,*s,
*x, *t,
*u,**h,*S,
*N,
*A,
*(
*v
[9])
(struct a
*),*y; struct a *e, *a, *z,*k,*j;
int l;
} *f, *c;
char *B[][2] = { { "A", "WOL-LA-CHEE" } ,
{ "B", "SHUSH" } , { "C", "MOASI" } , { "D", "CHINDI" } ,
{ "E", "DZEH" } , { "F", "CHUO" } , { "G", "JEHA" } , { "H", ""
"TSE-GAH" } , { "I", "YEH-HES" } , { "J", "AH-YA-TSINNE" } , { "K",
"BA-AH-NE-DI-TININ" } , { "L", "NASH-DOIE-TSO" } , { "M", ""
"BE-TAS-TNI" } , { "N", "TSAH" } , { "O", "A-KHA" } ,{ "P"
, "CLA-GI-AIH" } , { "Q", "CA-YEILTH" } , { "R",
"DAH-NES-TSA" } , { "S", "KLESH" } ,{ "T",
"D-AH" } , { "U", "NO-DA-IH" } , { "V",
"A-KEH-DI-GLINI" } ,{ "W", "GLOE-IH"
} , { "X", "AL-NA-AS-DZOH" } ,{ "Y",
"TSAH-AS-ZIH" } , { "Z",
"BESH-DO-TLIZ" } , } , *Y(struct a *) ;
int z,
J,
C,
k,
H,
D,
L,
s;
size_t n,
o;
FILE *g;
char *I
(struct a
*a) { for (a
->a
= a->z,
z =
0*
*""
"1"; a
-> a; a ->
a = a->a->e) {
if (
a ->
v [2
] (
& (
struct a) { .
w=a->a->w,.c=a
->x} )){ while(
!isalpha (*a
->x)
&&*
(a->
x)){
L=putchar (*a
->x); ++a->x; }
while ((z++)[a->
a->c])
s=z+
-*"1"
-*"1"
- -
97,L
= putchar (!s &&
isupper(a->x[0*
*"z"
])?a
->a
->c
[s]:
tolower (a->
a->c[s])); goto
n; } } for (z =
2/
*
"z",
s=
1+0
**
"1"; z[a->x]; ++z)
{ if (!isalpha(z[a
->
x]
))
L=putchar (z
[a
->
x]) ; else { C =
islower (z[a->x]); for(J
=*
"1"
-*
"1"
; J
<26
&& B[J][X?1/ *
"1"+s/ *"1"+1/ *
"1"+s/ *
"1" +
1+ (s
-s) **
"1" +(
s* (s
-s))**"1":((((s-1
)**"1")**"1")**"1"
)**
"1"
] ;
++J)
{if
(*B
[J][0+*"1"-*"1"]==
toupper(z[a->x]))
{
for (k = (s*2) **
"9"
-171+*"9"; H=B[J][
X?*
"1"
-49:s/ *"1"+s/ *"1"
+1/
*"1"+(s*s*s)][ k];
++
k) putchar (C
?
tolower(H)
: toupper(H));
L
=
putchar(
(
'\0'
+
'!'
-
1
));
break;
}
}
}
}
n
:
if
(
!
isspace(
L
)
)
putchar
(
' '
);
return a->s;
}
char
*
Z
(
struct
a
*
a)
{
while
(
a
->
h
[a
->
l++
] )
(
(
(
*
a
->
h
[
--
a
->
l
]
==
'e'
-
':'
)
&&
(
*
a
->
v
)
(
&
(
struct
a
)
{
.
v
[
0
]
=
I
,
.j=a->k,.
s
=
( (
a ->
l)[a
->
h
]
)
+
1
}
)
&&
++
a
->
l
)
||
(a
->v
[
1
](
&
(
struct
a
)
{
.
v
[
2
]
=
Y
,
.
x=((a->l)[a->h]),.z=a->j} ), ++a->l)); return "";
} char *w(struct a *a) { for (D=1/ *"s" ; a && a->s && D[a->s] && (a->s[D]) &&
(a->s[D] = isupper(a->s[D])?
("ZYXWVUTSRQPONMLKJIHGFEDCBA")[(a->s[D] -
('k'
-
'*'))]:D[a
->s]); ++D) ; return a?a->s:"";
} char *Y(struct a *a) { if (*a->w && *a->c && a->w[1] && a->c[1])
while (*a->w && *a->c) { while (!isalpha(*a->w) && *a->w++);
while (!isalpha(*a->c) && *a->c++); if (!*a->c || !*a->w || tolower(*a->w) != tolower(*a->c))
break;
++
a
->
w;
++
a->c; }
return !
*
a
->
w
&&
!
*
a
->
c
?
"":0;
} char
*
F
(struct a *a) { g = fopen(DICT, "r"); if (g) { while (getline(&a
->A,
&
n,
g) !=
-
1) if ((a->N = strtok(a->A, "\t")) && (a->S = strtok(0, "\t"))) {
c = calloc(1**"0"-47, sizeof *c);
c->w = strdup(X?a->v[a->l](&(struct a){ .s=a->S} ):a->v[a->e==0](&(struct a){ .s=a->N} ));
c->c = strdup(X?a->v[1](&(struct a){ .s=a->N} ):a->v[a->l](&(struct a){ .s=a->S} ));
c->e = f;
f = c;
}
free(a->A);
a->A = 0;
fclose
(
g
) ;
g = 0; }
else
puts
(
"couldn't open dict");
return""
; }
char
*
t
(struct a
*
a
)
{
o =
*
"";
g = fopen(a
->s,
"r"); a->A = 0; while (g && getline(&a->A, &o, g) != -1) { a->S = strtok(a
->A
,
" \t");
while (a->S) if ((a->y=strdup(a->S))) {
(
*
a
->
v
)(
&
(struct a){
.
v
[
2
]
=Y,
.
x=a->y} ); a->S = strtok(0, " \t"); free(a->y); a->y=0; if (!isspace(L))putchar(' ');
} } if(g) { clearerr(g); fclose(g); g = 0; free(a->A); a->A= 0; } return "";
}
int main(int c, char **a)
{
F
(
(
c
=
(
(
~
~
!
! ~
! 9u |
2
* *
"9"-15u/
*"0"-2u)<<
~
~
!
~
!
~9u),c
&=
9u,
&(struct a){.l=1, .s=a[c],.v= { &w, &w } } ));
Z(&(struct a){ .v = { t, I } ,.k=0, .l=c, .h=a, .j=f} );
puts(""); }
+41
View File
@@ -0,0 +1,41 @@
#include <string.h>
#include <stdio.h>
#include <strings.h>
#include <stdlib.h>
#include <ctype.h>
int seis, di, biyah, k, lichi, tkoh; size_t n, org;
#define L(C) (isupper(C))
#define U(C) (islower(C))
#define M(C) (!isalpha(C))
#ifndef X
#define X 0
#endif
char*bioh[][(1/ *"9")**"A"+2]={ { "A","WOL-LA-CHEE" } ,{ "A","BE-LA-SANA"} ,{ "A","TSE-NILL"} ,
{ "B","NA-HASH-CHID"} ,{ "B","SHUSH"} ,{ "B","TOISH-JEH"} ,{ "C","MOASI"} ,{ "C","TLA-GIN"} ,
{ "C","BA-GOSHI"} ,{ "D","BE"} ,{ "D","CHINDI"} ,{ "D","LHA-CHA-EH"} ,{ "E","AH-JAH"} ,
{ "E","DZEH"} ,{ "E","AH-NAH"} ,{ "F","CHUO"} ,{ "F","TSA-E-DONIN-EE"} ,{ "F","MA-E"} ,
{ "G","AH-TAD"} ,{ "G","KLIZZIE"} ,{ "G","JEHA"} ,{ "H","TSE-GAH"} ,{ "H","CHA"} ,
{ "H","LIN"} ,{ "I","TKIN"} ,{ "I","YEH-HES"} ,{ "I","A-CHI"} ,{ "J","TKELE-CHO-G"} ,
{ "J","AH-YA-TSINNE"} ,{ "J","YIL-DOI"} ,{ "K","JAD-HO-LONI"} ,{ "K","BA-AH-NE-DI-TININ"} ,
{ "K","KLIZZIE-YAZZIE"} ,{ "L","DIBEH-YAZZIE"} ,{ "L","AH-JAD"} ,{ "L","NASH-DOIE-TSO"} ,
{ "M","TSIN-TLITI"} ,{ "M","BE-TAS-TNI"} ,{ "M","NA-AS-TSO-SI"} ,{ "N","TSAH"} ,
{ "N","A-CHIN"} ,{ "O","A-KHA"} ,{ "O","TLO-CHIN"} ,{ "O","NE-AHS-JAH"} ,{ "P","CLA-GI-AIH"} ,
{ "P","BI-SO-DIH"} ,{ "P","NE-ZHONI"} ,{ "Q","CA-YEILTH"} ,{ "R","GAH"} ,{ "R","DAH-NES-TSA"} ,
{ "R","AH-LOSZ"} ,{ "S","DIBEH"} ,{ "S","KLESH"} ,{ "T","D-AH"} ,{ "T","A-WOH"} ,{ "T","THAN-ZIE"} ,
{ "U","SHI-DA"} ,{ "U","NO-DA-IH"} ,{ "V","A-KEH-DI-GLINI"} ,{ "W","GLOE-IH"} ,{ "X","AL-NA-AS-DZOH"} ,
{ "Y","TSAH-AS-ZIH" } , { "Z", "BESH-DO-TLIZ" } , { NULL, NULL } } , *hana;
char*b(char*s){ for(tkoh=1/ *"s"; s[tkoh]; ++tkoh)s[tkoh]=isupper(s[tkoh])?("ZYXWVUTSRQPONMLKJIHGFEDCBA")[
(s[tkoh]-'A')]:tkoh[s]; return s; } struct NLZHR{ char*chiz; char*NLZHR; char*hana; struct NLZHR*achin; };
struct NLZHR *nlzhr, *d; void Lichi(int tkoh) { FILE *Di = fopen("dict", "r"); if (Di != NULL) { hana=NULL; while
(getline(&hana, &n, Di) > 0) { char *N = strtok(hana, "\t"); char *S = strtok(NULL, "\t"); char*E=strtok(NULL, "\t");
if(S||E){ d=calloc(1**"0"-47,sizeof*d); d->chiz=strdup(X?b(S):b(N)); d->NLZHR=strdup(X?b(N):b(S)); d->hana = E?
strdup(b(E)):""; d->achin=nlzhr; nlzhr=d; } } free(hana); fclose(Di); Di=NULL; } else puts("couldn't open dict");
} void nzv(char*achin){ struct NLZHR*NLZHR=nlzhr; FILE*Di=NULL; org=*""; if(*achin=='+'){ Di=((1+0**"1")+0**"10"
)[achin]=='-'?stdin:fopen(achin+1**"9"-56,"r"); if(Di){ achin=NULL; if(getdelim(&achin,&org,EOF,Di)<1||!achin)goto
DI; } } for(seis=0**"1"; NLZHR; NLZHR=NLZHR->achin)if(!strcasecmp(NLZHR->chiz,achin)){ for(; seis[NLZHR->NLZHR]; ++
seis)putchar(!seis&&L(achin[0**"achin"])?NLZHR->NLZHR[seis]:tolower(NLZHR->NLZHR[seis])); goto DI; } for(seis=2/ *"seis"
; seis[achin]; ++seis){ if(M(seis[achin]))putchar(seis[achin]); else{ biyah = U(seis[achin]); for(di=*"1"-49; bioh[di][X
?1+0**"1":0**"1"]; ++di){ if(*bioh[di][0+*"1"-49]==toupper(seis[achin])){ printf("%s",seis?" ":""); for(k=-57+0+*"9";
lichi=bioh[di][X?0:1/ *"1"+1][k]; ++k)putchar(biyah?tolower(lichi):toupper(lichi)); break; } } } } DI:putchar(' ');
if(Di){ if (Di!=stdin)fclose(Di); free(achin); } } int main(int NLZHR,char**akha){ Lichi((NLZHR=((~~!!~!9u|99/ *"0"
-2u)<<~~!~!~9u),NLZHR&=9u)); while (akha[NLZHR++]) nzv(((--NLZHR)[akha])),++NLZHR; puts(""); }
+598
View File
@@ -0,0 +1,598 @@
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#ifndef DICT
#define DICT "dict"
#endif
#define X 0
struct a {
char *w,
*c,*s,
*x, *t,
*u,**h,*S,
*N,
*A,
*(
*v
[9])
(struct a
*),*y; struct a *e, *a, *z,*k,*j;
int l;
} *f, *c;
char *B[][2] = { { "A", "WOL-LA-CHEE" } ,
{ "B", "SHUSH" } , { "C", "MOASI" } , { "D", "CHINDI" } ,
{ "E", "DZEH" } , { "F", "CHUO" } , { "G", "JEHA" } , { "H", ""
"TSE-GAH" } , { "I", "YEH-HES" } , { "J", "AH-YA-TSINNE" } , { "K",
"BA-AH-NE-DI-TININ" } , { "L", "NASH-DOIE-TSO" } , { "M", ""
"BE-TAS-TNI" } , { "N", "TSAH" } , { "O", "A-KHA" } ,{ "P"
, "CLA-GI-AIH" } , { "Q", "CA-YEILTH" } , { "R",
"DAH-NES-TSA" } , { "S", "KLESH" } ,{ "T",
"D-AH" } , { "U", "NO-DA-IH" } , { "V",
"A-KEH-DI-GLINI" } ,{ "W", "GLOE-IH"
} , { "X", "AL-NA-AS-DZOH" } ,{ "Y",
"TSAH-AS-ZIH" } , { "Z",
"BESH-DO-TLIZ" } , } , *Y(struct a *) ;
int z,
J,
C,
k,
H,
D,
L,
s;
size_t n,
o;
FILE *g;
char *I
(struct a
*a) { for (a
->a
= a->z,
z =
0*
*""
"1"; a
-> a; a ->
a = a->a->e) {
if (
a ->
v [2
] (
& (
struct a) { .
w=a->a->w,.c=a
->x} )){ while(
!isalpha (*a
->x)
&&*
(a->
x)){
L=putchar (*a
->x); ++a->x; }
while ((z++)[a->
a->c])
s=z+
-*"1"
-*"1"
- -
97,L
= putchar (!s &&
isupper(a->x[0*
*"z"
])?a
->a
->c
[s]:
tolower (a->
a->c[s])); goto
n; } } for (z =
2/
*
"z",
s=
1+0
**
"1"; z[a->x]; ++z)
{ if (!isalpha(z[a
->
x]
))
L=putchar (z
[a
->
x]) ; else { C =
islower (z[a->x]); for(J
=*
"1"
-*
"1"
; J
<26
&& B[J][X?1/ *
"1"+s/ *"1"+1/ *
"1"+s/ *
"1" +
1+ (s
-s) **
"1" +(
s* (s
-s))**"1":((((s-1
)**"1")**"1")**"1"
)**
"1"
] ;
++J)
{if
(*B
[J][0+*"1"-*"1"]==
toupper(z[a->x]))
{
for (k = (s*2) **
"9"
-171+*"9"; H=B[J][
X?*
"1"
-49:s/ *"1"+s/ *"1"
+1/
*"1"+(s*s*s)][ k];
++
k) putchar (C
?
tolower(H)
: toupper(H));
L
=
putchar(
(
'\0'
+
'!'
-
1
));
break;
}
}
}
}
n
:
if
(
!
isspace(
L
)
)
putchar
(
' '
);
return a->s;
}
char
*
Z
(
struct
a
*
a)
{
while
(
a
->
h
[a
->
l++
] )
(
(
(
*
a
->
h
[
--
a
->
l
]
==
'e'
-
':'
)
&&
(
*
a
->
v
)
(
&
(
struct
a
)
{
.
v
[
0
]
=
I
,
.j=a->k,.
s
=
( (
a ->
l)[a
->
h
]
)
+
1
}
)
&&
++
a
->
l
)
||
(a
->v
[
1
](
&
(
struct
a
)
{
.
v
[
2
]
=
Y
,
.
x=((a->l)[a->h]),.z=a->j} ), ++a->l)); return "";
} char *w(struct a *a) { for (D=1/ *"s" ; a && a->s && D[a->s] && (a->s[D]) &&
(a->s[D] = isupper(a->s[D])?
("ZYXWVUTSRQPONMLKJIHGFEDCBA")[(a->s[D] -
('k'
-
'*'))]:D[a
->s]); ++D) ; return a?a->s:"";
} char *Y(struct a *a) { if (*a->w && *a->c && a->w[1] && a->c[1])
while (*a->w && *a->c) { while (!isalpha(*a->w) && *a->w++);
while (!isalpha(*a->c) && *a->c++); if (!*a->c || !*a->w || tolower(*a->w) != tolower(*a->c))
break;
++
a
->
w;
++
a->c; }
return !
*
a
->
w
&&
!
*
a
->
c
?
"":0;
} char
*
F
(struct a *a) { g = fopen(DICT, "r"); if (g) { while (getline(&a
->A,
&
n,
g) !=
-
1) if ((a->N = strtok(a->A, "\t")) && (a->S = strtok(0, "\t"))) {
c = calloc(1**"0"-47, sizeof *c);
c->w = strdup(X?a->v[a->l](&(struct a){ .s=a->S} ):a->v[a->e==0](&(struct a){ .s=a->N} ));
c->c = strdup(X?a->v[1](&(struct a){ .s=a->N} ):a->v[a->l](&(struct a){ .s=a->S} ));
c->e = f;
f = c;
}
free(a->A);
a->A = 0;
fclose
(
g
) ;
g = 0; }
else
puts
(
"couldn't open dict");
return""
; }
char
*
t
(struct a
*
a
)
{
o =
*
"";
g = fopen(a
->s,
"r"); a->A = 0; while (g && getline(&a->A, &o, g) != -1) { a->S = strtok(a
->A
,
" \t");
while (a->S) if ((a->y=strdup(a->S))) {
(
*
a
->
v
)(
&
(struct a){
.
v
[
2
]
=Y,
.
x=a->y} ); a->S = strtok(0, " \t"); free(a->y); a->y=0; if (!isspace(L))putchar(' ');
} } if(g) { clearerr(g); fclose(g); g = 0; free(a->A); a->A= 0; } return "";
}
int main(int c, char **a)
{
F
(
(
c
=
(
(
~
~
!
! ~
! 9u |
2
* *
"9"-15u/
*"0"-2u)<<
~
~
!
~
!
~9u),c
&=
9u,
&(struct a){.l=1, .s=a[c],.v= { &w, &w } } ));
Z(&(struct a){ .v = { t, I } ,.k=0, .l=c, .h=a, .j=f} );
puts(""); }
+138
View File
@@ -0,0 +1,138 @@
#include <string.h>
#include <stdio.h>
#include <strings.h>
#include <stdlib.h>
#include <ctype.h>
int seis, di, biyah, k, lichi, tkoh, j=2**"9"-15;
size_t n, org;
#define L(C) (isupper(C))
#define U(C) (islower(C))
#define M(C) (!isalpha(C))
char *bioh[3**"5"+-132][(1/ *"9")**"A"+2] = {
{ "A", "WOL-LA-CHEE" } ,
{ "B", "SHUSH" } ,
{ "C", "BA-GOSHI" } ,
{ "D", "CHINDI" } ,
{ "E", "AH-JAH" } ,
{ "F", "CHUO" } ,
{ "G", "JEHA" } ,
{ "H", "TSE-GAH" } ,
{ "I", "YEH-HES" } ,
{ "J", "AH-YA-TSINNE" } ,
{ "K", "BA-AH-NE-DI-TININ" } ,
{ "L", "NASH-DOIE-TSO" } ,
{ "M", "BE-TAS-TNI" } ,
{ "N", "TSAH" } ,
{ "O", "A-KHA" } ,
{ "P", "CLA-GI-AIH" } ,
{ "Q", "CA-YEILTH" } ,
{ "R", "DAH-NES-TSA" } ,
{ "S", "KLESH" } ,
{ "T", "D-AH" } ,
{ "U", "NO-DA-IH" } ,
{ "V", "A-KEH-DI-GLINI" } ,
{ "W", "GLOE-IH" } ,
{ "X", "AL-NA-AS-DZOH" } ,
{ "Y", "TSAH-AS-ZIH" } ,
{ "Z", "BESH-DO-TLIZ" } ,
{ NULL, NULL } } , *hana;
char *b(char *s)
{
for (tkoh = 1/ *"s"; s[tkoh]; ++tkoh) s[tkoh] = isupper(s[tkoh])?("ZYXWVUTSRQPONMLKJIHGFEDCBA")[(s[tkoh] - 'A')]:tkoh[s];
return s;
}
struct NLZHR
{
char *chiz;
char *NLZHR;
char *hana;
struct NLZHR *achin;
};
struct NLZHR *nlzhr, *d;
void
Lichi(int tkoh)
{
FILE *Di = fopen(DICT, "r");
if (Di != NULL)
{
hana = NULL;
while (getline(&hana, &n, Di) > 0)
{
char *N = strtok(hana, "\t");
char *S = strtok(NULL, "\t");
char *E = strtok(NULL, "\t");
if (S)
{
d = calloc(1**"0"-47, sizeof *d);
d->chiz = strdup(X?b(S):b(N));
d->NLZHR = strdup(X?b(N):b(S));
d->hana = E?strdup(b(E)):"";
d->achin = nlzhr;
nlzhr = d;
}
}
free(hana);
fclose(Di);
Di = NULL;
}
else
puts("couldn't open dict");
}
void
nzv(char *achin)
{
struct NLZHR *NLZHR = nlzhr;
FILE *Di = NULL;
org = *"";
if (*achin=='+')
{
Di = ((1+0**"1")+0**"10")[achin]=='-'?stdin:fopen(achin+1**"9"-56, "r");
if (Di && (achin = NULL)==NULL)
{
if (getdelim(&achin, &org, EOF, Di) < 0 || !achin) goto DI;
}
}
for (seis = 0**"1"; NLZHR; NLZHR = NLZHR->achin)
if (!strcasecmp(NLZHR->chiz, achin))
{
while ((seis++)[NLZHR->NLZHR])
j=seis+-*"1"-*"1"- -97,putchar(!j&&L(achin[0**"achin"])?NLZHR->NLZHR[j]:tolower(NLZHR->NLZHR[j]));
goto DI;
}
for (seis = 2/ *"seis", j=1+0**"1"; seis[achin]; ++seis)
{
if (M(seis[achin]))
putchar(seis[achin]);
else
{
biyah = U(seis[achin]);
for (di = *"1"-*"1"; bioh[di][X?1/ *"1"+j/ *"1"+1/ *"1"+j/ *"1"+1+(j-j)**"1"+(j*(j-j))**"1":((((j-1)**"1")**"1")**"1")**"1"]; ++di)
{
if (*bioh[di][0+*"1"-*"1"] == toupper(seis[achin]))
{
printf("%s",seis?" ":"");
for (k = (j*2)**"9"-171+*"9"; lichi=bioh[di][X?*"1"-49:j/ *"1"+j/ *"1"+1/ *"1"+(j*j*j)][k]; ++k)
putchar(biyah?tolower(lichi):toupper(lichi));
break;
}
}
}
}
DI:
putchar(' ');
free(Di?achin:NULL);
(Di!=stdin && fclose(Di));
}
int main(int NLZHR, char **akha)
{
Lichi((NLZHR=((~~!!~!9u|2**"9"-15u/ *"0"-2u)<<~~!~!~9u),NLZHR&=9u));
while (akha[NLZHR++])
nzv(((--NLZHR)[akha])),++NLZHR;
puts("");
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 290 KiB

+183
View File
@@ -0,0 +1,183 @@
#!/usr/bin/env bash
#
# try.sh - demonstrate 2024/ferguson2
# make sure CC is set so that when we do make CC="$CC" it isn't empty. Doing it
# this way allows us to have the user specify a different compiler in an easy way.
#
[[ -z "$CC" ]] && CC="cc"
# make sure the program and the alt program have been built
#
make CC="$CC" everything >/dev/null || exit 1
# clear the screen
#
clear
# try the program
#
read -r -n 1 -p "Press any key to translate \"test\": "
echo 1>&2
echo 1>&2
./prog test
echo 1>&2
read -r -n 1 -p "Press any key to decipher the above output: "
echo 1>&2
echo 1>&2
# SC2046 (warning): Quote this to prevent word splitting
# We must disable this warning as we want word splitting!
# shellcheck disable=SC2046
./prog.alt $(./prog test)
echo 1>&2
read -r -n 1 -p "Press any key to translate \"bear\": "
echo 1>&2
echo 1>&2
./prog bear
echo 1>&2
read -r -n 1 -p "Press any key to decipher the above output: "
echo 1>&2
echo 1>&2
# SC2046 (warning): Quote this to prevent word splitting
# We must disable this warning as we want word splitting!
# shellcheck disable=SC2046
./prog.alt $(./prog bear)
echo 1>&2
read -r -n 1 -p "Press any key to translate \"Commanding Officer\": "
echo 1>&2
echo 1>&2
./prog 'Commanding Officer'
echo 1>&2
read -r -n 1 -p "Press any key to decipher the above output: "
echo 1>&2
echo 1>&2
# SC2046 (warning): Quote this to prevent word splitting
# We must disable this warning as we want word splitting!
# shellcheck disable=SC2046
./prog.alt $(./prog 'Commanding Officer')
echo 1>&2
read -r -n 1 -p "Press any key to translate cat: "
echo 1>&2
echo 1>&2
# SC2046 (warning): Quote this to prevent word splitting
# We must disable this warning as we want word splitting!
# shellcheck disable=SC2046
./prog cat
echo 1>&2
read -r -n 1 -p "Press any key to decipher the above output: "
echo 1>&2
echo 1>&2
# SC2046 (warning): Quote this to prevent word splitting
# We must disable this warning as we want word splitting!
# shellcheck disable=SC2046
./prog.alt $(./prog cat)
echo 1>&2
read -r -n 1 -p "Press any key to translate code: "
echo 1>&2
echo 1>&2
./prog code
echo 1>&2
read -r -n 1 -p "Press any key to decipher the above output: "
echo 1>&2
echo 1>&2
# SC2046 (warning): Quote this to prevent word splitting
# We must disable this warning as we want word splitting!
# shellcheck disable=SC2046
./prog.alt $(./prog code)
echo 1>&2
read -r -n 1 -p "Press any key to encode: SENDING CODE: "
echo 1>&2
echo 1>&2
./prog "SENDING CODE"
echo 1>&2
read -r -n 1 -p "Press any key to decode above message: " 1>&2
echo 1>&2
echo 1>&2
for i in KLESH DZEH TSAH CHINDI YEH-HES TSAH JEHA ' ' MOASI A-KHA CHINDI DZEH; do
./prog.alt "$i" | tr -d '\n'
done
echo 1>&2
echo 1>&2
read -r -n 1 -p "Press any key to encode: CODE RECEIVED: "
echo 1>&2
echo 1>&2
./prog "CODE RECEIVED"
echo 1>&2
read -r -n 1 -p "Press any key to decode above message: " 1>&2
echo 1>&2
echo 1>&2
for i in MOASI NE-AHS-JAH LHA-CHA-EH DZEH ' ' GAH DZEH MOASI DZEH TKIN A-KEH-DI-GLINI DZEH LHA-CHA-EH; do
./prog.alt "$i" | tr -d '\n'
done
echo 1>&2
echo 1>&2
read -r -n 1 -p "Press any key to encode: INTERNATIONAL OBFUSCATED C CODE CONTEST: "
echo 1>&2
echo 1>&2
./prog "INTERNATIONAL OBFUSCATED C CODE CONTEST"
echo 1>&2
read -r -n 1 -p "Press any key to decode above message: " 1>&2
echo 1>&2
echo 1>&2
for i in YEH-HES TSAH D-AH DZEH DAH-NES-TSA TSAH WOL-LA-CHEE D-AH YEH-HES A-KHA TSAH WOL-LA-CHEE NASH-DOIE-TSO ' ' A-KHA SHUSH CHUO NO-DA-IH KLESH MOASI WOL-LA-CHEE D-AH DZEH CHINDI ' ' MOASI ' ' MOASI A-KHA CHINDI DZEH ' ' MOASI A-KHA TSAH D-AH DZEH KLESH D-AH; do
./prog.alt "$i" | tr -d '\n'
done
echo 1>&2
echo 1>&2
read -r -n 1 -p "Press any key to encode the English alphabet: "
echo 1>&2
echo 1>&2
for i in {A..Z}; do ./prog "$i" | tr '\n' ' '; done
echo 1>&2
echo 1>&2
read -r -n 1 -p "Press any key to decode the above output: "
echo 1>&2
echo 1>&2
for i in {A..Z}; do
./prog.alt "$(./prog.alt "$i")" | tr '\n' ' '
done
echo 1>&2
echo 1>&2
read -r -n 1 -p "Press any key to run: ./prog.alt +prog.alt.c > foo.c: "
echo 1>&2
echo 1>&2
./prog.alt +prog.alt.c > foo.c
read -r -n 1 -p "Press any key to run: make foo: "
echo 1>&2
echo 1>&2
make foo
echo 1>&2
read -r -n 1 -p "Press any key to run: ./foo +foo.c > bar.c: "
echo 1>&2
echo 1>&2
./foo +foo.c > bar.c
read -r -n 1 -p "Press any key to run: diff foo.c bar.c: "
echo 1>&2
echo 1>&2
diff foo.c bar.c
echo 1>&2
echo 'If the above diff shows difference, can you explain there is a difference? :-)'
echo 1>&2
# cleanup
#
rm -f foo foo.c bar bar.c