BWCSL: A Programming Language for the Wireworld Computer
Posted: December 23rd, 2018, 9:32 pm
BWCSL (Blah Wireworld Computer Substitution Language, pronounced "bwicksle" ([ˈbwɪk.səl]?)) is a simple programming language I created for programming the Wireworld Computer. I had the basic idea in 2016 when trying to program Dick, but I never implemented it until now.
The language is based on the idea of directly substituting statements with single operators with sequences of simpler commands. It does not support compound statements. Maybe the language could be adapted for other OISCs.
At the time of writing, there is only one implementation. It is a command-line compiler (assembler?) I wrote in C++. I'll provide it here. I wrote it using C++14, though maybe it could be compiled with C++11; I don't know.
I seriously hope that works. You can call it with commands like "./bwcsl hello.bwcsl" and the like. It will then produce a "savestate" in the form of 64 4-digit hexadecimal values separated by spaces. Since I still can't run Golly (!!!!!) I have created a javascript program to enter this savestate into the computer in Reasoning Realm. You can use it as such, and thusly:
First, open Reasoning Realm (found here).
Then run this savecode, by copying it into the save code box and clicking "set". Make sure the simulation is paused, as the script has to be run on generation 0:
You can then run this script. I would do this by opening the developer console with ctrl+shift+k and pasting it in, but your browser may vary. I would appreciate it if somebody would write a Lua script to enter this in Golly (I would recommend against using primes.mc for this, by the way).
You can then paste the savestate into the prompt, and then run the simulation. Note that in the savecode I posted, the rule is "Wire12" instead of "WireWorld". Reasoning Realm has problems with the real name, apparently.
Have you gotten it to work? No? Of course not, please explain your problems so I can fix them. Regardless, here's a description of the language itself.
The Language Itself
Programs consist mostly of a series of statements, separated by semicolons. Single-line comments can be created with the # character. A statement can be data, a label, or an operation.
Labels consist of simply an identifier, like "start", "a".
Data contains an integer literal, like "1". They can be formatted in base 16 by appending 'h' ("FFFEh"), or in binary with 'b' ("101b"). 'd' can be used for decimal, though it is redundant.
An operation consists of an operator and one to three operands separated by whitespace, like "1 + 2", "a ++", "print a".
Whitespace consists of spaces, newlines, tabs, and commas. It also does not matter where the operator goes, all that matters is what the operator is and what order its operands go in. "+ 1 2", "1 + 2", and "1 2 +" are all equivalent.
In order to retrieve the result of some operations, you will have to use predefined labels, such as r+ for the output of the + operator (you can also use r0,r1 ... r63 to refer to specific locations in memory). The following adds 2 to a:
The label "start" is used as the beginning of the program. If no such label is defined, it is assumed to be the first statement, which will be a mistaken assumption if you have entered any data, such as variables, before the beginning of your program. Speaking of which, variables are equivalent to labels:
And in order to use a label to control the flow of the program, you will want to refer to its address. This can be done by prepending &:
If you do not use &, you will be attempting to go to a location in memory specified by the contents of whatever comes at the start of the program.
With that in mind, here is a simple program:
Hello world. Note that jmp and goto are synonymous, and both of them are actually compiled as going just before they are used; as such, a NOP (an operation that does nothing) instruction is used to give the loop space to exist. This loop is essentially equivalent to a HALT instruction.
There are two conditionals: !=, and >=. I will probably add more in future versions. Once you use a conditional operator, you can then use the conditional goto operator, '?'. For example,
Here is a program that generates the 21days sequence, which I wrote into the computer here.
This compiler is relatively simplistic. You will almost always be able to optimise a program down; every level of abstraction slows you down. One somewhat low-level feature you can utilise if you understand how to do so are memory preset commands, which are formatted "%lbl:val.", where lbl is a label (most likely of the form rX) and val is an integer literal for that memory location to be set to in the program's initial state. This program relies on an understanding of the computer itself to perform addition quickly:
Here is a list of all of the operators that currently exist, along with what they compile to. The amount of words of memory they use is written in parentheses, and operands which cannot be literal values are indicated with an asterisk.
There are probably mistakes in there. Hopefully they'll be fixed eventually, and more operators will presumably be added.
(EDIT: I forgot to mention, I think there's a bug with uppercase letters. Use lowercase ones for labels.)
That's The Language.
Now I want to see if anybody actually uses this. I'd be interested to see other peoples' BWCSL programs, so I encourage you to try implementing programs I haven't made. BWCSL also allows you to simply program in assembly if the operators confuse you. Maybe the people on the esoteric languages discord would enjoy this (though if they're not posting in this thread I don't really care).
I don't know if you could make a prime number generator small enough to fit in the 52 words of memory allocated for programs in the Wireworld Computer using these operators, but feel free to try implementing something more complex, like Skyrim.
The language is based on the idea of directly substituting statements with single operators with sequences of simpler commands. It does not support compound statements. Maybe the language could be adapted for other OISCs.
At the time of writing, there is only one implementation. It is a command-line compiler (assembler?) I wrote in C++. I'll provide it here. I wrote it using C++14, though maybe it could be compiled with C++11; I don't know.
Code: Select all
/*
bwcslstandalone.cpp
blah 2018
(version 1)
This is a bunch of code taken with minor edits from a project I have been
working on, to create an easy to compile file.
The first argument is the file to compile. You can optionally have a second
argument, "-v", which makes the output verbose. Not very good argument
handling, but it works for now.
*/
#include <iostream>
#include <fstream>
#include <cstring> //strcmp()
#include <vector>
using namespace std;
char numToChar(unsigned char in){
if(in<=9)
return in+'0';
else if(in<=15)
return in+'A'-10;
return '0';
}
std::string twoBytesToHex(unsigned int in){
std::string ret = " ";
ret[0] = numToChar((in&0xF000)>>12);
ret[1] = numToChar((in&0xF00)>>8);
ret[2] = numToChar((in&0xF0)>>4);
ret[3] = numToChar(in & 0xF);
return ret;
}
void splitString(string in, char sep, vector<string>* v){
int n1, n2=-1;
do {
n1=n2;
n2=in.find(sep,n2+1);
v->push_back(in.substr(n1+1,n2-n1-1));
} while(n2>n1);
}
string joinStringVector(vector<string>* v, string join){
string ret = (*v)[0];
for(unsigned int i=1;i<v->size();i++){
ret+=join+(*v)[i];
}
return ret;
}
string replaceAll(string in, char old, string repwith){
// Yes, this splits the string and rejoins it; it swaps separators. If you
// think this is bad practice, so do I, but I don't care.
vector<string> v; splitString(in,old,&v);
return joinStringVector(&v,repwith);
}
int vfind(vector<string> v, string q){
for(unsigned int i=0;i<v.size();i++)
if(v[i]==q) return i;
return -1;}
int vfind(vector<unsigned int> v, unsigned int q){ //TODO: use templates
for(unsigned int i=0;i<v.size();i++)
if(v[i]==q) return i;
return -1;}
// Assemblers/compilers
bool isBWCSLCommand(string in){
const string coms[]={"-","--","++","!","print","jmp","goto",">>","<<","=","mov","+","?","!=",">=","&!","&","|","^","-."};
for(int i=0;i<20;i++)
if(in==coms[i])
return true;
return false;
}
bool isBWCSLLiteral(string in){
if(in.length()==0) return false;
char b = in[in.length()-1];
if(b=='h'||b=='b'||b=='d')
in=in.substr(0,in.length()-1);
else b='d';
if(in.length()==0) return false;
if(in[0]=='-') in=in.substr(1); // remove sign
if(in.length()==0) return false;
for(unsigned int i=0;i<in.length();i++){
char c=in[i]; // we check if each char is a valid digit in the used base
if((b=='b'&&!(c=='0'||c=='1')) || // if binary
(b=='d'&&(c<'0'||c>'9')) || // decimal
(b=='h'&&!((c>='0'&&c<='9') || (c>='a'&&c<='f') || (c>='A'&&c<='F'))))
return false;
}
return true;
}
unsigned int interpretBWCSLLiteral(string in, bool twoscomplement = true){ // assumes valid literal
char last=in[in.length()-1];
int base = 10;
if(last=='b')
base=2;
else if(last=='h')
base=16;
if(base!=10 || last=='d')
in=in.substr(0,in.length()-1);
unsigned int value;
bool neg = false;
if(in[0]=='-'){
neg=true;
in=in.substr(1);
}
value = stoi(in,nullptr,base);
if(neg) value=((~value)+twoscomplement)&0xFFFF;
return value;
}
string BWCSL(string in, bool givesteps=false, bool givestats=false){
// Tokenisation: Whitespace will all be replaced by one comma and comments
// will be removed.
bool twoscomp = true; // use twos' complement (1s' sucks)
string tokens = "";
bool onws = false; // on whitespace
bool com = false; // on comment
char lastchar = ';';
bool preset = false; // on a preset command (%lbl:value.)
vector<string> presetdata;
for(unsigned int i=0;i<in.length();i++){
char cat = in[i];
if(!com&&i+2<in.length()&&in[i]=='['&&in[i+1]=='1'&&in[i+2]==']'){
twoscomp=false; // interpret ones' complement flag
i+=2; // skip over flag
}else if(preset){ // memory preset command
if(cat==':')
presetdata.push_back(""); // new term
else if(cat=='.'){
preset=false;
if(presetdata.size()&1){ // if there are an odd number of terms
cout<<"error: Memory preset command contains odd number of terms. Perhaps you missed a period?\n";
return "";
}
}else if(cat!='\n')
presetdata[presetdata.size()-1]+=cat;
}else if(com){
com=cat!='\n'; // Comments end on newlines
} else {
if(cat==' '||cat=='\t'||cat=='\n'||cat==','){
onws=true;
}else if(cat=='#'){
com=true;
onws=true; // If the comment has ended, there must be a newline
}else if(cat=='%'){
preset=true;
presetdata.push_back(""); // We push an empty string in for the first term
}else{
if(onws==true && lastchar!=';' && cat!=';') // add reduced whitespace
tokens+=',';
tokens+=cat;
lastchar = cat;
onws=false;
}
}
}
if(givesteps)
cout<<tokens<<"\n";
// Operator substitution
string assembly = ""; // This will store the result of operator substitution
const int opcounts[3] = {9,11,1};
const string ops[3][11] = // All operators; each sub-array represents an
{ // amount of operands.
{"-","--","++","!","print","jmp","goto",">>","<<"},
{"=","mov","+","?","!=",">=","&!","&","|","^","-."},
{"?"}
};
const string opsub[3][11] =
{
{(twoscomp?"mov,A,r62;mov,1,r60;mov,r62,r61;":"mov,A,r62;"),"mov,A,r62;mov,FFFF,r60;mov,r61,A;","mov,A,r60;mov,1,r61;mov,r61,A;","mov,A,r62;","mov,A,r0;","mov,A,r63","mov,A,r63"/*lack of semicolon intentional*/,"mov,A,r58;","mov,A,r59;"},
{"mov,B,A;","mov,A,B;","mov,A,r60;mov,B,r61;","mov,A,r55;mov,B,r57;mov,r56,r63;mov,r1,r1;","mov,A,r53;mov,B,r54;mov,r54,r62;mov,r53,r54;mov,r62,r53;mov,r54,r62;mov,r62,r56;","mov,B,r62;mov,1,r60;mov,r62,r61;mov,r61,r61;mov,B,r60;mov,r61,r54;mov,0111111111111111b,r53;mov,r53,r56;","mov,A,r53;mov,B,r54;","mov,B,r62;mov,r62,r54;mov,A,r53;","mov,A,r62;mov,r62,r53;mov,B,r54;mov,r54,r62;","mov,A,r53;mov,B,r54;mov,r54,r62;mov,r53,r54;mov,r62,r53;mov,r54,r62;",(twoscomp?"mov,B,r62;mov,1,r60;mov,r62,r61;mov,r61,r61;mov,A,r60;":"mov,B,r62;mov,62,r61;mov,A,r60;")},
{"mov,A,r56;mov,B,r55;mov,r56,r63;mov,C,r57;"}
};
vector<string> statements;
splitString(tokens,';',&statements);
for(unsigned int i=0;i+1<statements.size();i++){ // i+1 instead of i because
// there will be a semicolon at the end, and thus an empty statement.
if(statements[i]==""){
cout << "error: Statement "<<i<<" is empty. Try removing a semicolon.";
return "";
}
vector<string> words;
splitString(statements[i],',',&words);
vector<string> args;
string opstring="";
for(unsigned int w=0;w<words.size();w++){ // Get operator and operands.
if(isBWCSLCommand(words[w])){
if(opstring=="")
opstring=words[w];
else{
cout << "error: Statement "<<i<<" contains multiple operators, the first being "<<opstring<<". Perhaps you missed a semicolon?\n";
return "";
}
}else{
args.push_back(words[w]);
}
}
if(opstring!=""){ // Command, not label or data.
if(args.size()>3 || args.size()==0){
cout << "error: Statement "<<i<<" contains "<<args.size()<<" arguments, and no operator with that many arguments exists.\n";
return "";
}
bool operatorFound = false;
for(int i=0;i<opcounts[args.size()-1];i++){ // Check what operator it is
if(ops[args.size()-1][i]==opstring){
// And then substitute the operator with its assembly
string newasm = opsub[args.size()-1][i];
// Replacing argument shorthand
// TODO: address potential issue if user-entered identifier uses uppercase
newasm=replaceAll(newasm,'A',args[0]);
if(args.size()>1) newasm=replaceAll(newasm,'B',args[1]);
if(args.size()>2) newasm=replaceAll(newasm,'C',args[2]);
if(opstring=="jmp"||opstring=="goto"){ // branching in the
//Wireworld Computer involves a delay of 1 cpu cycle, so
//jmp instructions must be placed before they are to be
//executed.
vector<string> vasm;
splitString(assembly,';',&vasm);
vasm.pop_back(); // The last element is empty due to the
// ending semicolon
string c = vasm[vasm.size()-1];
vasm[vasm.size()-1]=newasm;
vasm.push_back(c);
assembly=joinStringVector(&vasm,";")+";";
} else
assembly+=newasm; // Otherwise it is directly added
operatorFound = true;
}
}
if(!operatorFound){
cout << "error: Statement "<<i<<": Operator "<<opstring<<" does not take "<<args.size()<<" operands. Perhaps you missed a semicolon?\n";
return "";
}
} else { // No operator, thus label or data
if(args.size()>1){
cout << "error: Statement "<<i<<" contains no operator, yet is not a label or data because it contains multiple portions of text separated by whitespace ("<<joinStringVector(&args,", ")<<"). Perhaps you missed a semicolon or mistyped an operator?\n";
return "";
}
assembly+=args[0]+";";
}
}
vector<string> splitasm;
splitString(assembly,';',&splitasm);
if(givesteps)
cout<<assembly<<"\n";
// Label application
vector<string> lbless; // Label-less
vector<string> lbls {// Labels
"r0","r1","r2","r3","r4","r5","r6","r7","r8","r9",
"r10","r11","r12","r13","r14","r15","r16","r17","r18","r19",
"r20","r21","r22","r23","r24","r25","r26","r27","r28","r29",
"r30","r31","r32","r33","r34","r35","r36","r37","r38","r39",
"r40","r41","r42","r43","r44","r45","r46","r47","r48","r49",
"r50","r51","r52","r53","r54","r55","r56","r57","r58","r59",
"r60","r61","r62","r63",
"rdisplay","rpc","r&!","r&","r+","r|","r^","r!","r>>","r<<","r-","r--","r-."};
vector<unsigned int> lbvls {// Label values
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,29,
30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,
50,51,52,53,54,55,56,57,58,59,
60,61,62,63,
0,63,54,54,61,62,62,62,58,59,61,61,(unsigned int)(twoscomp?61:62)};
unsigned int initlblsize = lbls.size(); // Bad practice is cool :)
// First we categorise the labels, removing them
unsigned int entrypoint=1;
unsigned int ramloc=1;
for(unsigned int i=0;i+1<splitasm.size();i++){
//Determine if statement is label
if(isBWCSLLiteral(splitasm[i])||splitasm[i].find(',')!=string::npos){
ramloc++;
lbless.push_back(splitasm[i]);
} else {
if(vfind(lbls,splitasm[i])!=-1){
cout << "error: Label \""<<splitasm[i]<<"\" defined more than once. Perhaps you missed an operator?\n";
return "";
}
lbls.push_back(splitasm[i]);
lbvls.push_back(ramloc);
if(splitasm[i]=="start") entrypoint=ramloc;
}
}
// Then they are applied
//return joinStringVector(&lbless,";");
vector<string> lblused {"0"};
for(unsigned int i=0;i<lbless.size();i++){
if(lbless[i].find(',')!=string::npos){ // If the statement is a command
vector<string> args;
splitString(lbless[i],',',&args);
for(int i=1;i<3;i++) // For both of the arguments
if(!isBWCSLLiteral(args[i])){ // label
string a; //arg
bool ad = args[i][0]=='&'; // is address
a=args[i].substr(ad?1:0); // We remove the & if there is one
if(vfind(lbls,a)==-1){
cout<<"error: Label \""<<a<<"\" is used but not defined. Perhaps you spelled it wrong, or forgot to declare it?\n";
return "";
}
if(ad&&i==2){
cout<<"error: Attempt to move value into label \""<<a<<"\". Try removing an &.\n";
return "";
}
args[i]=(ad?"":"*")+to_string(lbvls[vfind(lbls,a)]); // substitute label for its value
}
lblused.push_back(args[1]+","+args[2]);
} else { // Data
lblused.push_back(lbless[i]);
}
}
if(givesteps)
cout<<joinStringVector(&lblused,";")<<"\n";
// Literal instantiation and machine code generation
// Literal numbers in mov instructions must be converted to pointers to
// those values, namely the first argument.
vector<unsigned int> lits;
vector<unsigned int> code;
for(unsigned int i=0;i<lblused.size();i++){
vector<string> sargs;
splitString(lblused[i],',',&sargs);
if(sargs.size()>1){ // Instruction
if(sargs[1][0]!='*'){
cout << "error: Attempt to write value to integer literal \""<<sargs[1]<<"\". Perhaps you misused an operator?\n";
return "";
}
unsigned int a,b;
bool p = sargs[0][0]=='*'; // a is pointer
a=interpretBWCSLLiteral(sargs[0].substr(p?1:0));
b=interpretBWCSLLiteral(sargs[1].substr(1));
if(!p&&a){ // If not pointer, replace with reference to literal
// 0 needs no change (reading it returns 0), hence &&a.
if(vfind(lits,a)==-1)
lits.push_back(a);
a=52-vfind(lits,a); //Going down from 52; literal values are stored there
}
code.push_back(a|(b<<8));
} else { // literal (data)
code.push_back(interpretBWCSLLiteral(lblused[i],twoscomp));
}
}
if(code.size()+lits.size()>51){
cout << "error: The compiled program is too large to fit in the reliable available space in the Wireworld Computer's memory. The Wireworld Computer has 64 16-bit words of memory, 51 of which (r1-r52 inclusive) can be used freely without concern.\n\nThe compiled program contains "<<code.size()<<" words in the main code section, and "<<lits.size()<<" literal values = "<<code.size()+lits.size()<<" words, "<<52-code.size()+lits.size()<<" too many.\n";
}
//return joinStringVector(&vcode,";");
vector<unsigned int> result (64,0);
for(unsigned int i=0;i<code.size();i++)
result[i] = code[i];
for(unsigned int i=0;i<lits.size();i++)
result[52-i] = lits[i];
result[63] = entrypoint;
//Application of memory preset commands
for(unsigned int i=0;i<presetdata.size();i+=2){
int loc = vfind(lbls,presetdata[i]);
if(loc==-1){
cout<<"error: Label "<<presetdata[i]<<" is referred to in a memory preset command, but is not defined. Perhaps you misspelled it?\n";
return "";
}else{
if(!isBWCSLLiteral(presetdata[i+1])){
cout<<"error: Memory preset command attempts to set \""<<presetdata[i]<<"\" to value \""<<presetdata[i+1]<<"\", which is not a valid literal. Perhaps you misunderstand how memory preset commands work?\n";
return "";
}
result[lbvls[loc]] = interpretBWCSLLiteral(presetdata[i+1],twoscomp);
}
}
if(givestats)
cout<<"Program contained "<<splitasm.size()<<" statements, and "<<lbls.size()-initlblsize<<" labels. "<<code.size()<<" words of main program data + "<<lits.size()<<" literals = "<<lits.size()+code.size()<<" words of basic memory (r1-r52 inclusive) used.\n";
// Return the result
string hexresult="";
for(int i=0;i<64;i++) hexresult+=twoBytesToHex(result[i])+(i==63?"":" ");
return hexresult;
}
int main(int argc, char* argv[]){
string inputarg = "";
bool verbose=false;
if(argc>1)
inputarg = argv[1];
else {
cout << "No input file specified.\n";
return 0;
}
if(argc>2&&strcmp(argv[2],"-v")==0)
verbose=true;
string line, program = "";
ifstream infile (inputarg);
if (infile.is_open()){
while(getline(infile,line))
program += line + '\n';
infile.close();
} else {
cout << "Unable to open file\n";
return 0;
}
string bwcsloutput = BWCSL(program,verbose,verbose);
if(bwcsloutput!="") cout << bwcsloutput << '\n';
}First, open Reasoning Realm (found here).
Then run this savecode, by copying it into the save code box and clicking "set". Make sure the simulation is paused, as the script has to be run on generation 0:
Code: Select all
#C RLE conversion of https://github.com/quicky2000/P_wireworld/blob/master/sources/wireworld_computer/doc/models/wireworld_computer.txt
#C I presume this will work for my purposes.
x = 568, y = 903, rule = Wire12
150.25C66.25C66.25C66.25C66.25C$149.27C64.27C64.27C64.27C64.27C$148.C27.C62.C27.C62.C27.C62.C27.C62.C27.C$147.C.27C.C60.C.27C.C60.C.27C.C60.C.27C.C60.C.27C.C$141.4C.33C53.4C.33C53.4C.33C53.4C.33C53.4C.33C$140.C4.C33.C51.C4.C33.C51.C4.C33.C51.C4.C33.C51.C4.C33.C$139.C2.C3.33C3.C47.C2.C3.33C3.C47.C2.C3.33C3.C47.C2.C3.33C3.C47.C2.C3.33C3.C$138.C2.C.C3.C.27C.C3.C.C45.C2.C.C3.C.27C.C3.C.C45.C2.C.C3.C.27C.C3.C.C45.C2.C.C3.C.27C.C3.C.C45.C2.C.C3.C.27C.C3.C.C$137.C2.2C.2C3.C27.C3.2C.2C43.C2.2C.2C3.C27.C3.2C.2C43.C2.2C.2C3.C27.C3.2C.2C43.C2.2C.2C3.C27.C3.2C.2C43.C2.2C.2C3.C27.C3.2C.2C$136.C2.C.C.C.C3.27C3.C.C.C.C41.C2.C.C.C.C3.27C3.C.C.C.C41.C2.C.C.C.C3.27C3.C.C.C.C41.C2.C.C.C.C3.27C3.C.C.C.C41.C2.C.C.C.C3.27C3.C.C.C.C$135.C2.C.2C.2C.C3.25C3.C.2C.2C.C39.C2.C.2C.2C.C3.25C3.C.2C.2C.C39.C2.C.2C.2C.C3.25C3.C.2C.2C.C39.C2.C.2C.2C.C3.25C3.C.2C.2C.C39.C2.C.2C.2C.C3.25C3.C.2C.2C.C$134.C2.2C.2C.2C.2C29.2C.2C.2C.2C37.C2.2C.2C.2C.2C29.2C.2C.2C.2C37.C2.2C.2C.2C.2C29.2C.2C.2C.2C37.C2.2C.2C.2C.2C29.2C.2C.2C.2C37.C2.2C.2C.2C.2C29.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C36.C3.2C.2C.2C.2C.27C.2C.2C.2C.2C$133.C3.2C.2C.2C.2C29.2C.2C.2C.2C36.C3.2C.2C.2C.2C29.2C.2C.2C.2C36.C3.2C.2C.2C.2C29.2C.2C.2C.2C36.C3.2C.2C.2C.2C29.2C.2C.2C.2C36.C3.2C.2C.2C.2C29.2C.2C.2C.2C$133.C4.C.2C.2C.C3.25C3.C.2C.2C.C37.C4.C.2C.2C.C3.25C3.C.2C.2C.C37.C4.C.2C.2C.C3.25C3.C.2C.2C.C37.C4.C.2C.2C.C3.25C3.C.2C.2C.C37.C4.C.2C.2C.C3.25C3.C.2C.2C.C$133.C5.C.C.C.C3.27C3.C.C.C.C38.C5.C.C.C.C3.27C3.C.C.C.C38.C5.C.C.C.C3.27C3.C.C.C.C38.C5.C.C.C.C3.27C3.C.C.C.C38.C5.C.C.C.C3.27C3.C.C.C.C$133.C8.C5.C27.C5.C41.C8.C5.C27.C5.C41.C8.C5.C27.C5.C41.C8.C5.C27.C5.C41.C8.C5.C27.C5.C$133.C2.6C2.C2.C.27C.C2.C.C41.C2.6C2.C2.C.27C.C2.C.C41.C2.6C2.C2.C.27C.C2.C.C41.C2.6C2.C2.C.27C.C2.C.C41.C2.6C2.C2.C.27C.C2.C.C$133.C.C7.C2.33C4.2C39.C.C7.C2.33C4.2C39.C.C7.C2.33C4.2C39.C.C7.C2.33C4.2C39.C.C7.C2.33C4.2C$133.C.C.7C.C33.3C3.3C36.C.C.7C.C33.3C3.3C36.C.C.7C.C33.3C3.3C36.C.C.7C.C33.3C3.3C36.C.C.7C.C33.3C3.3C$133.C.C.7C2.33C3.2C4.C35.C.C.7C2.33C3.2C4.C35.C.C.7C2.33C3.2C4.C35.C.C.7C2.33C3.2C4.C35.C.C.7C2.33C3.2C4.C$133.C.C.4C3.C2.C.27C.C2.C3.3C2.C34.C.C.4C3.C2.C.27C.C2.C3.3C2.C34.C.C.4C3.C2.C.27C.C2.C3.3C2.C34.C.C.4C3.C2.C.27C.C2.C3.3C2.C34.C.C.4C3.C2.C.27C.C2.C3.3C2.C$133.C.C.C4.C5.C27.C5.C4.C2.C33.C.C.C4.C5.C27.C5.C4.C2.C33.C.C.C4.C5.C27.C5.C4.C2.C33.C.C.C4.C5.C27.C5.C4.C2.C33.C.C.C4.C5.C27.C5.C4.C2.C$133.C.C3.C.C.C.C3.27C3.C.C.C.C2.C2.C32.C.C3.C.C.C.C3.27C3.C.C.C.C2.C2.C32.C.C3.C.C.C.C3.27C3.C.C.C.C2.C2.C32.C.C3.C.C.C.C3.27C3.C.C.C.C2.C2.C32.C.C3.C.C.C.C3.27C3.C.C.C.C2.C2.C$133.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C32.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C32.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C32.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C32.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C$133.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C.27C.2C.2C.2C.2C.C.C$133.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C32.C.C.2C.2C.2C.2C29.2C.2C.2C.2C.C.C$133.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C32.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C32.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C32.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C32.C.C2.C.2C.2C.C3.25C3.C.2C.2C.C2.C.C$133.C2.C2.C.C.C.C3.27C3.C.C.C.C2.C2.C32.C2.C2.C.C.C.C3.27C3.C.C.C.C2.C2.C32.C2.C2.C.C.C.C3.27C3.C.C.C.C2.C2.C32.C2.C2.C.C.C.C3.27C3.C.C.C.C2.C2.C32.C2.C2.C.C.C.C3.27C3.C.C.C.C2.C2.C$133.C3.C2.2C.2C3.C27.C3.2C.2C2.C2.C33.C3.C2.2C.2C3.C27.C3.2C.2C2.C2.C33.C3.C2.2C.2C3.C27.C3.2C.2C2.C2.C33.C3.C2.2C.2C3.C27.C3.2C.2C2.C2.C33.C3.C2.2C.2C3.C27.C3.2C.2C2.C2.C$134.C3.C2.C.C3.C.27C.C3.C.C2.C2.C35.C3.C2.C.C3.C.27C.C3.C.C2.C2.C35.C3.C2.C.C3.C.27C.C3.C.C2.C2.C35.C3.C2.C.C3.C.27C.C3.C.C2.C2.C35.C3.C2.C.C3.C.27C.C3.C.C2.C2.C$135.C3.C2.C3.33C3.C2.C2.C37.C3.C2.C3.33C3.C2.C2.C37.C3.C2.C3.33C3.C2.C2.C37.C3.C2.C3.33C3.C2.C2.C37.C3.C2.C3.33C3.C2.C2.C$136.C2.C2.C2.C33.C2.C.C2.C39.C2.C2.C2.C33.C2.C.C2.C39.C2.C2.C2.C33.C2.C.C2.C39.C2.C2.C2.C33.C2.C.C2.C39.C2.C2.C2.C33.C2.C.C2.C$137.C2.C2.C2.33C.C.C.C.C41.C2.C2.C2.33C.C.C.C.C41.C2.C2.C2.33C.C.C.C.C41.C2.C2.C2.33C.C.C.C.C41.C2.C2.C2.33C.C.C.C.C$138.C2.C2.C2.C.27C.C2.C.C.C.C42.C2.C2.C2.C.27C.C2.C.C.C.C42.C2.C2.C2.C.27C.C2.C.C.C.C42.C2.C2.C2.C.27C.C2.C.C.C.C42.C2.C2.C2.C.27C.C2.C.C.C.C$139.C2.C2.C2.C27.C2.C2.C.C.C43.C2.C2.C2.C27.C2.C2.C.C.C43.C2.C2.C2.C27.C2.C2.C.C.C43.C2.C2.C2.C27.C2.C2.C.C.C43.C2.C2.C2.C27.C2.C2.C.C.C$140.C2.C2.C2.27C2.C2.C2.C.C44.C2.C2.C2.27C2.C2.C2.C.C44.C2.C2.C2.27C2.C2.C2.C.C44.C2.C2.C2.27C2.C2.C2.C.C44.C2.C2.C2.27C2.C2.C2.C.C$141.C2.C2.C2.25C2.C2.C2.C2.C45.C2.C2.C2.25C2.C2.C2.C2.C45.C2.C2.C2.25C2.C2.C2.C2.C45.C2.C2.C2.25C2.C2.C2.C2.C45.C2.C2.C2.25C2.C2.C2.C2.C$142.C2.C2.C27.C2.C2.C2.C47.C2.C2.C27.C2.C2.C2.C47.C2.C2.C27.C2.C2.C2.C47.C2.C2.C27.C2.C2.C2.C47.C2.C2.C27.C2.C2.C2.C$143.C2.C2.7C19.C2.C2.C2.C49.C2.C2.7C19.C2.C2.C2.C49.C2.C2.7C19.C2.C2.C2.C49.C2.C2.7C19.C2.C2.C2.C49.C2.C2.7C19.C2.C2.C2.C$144.C2.C8.C17.C2.C2.C2.C51.C2.C8.C17.C2.C2.C2.C51.C2.C8.C17.C2.C2.C2.C51.C2.C8.C17.C2.C2.C2.C51.C2.C8.C17.C2.C2.C2.C$145.C2.C3.2C2.C2.2C6.2C4.C2.C2.C2.C53.C2.C3.2C2.C2.2C6.2C4.C2.C2.C2.C53.C2.C3.2C2.C2.2C6.2C4.C2.C2.C2.C53.C2.C3.2C2.C2.2C6.2C4.C2.C2.C2.C53.C2.C3.2C2.C2.2C6.2C4.C2.C2.C2.C$146.C2.C.C2.C.C.C2.C4.C2.C.2C2.C2.C2.C55.C2.C.C2.C.C.C2.C4.C2.C.2C2.C2.C2.C55.C2.C.C2.C.C.C2.C4.C2.C.2C2.C2.C2.C55.C2.C.C2.C.C.C2.C4.C2.C.2C2.C2.C2.C55.C2.C.C2.C.C.C2.C4.C2.C.2C2.C2.C2.C$147.C2.3C.C2.3C.C4.C.3C3.C2.C2.C57.C2.3C.C2.3C.C4.C.3C3.C2.C2.C57.C2.3C.C2.3C.C4.C.3C3.C2.C2.C57.C2.3C.C2.3C.C4.C.3C3.C2.C2.C57.C2.3C.C2.3C.C4.C.3C3.C2.C2.C$146.3C2.C2.C3.C2.C4.C2.C3.C2.C3.C56.3C2.C2.C3.C2.C4.C2.C3.C2.C3.C56.3C2.C2.C3.C2.C4.C2.C3.C2.C3.C56.3C2.C2.C3.C2.C4.C2.C3.C2.C3.C56.3C2.C2.C3.C2.C4.C2.C3.C2.C3.C$145.C.C.C2.3C4.3C4.3C3.C2.C4.C55.C.C.C2.3C4.3C4.3C3.C2.C4.C55.C.C.C2.3C4.3C4.3C3.C2.C4.C55.C.C.C2.3C4.3C4.3C3.C2.C4.C55.C.C.C2.3C4.3C4.3C3.C2.C4.C$145.C3.C5.C6.C2.C6.C2.C4.C55.C3.C5.C6.C2.C6.C2.C4.C55.C3.C5.C6.C2.C6.C2.C4.C55.C3.C5.C6.C2.C6.C2.C4.C55.C3.C5.C6.C2.C6.C2.C4.C$146.4C5.C6.C2.C2.2C2.C2.C4.C56.4C5.C6.C2.C2.2C2.C2.C4.C56.4C5.C6.C2.C2.2C2.C2.C4.C56.4C5.C6.C2.C2.2C2.C2.C4.C56.4C5.C6.C2.C2.2C2.C2.C4.C$150.3C2.C6.C2.C.C2.C.C2.C4.C60.3C2.C6.C2.C.C2.C.C2.C4.C60.3C2.C6.C2.C.C2.C.C2.C4.C60.3C2.C6.C2.C.C2.C.C2.C4.C60.3C2.C6.C2.C.C2.C.C2.C4.C$153.C.C6.C2.C.C.3C3.C4.C63.C.C6.C2.C.C.3C3.C4.C63.C.C6.C2.C.C.3C3.C4.C63.C.C6.C2.C.C.3C3.C4.C63.C.C6.C2.C.C.3C3.C4.C$151.C.C2.C5.C.C2.C2.C4.C4.C61.C.C2.C5.C.C2.C2.C4.C4.C61.C.C2.C5.C.C2.C2.C4.C4.C61.C.C2.C5.C.C2.C2.C4.C4.C61.C.C2.C5.C.C2.C2.C4.C4.C$150.4C2.C5.C.C2.3C5.C4.C60.4C2.C5.C.C2.3C5.C4.C60.4C2.C5.C.C2.3C5.C4.C60.4C2.C5.C.C2.3C5.C4.C60.4C2.C5.C.C2.3C5.C4.C$151.C.C2.C5.C.C.C4.2C2.C4.C61.C.C2.C5.C.C.C4.2C2.C4.C61.C.C2.C5.C.C.C4.2C2.C4.C61.C.C2.C5.C.C.C4.2C2.C4.C61.C.C2.C5.C.C.C4.2C2.C4.C$150.2C.2C2.C4.C.C2.C2.C2.C.C4.C60.2C.2C2.C4.C.C2.C2.C2.C.C4.C60.2C.2C2.C4.C.C2.C2.C2.C.C4.C60.2C.2C2.C4.C.C2.C2.C2.C.C4.C60.2C.2C2.C4.C.C2.C2.C2.C.C4.C$149.C.3C.C2.C3.C2.C.C2.C.3C5.C59.C.3C.C2.C3.C2.C.C2.C.3C5.C59.C.3C.C2.C3.C2.C.C2.C.3C5.C59.C.3C.C2.C3.C2.C.C2.C.3C5.C59.C.3C.C2.C3.C2.C.C2.C.3C5.C$146.C.C7.C.C3.C2.C.C2.C2.C6.C56.C.C7.C.C3.C2.C.C2.C2.C6.C56.C.C7.C.C3.C2.C.C2.C2.C6.C56.C.C7.C.C3.C2.C.C2.C2.C6.C56.C.C7.C.C3.C2.C.C2.C2.C6.C$145.4C6.4C3.C2.C.C2.3C7.C55.4C6.4C3.C2.C.C2.3C7.C55.4C6.4C3.C2.C.C2.3C7.C55.4C6.4C3.C2.C.C2.3C7.C55.4C6.4C3.C2.C.C2.3C7.C$146.C.C7.C.C3.C2.C.C.C6.2C2.C56.C.C7.C.C3.C2.C.C.C6.2C2.C56.C.C7.C.C3.C2.C.C.C6.2C2.C56.C.C7.C.C3.C2.C.C.C6.2C2.C56.C.C7.C.C3.C2.C.C.C6.2C2.C$145.2C.2C5.2C.2C2.C2.C.C2.C4.C2.C.C55.2C.2C5.2C.2C2.C2.C.C2.C4.C2.C.C55.2C.2C5.2C.2C2.C2.C.C2.C4.C2.C.C55.2C.2C5.2C.2C2.C2.C.C2.C4.C2.C.C55.2C.2C5.2C.2C2.C2.C.C2.C4.C2.C.C$144.C.3C.C3.C.3C.C2.C.C2.C2.C3.C.3C55.C.3C.C3.C.3C.C2.C.C2.C2.C3.C.3C55.C.3C.C3.C.3C.C2.C.C2.C2.C3.C.3C55.C.3C.C3.C.3C.C2.C.C2.C2.C3.C.3C55.C.3C.C3.C.3C.C2.C.C2.C2.C3.C.3C$141.C.C7.C.C7.C.C2.C.C3.C2.C2.C53.C.C7.C.C7.C.C2.C.C3.C2.C2.C53.C.C7.C.C7.C.C2.C.C3.C2.C2.C53.C.C7.C.C7.C.C2.C.C3.C2.C2.C53.C.C7.C.C7.C.C2.C.C3.C2.C2.C$140.4C6.4C6.5C.C2.C2.C2.3C53.4C6.4C6.5C.C2.C2.C2.3C53.4C6.4C6.5C.C2.C2.C2.3C53.4C6.4C6.5C.C2.C2.C2.3C53.4C6.4C6.5C.C2.C2.C2.3C$141.C.C7.C.C7.C.C2.C3.C.C.C57.C.C7.C.C7.C.C2.C3.C.C.C57.C.C7.C.C7.C.C2.C3.C.C.C57.C.C7.C.C7.C.C2.C3.C.C.C57.C.C7.C.C7.C.C2.C3.C.C.C$140.2C.2C5.2C.2C5.2C.2C2.C2.C.C2.C55.2C.2C5.2C.2C5.2C.2C2.C2.C.C2.C55.2C.2C5.2C.2C5.2C.2C2.C2.C.C2.C55.2C.2C5.2C.2C5.2C.2C2.C2.C.C2.C55.2C.2C5.2C.2C5.2C.2C2.C2.C.C2.C$139.C.3C.C3.C.3C.C3.C.3C.C2.C.C2.C.C54.C.3C.C3.C.3C.C3.C.3C.C2.C.C2.C.C54.C.3C.C3.C.3C.C3.C.3C.C2.C.C2.C.C54.C.3C.C3.C.3C.C3.C.3C.C2.C.C2.C.C54.C.3C.C3.C.3C.C3.C.3C.C2.C.C2.C.C$136.C.C7.C.C7.C.C7.C.C2.C.C.C51.C.C7.C.C7.C.C7.C.C2.C.C.C51.C.C7.C.C7.C.C7.C.C2.C.C.C51.C.C7.C.C7.C.C7.C.C2.C.C.C51.C.C7.C.C7.C.C7.C.C2.C.C.C$135.4C6.5C.C3.4C6.4C2.C.C2.C49.4C6.5C.C3.4C6.4C2.C.C2.C49.4C6.5C.C3.4C6.4C2.C.C2.C49.4C6.5C.C3.4C6.4C2.C.C2.C49.4C6.5C.C3.4C6.4C2.C.C2.C$136.C.C7.C.C7.C.C7.C.C2.C2.C2.C49.C.C7.C.C7.C.C7.C.C2.C2.C2.C49.C.C7.C.C7.C.C7.C.C2.C2.C2.C49.C.C7.C.C7.C.C7.C.C2.C2.C2.C49.C.C7.C.C7.C.C7.C.C2.C2.C2.C$135.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C2.C47.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C2.C47.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C2.C47.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C2.C47.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C2.C$134.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C2.C.C46.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C2.C.C46.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C2.C.C46.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C2.C.C46.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C2.C.C$131.C.C7.C.C7.C.C7.C.C7.C.C2.C.C43.C.C7.C.C7.C.C7.C.C7.C.C2.C.C43.C.C7.C.C7.C.C7.C.C7.C.C2.C.C43.C.C7.C.C7.C.C7.C.C7.C.C2.C.C43.C.C7.C.C7.C.C7.C.C7.C.C2.C.C$126.C3.4C6.4C6.5C5.4C6.4C2.C.C38.C3.4C6.4C6.5C5.4C6.4C2.C.C38.C3.4C6.4C6.5C5.4C6.4C2.C.C38.C3.4C6.4C6.5C5.4C6.4C2.C.C38.C3.4C6.4C6.5C5.4C6.4C2.C.C$131.C.C7.C.C7.C.C7.C.C7.C.C2.C2.C42.C.C7.C.C7.C.C7.C.C7.C.C2.C2.C42.C.C7.C.C7.C.C7.C.C7.C.C2.C2.C42.C.C7.C.C7.C.C7.C.C7.C.C2.C2.C42.C.C7.C.C7.C.C7.C.C7.C.C2.C2.C$130.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C40.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C40.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C40.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C40.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C2.C$129.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C39.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C39.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C39.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C39.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C$126.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C35.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C35.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C35.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C35.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C$125.5C5.4C6.4C6.5C5.4C6.4C2.C34.5C5.4C6.4C6.5C5.4C6.4C2.C34.5C5.4C6.4C6.5C5.4C6.4C2.C34.5C5.4C6.4C6.5C5.4C6.4C2.C34.5C5.4C6.4C6.5C5.4C6.4C2.C$126.C.C7.C.C7.C.C7.C.C7.C.C7.C.C3.C8.C25.C.C7.C.C7.C.C7.C.C7.C.C7.C.C3.C8.C25.C.C7.C.C7.C.C7.C.C7.C.C7.C.C3.C8.C25.C.C7.C.C7.C.C7.C.C7.C.C7.C.C3.C8.C25.C.C7.C.C7.C.C7.C.C7.C.C7.C.C3.C8.C$125.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C7.C.C23.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C7.C.C23.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C7.C.C23.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C7.C.C23.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C2.C7.C.C$124.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C6.C2.C21.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C6.C2.C21.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C6.C2.C21.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C6.C2.C21.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C6.C2.C$121.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C$120.4C6.4C6.5C5.4C6.4C6.4C6.4C7.C2.3C14.4C6.4C6.5C5.4C6.4C6.4C6.4C7.C2.3C14.4C6.4C6.5C5.4C6.4C6.4C6.4C7.C2.3C14.4C6.4C6.5C5.4C6.4C6.4C6.4C7.C2.3C14.4C6.4C6.5C5.4C6.4C6.4C6.4C7.C2.3C$121.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C$120.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C15.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C15.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C15.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C15.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C$119.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C14.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C14.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C14.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C14.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C$116.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C11.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C11.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C11.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C11.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C$115.4C6.5C5.5C5.4C6.4C6.5C5.4C7.C2.3C.C.C10.4C6.5C5.5C5.4C6.4C6.5C5.4C7.C2.3C.C.C10.4C6.5C5.5C5.4C6.4C6.5C5.4C7.C2.3C.C.C10.4C6.5C5.5C5.4C6.4C6.5C5.4C7.C2.3C.C.C10.4C6.5C5.5C5.4C6.4C6.5C5.4C7.C2.3C.C.C$116.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C11.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C11.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C11.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C11.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C$115.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C11.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C11.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C11.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C11.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C$114.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C9.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C9.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C9.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C9.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C$111.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C$110.5C5.5C5.5C5.5C5.4C6.4C6.4C7.C2.3C.C.C3.A6.5C5.5C5.5C5.5C5.4C6.4C6.4C7.C2.3C.C.C3.A6.5C5.5C5.5C5.5C5.4C6.4C6.4C7.C2.3C.C.C3.A6.5C5.5C5.5C5.5C5.4C6.4C6.4C7.C2.3C.C.C3.A6.5C5.5C5.5C5.5C5.4C6.4C6.4C7.C2.3C.C.C3.A$111.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.B6.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.B6.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.B6.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.B6.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.B$110.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C6.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C6.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C6.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C6.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C$109.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C6.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C6.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C6.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C6.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C$106.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C4.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C4.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C4.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C4.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C$105.4C6.5C5.4C6.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C4.4C6.5C5.4C6.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C4.4C6.5C5.4C6.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C4.4C6.5C5.4C6.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C4.4C6.5C5.4C6.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C$106.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.A6.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.A6.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.A6.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.A6.C.C7.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.A$105.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.B6.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.B6.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.B6.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.B6.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.B$106.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C8.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C8.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C8.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C8.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C$111.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C14.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C14.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C14.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C14.C.C7.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C$110.4C6.5C5.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C14.4C6.5C5.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C14.4C6.5C5.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C14.4C6.5C5.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C14.4C6.5C5.4C6.4C6.4C6.5C6.C2.3C.C.C3.C.C$111.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C16.C.C7.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C$110.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.A16.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.A16.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.A16.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.A16.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.A$111.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3B2.B18.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3B2.B18.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3B2.B18.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3B2.B18.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3B2.B$116.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C24.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C24.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C24.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C24.C.C7.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.C2.C$115.4C6.5C5.5C5.4C6.4C7.C2.3C.C.C3.C.C24.4C6.5C5.5C5.4C6.4C7.C2.3C.C.C3.C.C24.4C6.5C5.5C5.4C6.4C7.C2.3C.C.C3.C.C24.4C6.5C5.5C5.4C6.4C7.C2.3C.C.C3.C.C24.4C6.5C5.5C5.4C6.4C7.C2.3C.C.C3.C.C$116.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C26.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C26.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C26.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C26.C.C7.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C$115.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C26.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C26.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C26.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C26.2C.2C5.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C$116.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3A2.A28.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3A2.A28.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3A2.A28.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3A2.A28.3C.C3.C.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3A2.A$121.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.B2.B34.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.B2.B34.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.B2.B34.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.B2.B34.C.C7.C.C7.C.C7.C.C6.C2.C.C.C2.C3.B2.B$120.4C6.4C6.4C6.4C7.C2.3C.C.C3.C.C34.4C6.4C6.4C6.4C7.C2.3C.C.C3.C.C34.4C6.4C6.4C6.4C7.C2.3C.C.C3.C.C34.4C6.4C6.4C6.4C7.C2.3C.C.C3.C.C34.4C6.4C6.4C6.4C7.C2.3C.C.C3.C.C$121.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C36.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C36.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C36.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C36.C.C7.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C$120.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C36.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C36.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C36.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C36.2C.2C5.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C$121.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C38.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C38.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C38.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C38.3C.C3.C.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C$126.C.C7.C.C7.C.C6.C2.C.C.C2.C3.A2.A44.C.C7.C.C7.C.C6.C2.C.C.C2.C3.A2.A44.C.C7.C.C7.C.C6.C2.C.C.C2.C3.A2.A44.C.C7.C.C7.C.C6.C2.C.C.C2.C3.A2.A44.C.C7.C.C7.C.C6.C2.C.C.C2.C3.A2.A$125.4C6.5C5.4C7.C2.3C.C.C3.B.B44.4C6.5C5.4C7.C2.3C.C.C3.B.B44.4C6.5C5.4C7.C2.3C.C.C3.B.B44.4C6.5C5.4C7.C2.3C.C.C3.B.B44.4C6.5C5.4C7.C2.3C.C.C3.B.B$126.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C46.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C46.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C46.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C46.C.C7.C.C7.C.C2.C3.3C2.C2.C.C4.C$125.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C46.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C46.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C46.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C46.2C.2C5.2C.2C5.2C.3C.C3.C3.C3.C4.C$126.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C48.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C48.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C48.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C48.3C.C3.C.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C$131.C.C7.C.C6.C2.C.C.C2.C3.C2.C54.C.C7.C.C6.C2.C.C.C2.C3.C2.C54.C.C7.C.C6.C2.C.C.C2.C3.C2.C54.C.C7.C.C6.C2.C.C.C2.C3.C2.C54.C.C7.C.C6.C2.C.C.C2.C3.C2.C$130.5C5.4C7.C2.3C.C.C3.A.A54.5C5.4C7.C2.3C.C.C3.A.A54.5C5.4C7.C2.3C.C.C3.A.A54.5C5.4C7.C2.3C.C.C3.A.A54.5C5.4C7.C2.3C.C.C3.A.A$131.C.C7.C.C2.C3.3C2.C2.C.C4.B56.C.C7.C.C2.C3.3C2.C2.C.C4.B56.C.C7.C.C2.C3.3C2.C2.C.C4.B56.C.C7.C.C2.C3.3C2.C2.C.C4.B56.C.C7.C.C2.C3.3C2.C2.C.C4.B$130.2C.2C5.2C.3C.C3.C3.C3.C4.C56.2C.2C5.2C.3C.C3.C3.C3.C4.C56.2C.2C5.2C.3C.C3.C3.C3.C4.C56.2C.2C5.2C.3C.C3.C3.C3.C4.C56.2C.2C5.2C.3C.C3.C3.C3.C4.C$131.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C58.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C58.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C58.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C58.3C.C3.C.3C.C2.C.C.C2.C2.3C2.C$136.C.C6.C2.C.C.C2.C3.C2.C64.C.C6.C2.C.C.C2.C3.C2.C64.C.C6.C2.C.C.C2.C3.C2.C64.C.C6.C2.C.C.C2.C3.C2.C64.C.C6.C2.C.C.C2.C3.C2.C$135.4C7.C2.3C.C.C3.C.C64.4C7.C2.3C.C.C3.C.C64.4C7.C2.3C.C.C3.C.C64.4C7.C2.3C.C.C3.C.C64.4C7.C2.3C.C.C3.C.C$136.C.C2.C3.3C2.C2.C.C4.A66.C.C2.C3.3C2.C2.C.C4.A66.C.C2.C3.3C2.C2.C.C4.A66.C.C2.C3.3C2.C2.C.C4.A66.C.C2.C3.3C2.C2.C.C4.A$135.2C.3C.C3.C3.C3.C4.B66.2C.3C.C3.C3.C3.C4.B66.2C.3C.C3.C3.C3.C4.B66.2C.3C.C3.C3.C3.C4.B66.2C.3C.C3.C3.C3.C4.B$136.3C4.C.C.C2.C2.3C2.C68.3C4.C.C.C2.C2.3C2.C68.3C4.C.C.C2.C2.3C2.C68.3C4.C.C.C2.C2.3C2.C68.3C4.C.C.C2.C2.3C2.C$143.C.C.C2.C3.C2.C76.C.C.C2.C3.C2.C76.C.C.C2.C3.C2.C76.C.C.C2.C3.C2.C76.C.C.C2.C3.C2.C$139.3C2.3C.C.C3.C.C73.3C2.3C.C.C3.C.C73.3C2.3C.C.C3.C.C73.3C2.3C.C.C3.C.C73.3C2.3C.C.C3.C.C$138.C3.C2.C2.C.C4.C73.C3.C2.C2.C.C4.C73.C3.C2.C2.C.C4.C73.C3.C2.C2.C.C4.C73.C3.C2.C2.C.C4.C$138.C.C.C.C4.C4.A74.C.C.C.C4.C4.A74.C.C.C.C4.C4.A74.C.C.C.C4.C4.A74.C.C.C.C4.C4.A$139.3C2.C3.3B2.B76.3C2.C3.3B2.B76.3C2.C3.3B2.B76.3C2.C3.3B2.B76.3C2.C3.3B2.B$138.C.C.2C2.C2.C2.C76.C.C.2C2.C2.C2.C76.C.C.2C2.C2.C2.C74.3C.C.2C2.C2.C2.C76.C.C.2C2.C2.C2.C$138.C.C4.C.C.C.C77.C.C4.C.C.C.C77.C.C4.C.C.C.C74.C4.C4.C.C.C.C77.C.C4.C.C.C.C$138.C6.A.C2.C78.C6.A.C2.C78.C6.A.C2.C75.C9.A.C2.C78.C6.A.C2.C$138.C3.2C2.2B.C79.C2.3C2.2B.C79.C2.3C2.2B.C77.6C4.2B.C80.5C2.2B.C$138.C2.C2.C3.A81.2C3.C3.A80.C.C3.C3.A84.C5.A86.C3.A$138.C2.C2.C2.3C85.C2.3C80.C4.C2.3C84.C3.3C85.C2.3C$139.2C3.C3.C86.C3.C86.C3.C86.C3.C86.C3.C$145.C2.C87.C2.C87.C3.C86.C2.C86.C2.C$146.C2.4C84.C2.5C83.C3.C86.C2.C84.C2.C$147.C5.C84.C6.C83.C3.C86.C2.C82.C2.C$148.C4.C85.C5.C84.C3.85C2.C2.C80.C2.C$149.C3.C86.C4.C85.C87.C2.C2.C78.C2.C$150.C2.C87.C3.C86.86C2.C2.C2.C76.C2.C$151.C2.C87.C2.C172.C2.C2.C2.C74.C2.C$152.C2.C87.C2.171C2.C2.C2.C2.C72.C2.C$153.C2.C87.C172.C2.C2.C2.C2.C70.C2.C$154.C2.C87.171C2.C2.C2.C2.C2.C68.C2.C$155.C2.C257.C2.C2.C2.C2.C2.C66.C2.C$156.C2.256C2.C2.C2.C2.C2.C2.C64.C2.C$157.C257.C2.C2.C2.C2.C2.C.C63.C2.C$158.226C.27C.C2.C2.C2.C2.C2.C.C.C62.C2.C$384.C27.C.C2.C2.C2.C2.C.C.C.C61.C2.C$384.C26.C2.C3.C2.C2.C.C.C.C.C60.C2.C$384.C26.C.5C4.C.C.C.C.C.C59.C2.C$385.16C.C.2C5.C.C2.C5.C.C.C.C.C.C58.C2.C$401.3C2.C3.C2.5C3.C2.C.C.C.C.C57.C2.C$402.C.6C4.C.C.C.C3.C.C.C.C.C56.C2.C$406.C6.C5.C4.C.C.C.C.C55.C2.C$406.C3.C.C7.C3.C.C.C.C.C54.C2.C$406.C2.5C5.5C2.C.C.C.C53.C2.C$406.C3.C.C6.C2.C3.C.C.C.C52.C2.C$406.C2.2C.2C5.5C2.C.C.C2.C50.C2.C$406.C.C.3C.C5.C.C.C.C.C2.C2.C32.17C2.C$406.C.C5.2C3.C5.C3.C2.C.C31.C18.C$405.C3.2C.2C2.C.C7.C3.C.C.C30.C2.17C$404.C6.C3.5C5.5C2.C.C29.C2.C$403.C6.3C3.C.C6.C2.C3.C.C28.C2.C3.57C$402.C8.C3.2C.2C5.5C2.C.C27.C2.C3.C57.C$401.C2.2C5.C2.C.3C.C5.C.C.C.C.C26.C2.C4.C2.55C$400.C2.C2.C3.A.C.C5.2C3.C5.C3.C24.C2.C5.C.C$399.C2.C2.3B.B2.C2.2C.2C2.C.C7.C3.C22.C2.C6.C2.95C$398.C2.C4.C2.C.3C3.C3.5C5.5C22.C2.C7.C97.C$397.C2.C4.B.2C3.C3.3C3.C.C6.C2.C22.C2.C8.C2.95C$396.C2.C5.A.C3.C.C3.C3.2C.2C5.5C20.C2.C9.C.C$395.C2.C5.3C3.C2.C3.C2.C.3C.C5.C.C.C.18C2.C10.C2.95C$394.C2.C7.C3.C2.C3.A.C.C5.2C3.C5.C19.C11.C97.C$393.C2.C7.C3.C2.3B.B2.C2.2C.2C2.C.C7.C3.15C12.C2.95C$392.C2.C7.C.3C4.C2.C.3C3.C3.5C5.5C27.C.C$391.C2.C9.C6.B.2C3.C3.3C3.C.C6.C2.C28.C2.85CBA4CBA2C$390.C2.C11.C5.A.C3.C.C3.C3.2C.2C5.5C27.C97.C$389.C2.C13.C3.3C3.C2.C3.C2.C.3C.C5.C.C28.C2.56CAB16CAB19C$388.C2.C15.C3.C3.C2.C3.A.C.C5.2C3.C31.C.C$387.C3.C16.C.C3.C2.3B.B2.C2.2C.2C2.C.C32.C2.95C$388.C2.C17.C.3C4.C2.C.3C3.C3.5C31.C97.C$387.C.C.C18.C6.B.2C3.C3.3C3.C.C32.C2.95C$387.C.C.C19.C5.A.C3.C.C3.C3.2C.2C31.C.C$387.C.C.C20.C3.3C3.C2.C3.C2.C.3C.C30.C2.95C$387.C.C.C21.C3.C3.C2.C3.A.C.C5.2C29.C97.C$387.C.C.C22.C.C3.C2.3B.B2.C2.2C.2C2.C28.C2.2CAB4CAB4CAB4CAB4CAB67C$387.C.C.C23.C.3C4.C2.C.3C3.C5.C27.C.C$387.C.C.C24.C6.B.2C3.C3.3C4.C27.C2.CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA2C$387.C.C.C4.7C14.C5.A.C3.C.C3.C6.C26.C97.C$387.C.C.C3.C7.C14.C3.3C3.C2.C3.C7.C25.C2.74CAB4CAB4CAB4CABC$387.C.C.C3.C2.4C2.6C9.C3.C3.C2.C3.A.C7.C24.C.C$387.C.C.C3.C.C4.C7.C9.C.C3.C2.3B.B2.C8.C23.C2.95C$387.C.C.C3.C.C3.C.C7.C9.C.3C4.C2.C.3C8.C22.C97.C$387.C.C.C3.C.C3.3C8.C9.C6.B.2C3.C10.C21.C2.32CAB61C$387.C.C.C3.C.C4.C10.C9.C5.A.C16.C20.C.C$387.C.C.C3.C.C4.C11.C9.C3.3C18.C19.C2.95C$387.C.C.C3.C.C4.C.C.B8.C9.2C2.C20.C18.C97.C$387.C.C.C3.C.C5.2CAC9.C10.2C22.C17.C2.95C$387.C.C.C3.C.C4.C.C12.10C25.C16.C.C$387.C.C.C3.C.C4.C50.C15.C2.95C$387.C.C.C3.C.C3.3CBA4CBA4CBA4CBA4CBA4C19.C15.C97.C$387.C.C.C3.C.C2.C33.B18.C15.C2.95C$387.C.C.C3.C.C2.A2.AB4CAB4CAB4CAB4CAB4CA18.C.C14.C.C$387.C.C.C3.C.C2.B.C49.3C14.C2.95C$387.C.C.C3.C.C2.C2.3CBA4CBA10CBA4CBA4CBA4CBA4CBA3.C15.C97.C$387.C.C.C3.C.C2.C49.C3.3C12.C2.95C$387.C.C.C3.C.C2.C2.AB4CAB4CAB4CAB4CAB10CAB4CAB3C7.C11.C.C$387.C.C.C3.C.C2.C.C51.C2.C11.C2.95C$387.C.C.C3.C.C2.A2.3CBA4CBA10CBA4CBA4CBA4CBA4CBA3.C.C.C11.C97.C$387.C.C.C3.C.C2.B49.C2.C.C.C11.C2.38CAB10CAB43C$387.C.C.C3.C.C2.C2.AB4CAB4CAB4CAB4CAB10CAB4CAB3C3.C.C.C11.C.C$387.C.C.C3.C.C2.C.C50.C.C.C11.C2.95C$387.C.C.C3.C.C2.C2.3CBA4CBA10CBA4CBA4CBA10CBA3.C.C.C11.C97.C$387.C.C.C3.C.C2.C49.C2.C.C.C11.C2.95C$387.C.C.C4.C3.C2.AB10CAB4CAB4CAB10CAB4CAB3C3.C.C.C11.C.C$387.C.C.C8.C.C50.C.C.C11.C2.95C$387.C.C.C8.C2.3CBA4CBA10CBA4CBA4CBA10CBA3.C.C.C11.C97.C$387.C.C.C8.C49.C2.C.C.C11.C2.95C$387.C.C.C8.C2.AB10CAB4CAB4CAB10CAB4CAB3C3.C.C.C11.C.C$387.C.C.C8.C.C50.C.C.C11.C2.95C$387.C.C.C8.A2.3CBA4CBA10CBA4CBA4CBA4CBA4CBA3.C.C.C11.C97.C$387.C.C.C8.B49.C2.C.C.C11.C2.95C$387.C.C.C8.C2.AB4CAB4CAB4CAB4CAB4CAB4CAB4CAB3C3.C.C.C11.C.C$387.C.C.C8.C.C50.C.C.C11.C2.95C$387.C.C.C8.C2.3CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA3.C.C.C11.C97.C$387.C.C.C8.C49.C2.C.C.C11.C2.44CAB22CAB25C$387.C.C.C8.A2.AB4CAB4CAB4CAB4CAB4CAB4CAB4CAB3C3.C.C.C11.C.C$387.C.C.C8.B.C50.C.C.C11.C2.95C$387.C.C.C8.C2.3CBA4CBA6CBA2CBA4CBA4CBA4CBA4CBA.C.C.C.C11.C97.C$387.C2.C9.C49.3C2.C.C11.C2.95C$387.C13.2CAB4CAB4CAB4CAB4CAB4CAB4CAB4CAB3C.C.C.C.C11.C.C$387.C65.C.C.C11.C2.95C$387.C60.C4.C.C.C11.C97.C$387.C65.C.C.C11.C2.95C$387.C52.3C10.C.C.C11.C.C$387.C51.C3.6C4.C.C.C11.C2.95C$387.C50.C2.2C6.C3.C2.C12.C97.C$387.C37.C11.C2.C4.C.4C2.C15.C2.95C$387.C19.C17.C10.C4.C.4C2.C2.6C11.C.C$387.C47.C6.C2.C.2C.2C6.7C4.C2.95C$387.C2.43CBA2C4.3C11.2C8.C.C.C97.C$387.C.C47.C4.C11.C2.C8.3C.52CAB10CAB4CAB4CAB4CAB4CAB7C$385.C.C.C2.45C4.C2.5C3.4A2.C6.C.C$387.C.C.C49.C.C5.C2.B2.B3.C5.C5.C$387.C.C2.45C3.6C.C2.2CB3C4.C2.4C$387.C.C47.C.C3.C2.3C3.B.C6.3C2.C4.C23.C23.C23.C$387.C2.47C3.2C2.2C.C.C5.C4.C2.4C$388.C53.C7.C.B.C.C.4A3.C2.C.52CAB16CAB4CAB19C$389.4C47.4A2.2C3.CBC3.AB2.B3.C.C.C97.C$393.C8.CAB4CAB4CAB4CAB4CAB4CAB4CAB2.B.A2.2CB.B3.C.B3C4.C2.C2.95C$394.C6.C38.B3C2.BC7.C4.C4.3B.C.C$395.C6.2CBA4CBA4CBA4CBA4CBA8C4.C6.2CAB2C4.C6.C2.C2.56CAB16CAB4CAB13C$396.C41.C4.2CAB2C9.C7.AB.C97.C$397.C4.3CAB4CAB25C19.A11.C2.95C$398.C2.C41.CBA4CBA4CBAC7.BC.C.C$399.C2.18CBA4CBA4CBA4CBA3C14.A.C6.A2.C2.50CAB16CAB4CAB19C$400.C36.C10.C10.C5.3C.C97.C$401.21C31.2C.3C7.C2.C2.95C$422.C29.C2.C9.C.3C.C$423.C25.C2.C.3C8.C3.C2.44CAB16CAB4CAB25C$424.C27.C2.C8.3A2.C97.C$425.C27.C.C.C7.B.C.C2.95C$426.C26.C2.4C.2CABC.C.C.C$427.C25.C.A.C2.C2.A2.C2.C2.44CAB10CAB37C$428.C24.C.B3.3C.C.3C.C97.C$429.C23.C2.CB2.C2.C2.C2.C2.95C$430.C22.C.C2.A.A2.C2.C2.C.C$431.C21.C2.2C3.B.C3.C.C2.50CAB10CAB31C$432.C20.C7.C.B3.C.C97.C$433.C19.C2.C4.C.A3.C.C2.95C$434.C18.C.C.C3.C.C3.C.C.C$435.C17.C.B.C3.C.C3.C.C2.44CAB10CAB37C$436.C16.C.A.A3.A.C3.C.C97.C$437.C15.C.C.B3.B.C3.C.C2.95C$438.C14.C.C.C3.C.B3.C.C.C$439.C13.C.C.C3.C.A3.C.C2.38CAB10CAB43C$440.C12.C.C.C3.C.C3.C.C97.C$441.C11.C.C.C3.C.C3.C.C2.95C$442.C10.C.C.C3.A.C3.C.C.C$443.C9.C.C.C3.B.C3.C.C2.38CAB55C$444.C8.C.C.C3.C.B3.C.C97.C$445.C8.C2.C3.C.A3.C.C2.95C$446.C10.C3.C.C3.C.C.C$447.C9.C3.C.C3.C.C2.44CAB49C$448.C8.C3.A.C3.C.C97.C$449.C7.C3.B.C3.C.C2.95C$450.C6.C3.C.B3.C.C.C$451.C.C3.C3.C.A3.C.C2.38CAB55C$452.2CA2.C3.C.C3.C.C97.C$451.C.C.B.C3.C.C3.C.C2.95C$451.A3.C.C3.A.C3.C.C.C$451.2B2.C.C3.B.C3.C.C2.32CAB61C$451.C.A.C.C3.C.B3.C.C97.C$451.C2.C2.C3.C.A3.C.C2.95C$451.C5.C3.C.C3.C.C.C$450.3C3.3C2.C.C3.C.C2.32CAB61C$450.C.A3.A.A2.A.C3.C.C97.C$449.2C.AB.BA.AB.B.C3.C.C2.95C$448.C.2CA.C.ACA.C2.B3.C.C.C$448.C5.C5.C2.A3.C.C2.AB66CAB4CAB4CAB4CAB7C$449.C4.C4.C3.C3.C.C97.C$450.C2.3C2.C4.C3.C.C2.CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA4CBA10CBA4CBA14C$451.C.C.A.A5.C3.C.C.C$452.2C.AB6.C3.C.C2.2CAB4CAB4CAB4CAB4CAB34CAB22CAB4CABC$451.C.2CA.C5.B3.C.C97.C$451.C6.C4.A3.C.C2.73CBA16CBA2C$452.C6.C3.C3.C.C.C$453.C6.C2.C3.C.C2.56CAB22CAB4CAB4CABC$454.C6.A.C3.C.C97.C$455.C5.B.C3.C.C2.79CBA14C$456.C4.C.B3.C.C.C$457.C3.C2.A2.C.C2.56CAB10CAB4CAB4CAB4CAB4CABC$458.C3.2C3.C.C97.C$459.C7.C.C2.95C$460.4C3.C.C.C$464.C2.C.C2.62CAB10CAB4CAB4CAB4CABC$465.C.C.C97.C$465.C.C.C2.91CBA2C$465.C.C.C.C$465.C.C.C2.56CAB10CAB4CAB4CAB4CAB4CABC$465.C.C.C97.C$465.C.C.C2.95C$465.C.C.C.C$465.C.C.C2.50CAB3C$465.C.C.C57.C$465.C.C2.25CBA4CBA4CBA4CBA4CBA6C$465.C.C$465.C2.24C$465.C26.49C$466.24C51.C$490.C2.48C$490.C.C$456.2C32.C2.49C$455.C2.C31.C51.C$454.C2.2C31.C3.48C$453.C2.C2.C30.C2.C$452.C2.C2.C31.C.C$451.C2.C3.C31.C.C$450.C2.C4.C31.C.C$449.C2.C3.C.C26.3C2.C.C.C3.C$448.C2.2C.4C27.C2.C.C.C.C.C.C$447.C2.C2.C2.C3.C24.C2.C.C.C.C.C.C$446.C2.C2.C2.C2.4C23.C2.C.C.C2.C.C$445.C2.C3.C.4C2.C24.3C2.C.C2.C.C$444.C2.C4.C2.C34.C.C$443.C2.C3.C.3C.C.3C29.C.C$442.C2.2C.4C5.2C.2C27.5C$441.C2.C2.C2.C3.C3.C.C29.C.C$440.C2.C2.C2.C2.4C.5C25.4C.2C33.2C$439.C2.C3.C.4C2.C3.C.C25.C3.3C.C32.2C$438.C2.C4.C2.C7.C2.C.C24.C6.C35.6C$437.C2.C3.C.3C.C.3C.3C2.3C24.C2.39C6.C$436.C2.2C.4C5.2C.2C.C2.C.C25.C.C40.4C2.C.C$435.C2.C2.C2.C3.C3.C.C3.2C2.C5.C19.C2.40C4.C2.3C$434.C2.C2.C2.C2.4C.5C12.C19.C45.4C.C.C.C$433.C2.C3.C.4C2.C3.C.C13.C20.44C2.C6.3C$432.C2.C4.C2.C7.C2.C.C76.3C4.2C.C.13C$431.C2.C3.C.3C.C.3C.3C2.30C.45C5.C2.C5.C12.C$430.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C3.3C2.C.C3.C10.C$429.C2.C2.C2.C3.C3.C.C3.2C2.C5.C22.C7.C38.3C5.6C.3C10.C$428.C2.C2.C2.C2.4C.5C13.C22.43C2.C.C.C.C4.C2.C2.C6.C5.C$427.C2.C3.C.4C2.C3.C.C13.2C65.C.C4.3C2.5C2.C2.4C.2C4.C$426.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C.C4.C$425.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$424.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$423.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C21.C.C44.3C5.6C.3C.C.C2.C2.C2.C3.C$422.C2.C2.C2.C2.4C.5C13.C22.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$421.C2.C3.C.4C2.C3.C.C13.2C65.C.C4.3C2.5C2.C2.4C.2C2.C3.C$420.C2.C4.C2.C7.C2.C.C31.C44.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$419.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$418.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$417.C2.C2.C2.C3.C3.C.C3.2C2.C5.C22.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$416.C2.C2.C2.C2.4C.5C12.2C22.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$415.C2.C3.C.4C2.C3.C.C14.C65.C.C4.3C2.5C2.C2.4C.2C2.C3.C$414.C2.C4.C2.C7.C2.C.C37.C38.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$413.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$412.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$411.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C21.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$410.C2.C2.C2.C2.4C.5C12.C23.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$409.C2.C3.C.4C2.C3.C.C14.C65.C.C4.3C2.5C2.C2.4C.2C2.C3.C$408.C2.C4.C2.C7.C2.C.C43.C32.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$407.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$406.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$405.C2.C2.C2.C3.C3.C.C3.2C2.C5.C22.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$404.C2.C2.C2.C2.4C.5C12.2C22.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$403.C2.C3.C.4C2.C3.C.C13.2C65.C.C4.3C2.5C2.C2.4C.2C2.C3.C$402.C2.C4.C2.C7.C2.C.C49.C26.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$401.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$400.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$399.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C21.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$398.C2.C2.C2.C2.4C.5C13.C22.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$397.C2.C3.C.4C2.C3.C.C14.C65.C.C4.3C2.5C2.C2.4C.2C2.C3.C$396.C2.C4.C2.C7.C2.C.C55.C20.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$395.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$394.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$393.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C10.C10.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$392.C2.C2.C2.C2.4C.5C12.2C22.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$391.C2.C3.C.4C2.C3.C.C13.2C65.C.C4.3C2.5C2.C2.4C.2C2.C3.C$390.C2.C4.C2.C7.C2.C.C61.C14.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$389.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$388.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$387.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C21.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$386.C2.C2.C2.C2.4C.5C12.2C22.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$385.C2.C3.C.4C2.C3.C.C14.C65.C.C4.3C2.5C2.C2.4C.2C2.C3.C$384.C2.C4.C2.C7.C2.C.C67.C8.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$383.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$382.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$381.C2.C2.C2.C3.C3.C.C3.2C2.C5.C22.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$380.C2.C2.C2.C2.4C.5C12.C.2C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$379.C2.C3.C.4C2.C3.C.C13.C.2C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$378.C2.C4.C2.C7.C2.C.C73.C2.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$377.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$376.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$375.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.C20.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$374.C2.C2.C2.C2.4C.5C12.C.C21.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$373.C2.C3.C.4C2.C3.C.C13.C.C64.C.C4.3C2.5C2.C2.4C.2C2.C3.C$372.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$371.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$370.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$369.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.C20.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$368.C2.C2.C2.C2.4C.5C12.C2.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$367.C2.C3.C.4C2.C3.C.C13.C.2C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$366.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$365.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$364.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$363.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.2C19.C37.C8.3C5.6C.3C.C.C2.C2.C2.C3.C$362.C2.C2.C2.C2.4C.5C12.C2.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$361.C2.C3.C.4C2.C3.C.C13.C.2C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$360.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$359.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$358.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$357.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.C20.C31.C14.3C5.6C.3C.C.C2.C2.C2.C3.C$356.C2.C2.C2.C2.4C.5C12.C.2C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$355.C2.C3.C.4C2.C3.C.C13.C2.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$354.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$353.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$352.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$351.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.2C19.C25.C20.3C5.6C.3C.C.C2.C2.C2.C3.C$350.C2.C2.C2.C2.4C.5C12.C.C21.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$349.C2.C3.C.4C2.C3.C.C13.C2.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$348.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$347.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$346.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$345.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.C9.C10.C19.C26.3C5.6C.3C.C.C2.C2.C2.C3.C$344.C2.C2.C2.C2.4C.5C12.C.2C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$343.C2.C3.C.4C2.C3.C.C13.C.2C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$342.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$341.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$340.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$339.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.2C19.C13.C32.3C5.6C.3C.C.C2.C2.C2.C3.C$338.C2.C2.C2.C2.4C.5C12.C2.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$337.C2.C3.C.4C2.C3.C.C13.C2.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$336.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$335.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$334.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$333.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.2C19.C7.C38.3C5.6C.3C.C.C2.C2.C2.C3.C$332.C2.C2.C2.C2.4C.5C12.C.2C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$331.C2.C3.C.4C2.C3.C.C13.C.2C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$330.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$329.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$328.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$327.C2.C2.C2.C3.C3.C.C3.2C2.C5.C.2C19.C.C44.3C5.6C.3C.C.C2.C2.C2.C3.C$326.C2.C2.C2.C2.4C.5C12.C.2C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$325.C2.C3.C.4C2.C3.C.C13.C2.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$324.C2.C4.C2.C7.C2.C.C31.C44.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$323.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$322.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$321.C2.C2.C2.C3.C3.C.C3.2C2.C5.C22.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$320.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$319.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$318.C2.C4.C2.C7.C2.C.C37.C38.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$317.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$316.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$315.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.C19.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$314.C2.C2.C2.C2.4C.5C13.C.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$313.C2.C3.C.4C2.C3.C.C13.2C.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$312.C2.C4.C2.C7.C2.C.C43.C32.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$311.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$310.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$309.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.C19.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$308.C2.C2.C2.C2.4C.5C13.C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$307.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$306.C2.C4.C2.C7.C2.C.C49.C26.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$305.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$304.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$303.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$302.C2.C2.C2.C2.4C.5C13.C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$301.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$300.C2.C4.C2.C7.C2.C.C55.C20.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$299.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$298.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$297.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.C8.C10.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$296.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$295.C2.C3.C.4C2.C3.C.C13.2C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$294.C2.C4.C2.C7.C2.C.C61.C14.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$293.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$292.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$291.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$290.C2.C2.C2.C2.4C.5C13.C.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$289.C2.C3.C.4C2.C3.C.C13.2C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$288.C2.C4.C2.C7.C2.C.C67.C8.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$287.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$286.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$285.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.C19.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$284.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$283.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$282.C2.C4.C2.C7.C2.C.C73.C2.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$281.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$280.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$279.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$278.C2.C2.C2.C2.4C.5C13.C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$277.C2.C3.C.4C2.C3.C.C13.2C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$276.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$275.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$274.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$273.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$272.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$271.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$270.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$269.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$268.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$267.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$266.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$265.C2.C3.C.4C2.C3.C.C13.2C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$264.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$263.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$262.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$261.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C21.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$260.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$259.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$258.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$257.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$256.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$255.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.C19.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$254.C2.C2.C2.C2.4C.5C13.C.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$253.C2.C3.C.4C2.C3.C.C13.2C.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$252.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$251.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$250.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$249.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.C8.C10.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$248.C2.C2.C2.C2.4C.5C13.C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$247.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$246.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$245.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$244.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$243.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.2C18.C13.C32.3C5.6C.3C.C.C2.C2.C2.C3.C$242.C2.C2.C2.C2.4C.5C13.C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$241.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$240.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$239.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$238.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$237.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.C19.C7.C38.3C5.6C.3C.C.C2.C2.C2.C3.C$236.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$235.C2.C3.C.4C2.C3.C.C13.2C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$234.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$233.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$232.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$231.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.2C18.C.C44.3C5.6C.3C.C.C2.C2.C2.C3.C$230.C2.C2.C2.C2.4C.5C13.C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$229.C2.C3.C.4C2.C3.C.C13.2C.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$228.C2.C4.C2.C7.C2.C.C31.C44.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$227.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$226.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$225.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.C19.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$224.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$223.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$222.C2.C4.C2.C7.C2.C.C37.C38.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$221.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$220.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$219.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$218.C2.C2.C2.C2.4C.5C13.C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$217.C2.C3.C.4C2.C3.C.C13.2C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$216.C2.C4.C2.C7.C2.C.C43.C32.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$215.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$214.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$213.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$212.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$211.C2.C3.C.4C2.C3.C.C13.2C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$210.C2.C4.C2.C7.C2.C.C49.C26.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$209.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$208.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$207.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$206.C2.C2.C2.C2.4C.5C13.C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$205.C2.C3.C.4C2.C3.C.C13.2C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$204.C2.C4.C2.C7.C2.C.C55.C20.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$203.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$202.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$201.C2.C2.C2.C3.C3.C.C3.2C2.C5.C11.C10.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$200.C2.C2.C2.C2.4C.5C12.2C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$199.C2.C3.C.4C2.C3.C.C14.C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$198.C2.C4.C2.C7.C2.C.C61.C14.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$197.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$196.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$195.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.C19.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$194.C2.C2.C2.C2.4C.5C12.2C.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$193.C2.C3.C.4C2.C3.C.C14.C.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C$192.C2.C4.C2.C7.C2.C.C67.C8.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C$191.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C$190.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C$189.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.C19.C46.3C5.6C.3C.C.C2.C2.C2.C3.C$188.C2.C2.C2.C2.4C.5C12.2C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C$187.C2.C3.C.4C2.C3.C.C14.C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C$186.C2.C4.C2.C7.C2.C.C73.C2.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.2C$185.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C.C$184.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C2.C$183.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C3.C3.C$182.C2.C2.C2.C2.4C.5C12.2C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C4.C$181.C2.C3.C.4C2.C3.C.C14.C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C5.C$180.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C6.C$179.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C7.C$178.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C8.C$177.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.C19.C46.3C5.6C.3C.C.C2.C2.C2.C3.C9.C$176.C2.C2.C2.C2.4C.5C12.2C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C10.C$175.C2.C3.C.4C2.C3.C.C14.C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C11.C$174.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C12.C$173.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C13.C$172.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C14.C$171.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C37.C8.3C5.6C.3C.C.C2.C2.C2.C3.C15.C$170.C2.C2.C2.C2.4C.5C12.2C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C16.C$169.C2.C3.C.4C2.C3.C.C14.C.C63.C.C4.3C2.5C2.C2.4C.2C2.C3.C17.C$168.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C18.C$167.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C19.C$166.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C20.C$165.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.C19.C31.C14.3C5.6C.3C.C.C2.C2.C2.C3.C21.C$164.C2.C2.C2.C2.4C.5C12.2C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C22.C$163.C2.C3.C.4C2.C3.C.C14.C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C23.C$162.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C24.C$161.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C25.C$160.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C26.C$159.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C25.C20.3C5.6C.3C.C.C2.C2.C2.C3.C27.C$158.C2.C2.C2.C2.4C.5C12.2C2.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C28.C$157.C2.C3.C.4C2.C3.C.C14.C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C29.C$156.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C30.C$155.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C31.C$154.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C32.C$153.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C7.C10.C19.C26.3C5.6C.3C.C.C2.C2.C2.C3.C33.C$152.C2.C2.C2.C2.4C.5C12.2C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C34.C$151.C2.C3.C.4C2.C3.C.C14.C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C35.C$150.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C36.C$149.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C37.C$148.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C38.C$147.C2.C2.C2.C3.C3.C.C3.2C2.C5.C2.2C18.C13.C32.3C5.6C.3C.C.C2.C2.C2.C3.C39.C$146.C2.C2.C2.C2.4C.5C12.2C.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C40.C$145.C2.C3.C.4C2.C3.C.C14.C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C41.C$144.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C3.C42.C$143.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C3.C43.C$142.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C3.C44.C$141.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C21.C7.C38.3C5.6C.3C.C.C2.C2.C2.C3.C45.C$140.C2.C2.C2.C2.4C.5C12.C2.2C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C3.C46.C$139.C2.C3.C.4C2.C3.C.C14.C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C4.C46.C$138.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C5.C46.C$137.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C6.C46.C10.C$136.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C7.C46.C9.C4.47C$135.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.C19.C.C44.3C5.6C.3C.C.C2.C2.C2.C8.C46.C3.2C3.6C47.C$134.C2.C2.C2.C2.4C.5C12.C2.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C9.C46.C3.2C4.C4.47C$133.C2.C3.C.4C2.C3.C.C14.C.C63.C.C4.3C2.5C2.C2.4C.2C2.C10.C46.C10.C$132.C2.C4.C2.C7.C2.C.C31.C44.4C3.2C.C.2C.C.C2.C2.C5.C2.C11.C46.C$131.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C12.C46.C$130.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C13.C46.C3.C$129.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.C19.C46.3C5.6C.3C.C.C2.C2.C2.C61.C3.C$128.C2.C2.C2.C2.4C.5C12.C3.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C2.13C47.C3.C$127.C2.C3.C.4C2.C3.C.C14.C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C3.C12.C46.C$126.C2.C4.C2.C7.C2.C.C37.C38.4C3.2C.C.2C.C.C2.C2.C5.C2.C4.C5.C3.C2.C46.C$125.C2.C3.C.3C.C.3C.3C2.30C.45C4.C3.C5.C5.C.C.3C3.C2.C5.C4.C.C.C.C.C46.C$124.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C6.C4.C.C.C.C.C46.C3.C$123.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C7.C4.C.C.C.C.C46.C4.C$122.C2.C2.C2.C2.4C.5C12.C3.C19.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C7.C5.C.C.C.C.C46.C3.2C$121.C2.C3.C.4C2.C3.C.C14.C.2C62.C.C4.3C2.5C2.C2.4C.2C2.C8.C5.C.C.C.C.C46.C$120.C2.C4.C2.C7.C2.C.C76.4C3.2C.C.2C.C.C2.C2.C5.C2.C9.C5.C.C.C.C.C46.C$119.C2.C3.C.3C.C.3C.3C2.18C5.7C.45C4.C3.C5.C5.C.C.3C3.C2.C10.C5.C.C.C.C.C46.C$118.C2.2C.4C5.2C.2C.C2.C.C16.C.C.C7.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C11.C5.C.C.C.C.C46.C3.2C$117.C2.C2.C2.C3.C3.C.C3.2C2.C5.2C.C8.5C6.C46.3C5.6C.3C.C.C2.C2.C2.C12.C5.C.C.C.C.C46.C4.C$116.C2.C2.C2.C2.4C.5C12.C2.2C8.C2.C7.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C13.C5.C.C.C.C.C46.C3.2C$115.C2.C3.C.4C2.C3.C.C14.C2.C7.5C50.C.C4.3C2.5C2.C2.4C.2C2.C14.C5.C.C.C.C.C46.C$114.C2.C4.C2.C7.C2.C.C22.C.C.C49.4C3.2C.C.2C.C.C2.C2.C5.C2.C15.C5.C.C.C.C.C46.C$113.C2.C3.C.3C.C.3C.3C2.24C5.C.45C4.C3.C5.C5.C.C.3C3.C2.C16.C5.C.C.C.C.C46.C$112.C2.2C.4C5.2C.2C.C2.C.C28.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C17.C5.C.C.C.C.C46.C3.C$111.C2.C2.C2.C3.C3.C.C3.2C8.2C.2C18.C46.3C5.6C.3C.C.C2.C2.C2.C18.C5.C.C.C.C.C46.C3.2C$110.C2.C2.C2.C2.4C.5C5.2C.2C2.C2.C20.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C19.C2.C2.C.C.C.C.C46.C4.C$109.C2.C3.C.4C2.C3.C.C4.2C2.C2.C2.C2.C62.C.C4.3C2.5C2.C2.4C.2C2.C20.C.C.C.C.C.C.C.C46.C$108.C2.C4.C2.C7.C2.C3.C3.3C2.C65.4C3.2C.C.2C.C.C2.C2.C5.C2.C21.C.C.C.C.C.C.C.C46.C$107.C2.C3.C.3C.C.3C.3C4.C5.C4.17C.45C4.C3.C5.C5.C.C.3C3.C2.C22.C.C.C.C.C.C.C.C46.C$106.C2.2C.4C5.2C.2C.C4.C2.BA2C22.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C23.C.C.C.C.C.C.C.C46.C3.2C$105.C2.C2.C2.C3.C3.C.C3.C2.C2.C5.C21.43C3.3C5.6C.3C.C.C2.C2.C2.C24.C.C.C.C.C.C.C.C46.C3.C$104.C2.C2.C2.C2.4C.5C4.C2.C2.C2.C.5C59.C.C.C.C.C4.C2.C2.C2.C3.C2.C2.C25.C.C.C.C.C.C.C.C46.C4.C$103.C2.C3.C.4C2.C3.C.C4.C3.C.C.C.C6.C9.43C6.C.C4.3C2.5C2.C2.4C.2C2.C26.C.C.C.C.C.C.C.C46.C$102.C2.C4.C2.C7.C2.C.C.C3.C2.C.C.C.C5.9C43.C3.4C3.2C.C.2C.C.C2.C2.C5.C2.C27.C.C.C.C.C.C.C.C46.C$101.C2.C3.C.3C.C.3C.3C2.5C.A2.C2.C2.4C.C10.41C3.C4.C3.C5.C5.C.C.3C3.C2.C28.C.C.C.C.C.C.C.C46.C$100.C2.2C.4C5.2C.2C.C2.C.C.C2.B.3A.C3.C2.3C50.C3.C.C2.4C2.C.C3.C3.3C.C3.C2.C29.C.C.C.C.C.C.C.C46.C3.C$99.C2.C2.C2.C3.C3.C.C3.2C4.C.C3.B2.C.2C.2C.C.C.47C2.C3.3C5.6C.3C.C.C2.C2.C2.C30.C.C.C.C.C.C.C.C46.C3.2C$98.C2.C2.C2.C2.4C.5C6.2C2.C2.A.C2.C9.C47.C2.C.C.C.C.C4.C2.C2.C2.C3.C2.C2.C31.C.C.C.C.C.C.C.C46.C3.2C$97.C2.C3.C.4C2.C3.C.C6.C5.3C.C4.7C2.25CAB20C3.C.C4.3C2.5C2.C2.4C.2C2.C32.C.C.C.C.C.C.C.C46.C$96.C2.C4.C2.C7.C2.C.C3.C6.C2.6C7.2C48.4C3.2C.C.2C.C.C2.C2.C5.C2.C33.C.C.C.C.C.C.C.C46.C$95.C2.C3.C.3C.C.3C.3C3.2C3.C.C2.3C2.C5.AB7.45C4.C3.C5.C5.C.C.3C3.C2.C34.C.C.C.C.C.C.C.C46.C$94.C2.2C.4C5.2C.2C.C2.C.C5.3C2.C8.C2.C2.C2.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C35.C.C.C.C.C.C.C.C46.C3.2C$93.C2.C2.C2.C3.C3.C.C3.2C2.C4.C.C.2C.3CAB3C.2C2.C.C2.40C.2C3.3C5.6C.3C.C.C2.C2.C2.C36.C.C.C.C.C.C.C.C46.C4.C$92.C2.C2.C2.C2.4C.5C10.C20.C2.C41.C2.C.C.C.C.C4.C2.C2.C2.C3.C2.C2.C37.C.C.C.C.C.C.C.C46.C4.C$91.C2.C3.C.4C2.C3.C.C12.20C4.41C3.C.C4.3C2.5C2.C2.4C.2C2.C38.C.C.C.C.C.C.C.C46.C$90.C2.C4.C2.C7.C2.C.C77.3C3.2C.C.2C.C.C2.C2.C5.C2.C39.C.C.C.C.C.C.C.C46.C$89.C2.C3.C.3C.C.3C.3C2.28C3.45C4.C3.C5.C5.C.C.3C3.C2.C40.C.C.C.C.C.C.C.C46.C$88.C2.2C.4C5.2C.2C.C2.C.C26.C.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C41.C.C.C.C.C.C.C.C46.C3.2C$87.C2.C2.C2.C3.C3.C.C3.2C2.C15.2C.2C6.C2.43C3.3C5.6C.3C.C.C2.C2.C2.C42.C.C.C.C.C.C.C.C46.C3.2C$86.C2.C2.C2.C2.4C.5C22.C2.2C7.C44.C.C.C.C.C4.C2.C2.C2.C3.C2.C2.C43.C.C.C.C.C.C.C.C46.C3.2C$85.C2.C3.C.4C2.C3.C.C24.C2.C8.43C.C.C4.3C2.5C2.C2.4C.2C2.C44.C.C.C.C.C.C.C.C46.C$84.C2.C4.C2.C7.C2.C.C77.3C3.2C.C.2C.C.C2.C2.C5.C2.C45.C.C.C.C.C.C.C.C46.C$83.C2.C3.C.3C.C.3C.3C2.28C3.45C4.C3.C5.C5.C.C.3C3.C2.C46.C.C.C.C.C.C.C.C46.C$82.C2.2C.4C5.2C.2C.C2.C.C26.C.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C47.C.C.C.C.C.C.C.C46.C3.2C$81.C2.C2.C2.C3.C3.C.C3.2C2.C9.6C11.C.C46.3C5.6C.3C.C.C2.C2.C2.C48.C.C.C.C.C.C.C.C46.C3.2C$80.C2.C2.C2.C2.4C.5C15.C6.C9.C3.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C49.C.C.C.C.C.C.C.C46.C4.C$79.C2.C3.C.4C2.C3.C.C7.9C3.2C3.C9.3C43.C.C4.3C2.5C2.C2.4C.2C2.C50.C.C.C.C.C.C.C.C46.C$78.C2.C4.C2.C7.C2.C.C2.3C11.C2.C3.3C50.4C3.2C.C.2C.C.C2.C2.C5.C2.C51.C.C.C.C.C.C.C.C46.C$77.C2.C3.C.3C.C.3C.3C2.4C4.5C3.4C2.C5.2C.45C4.C3.C5.C5.C.C.3C3.C2.C52.C.C.C.C.C.C.C.C46.C$76.C2.2C.4C5.2C.2C.C2.C.C5.C5.C2.C2.C3.C3.C2.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C53.C.C.C.C.C.C.C.C46.C3.C$75.C2.C2.C2.C3.C3.C.C3.2C2.C2.6C.C2.6C4.C.C3.C46.3C5.6C.3C.C.C2.C2.C2.C54.C.C.C.C.C.C.C.C46.C3.C.2C$74.C2.C2.C2.C2.4C.5C8.C3.C2.3C3.C.C6.C5.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C55.C.C.C.C.C.C.C.C46.C3.C.2C$73.C2.C3.C.4C2.C3.C.C10.2C2.2C.C.A5.C3.4C47.C.C4.3C2.5C2.C2.4C.2C2.C56.C.C.C.C.C.C.C.C46.C$72.C2.C4.C2.C7.C2.C.C10.C7.B.B.C.C.2C2.C45.4C3.2C.C.2C.C.C2.C2.C5.C2.C57.C.C.C.C.C.C.C.C46.C$71.C2.C3.C.3C.C.3C.3C2.9C.4C2.BA3.CBC3.C.4C2.41C4.C3.C5.C5.C.C.3C3.C2.C58.C.C.C.C.C.C.C.C46.C$70.C2.2C.4C5.2C.2C.C2.C.C7.2C2.C.C2.3C.B3.C4.C2.C41.C.C2.4C2.C.C3.C3.3C.C3.C2.C59.C.C.C.C.C.C.C.C46.C3.C.C$69.C2.C2.C2.C3.C3.C.C3.2C2.C8.4C2.2C7.C4.C.2C43.3C5.6C.3C.C.C2.C2.C2.C60.C.C.C.C.C.C.C.C46.C3.C.C$68.C2.C2.C2.C2.4C.5C17.C6.6C5.C4.39C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C61.C.C.C.C.C.C.C.C46.C3.C.C$67.C2.C3.C.4C2.C3.C.C19.6C12.4C39.C.C4.3C2.5C2.C2.4C.2C2.C62.C.C.C.C.C.C.C.C46.C$66.C2.C4.C2.C7.C2.C.A7.2C.C65.4C3.2C.C.2C.C.C2.C2.C5.C2.C63.C.C.C.C.C.C.C.C46.C$65.C2.C5.3C.C.3C.3C2.CAB4CAB2.19C.45C4.C3.C5.C5.C.C.3C3.C2.C64.C.C.C.C.C.C.C.C46.C$64.C2.C11.2C.2C.C2.C.A8.C.C17.C45.C.C2.4C2.C.C3.C3.3C.C3.C2.C65.C.C.C.C.C.C.C.C46.C3.C.C$63.C2.C13.C.C3.2C2.C6.CA14.AC4.C46.3C5.6C.3C.C.C2.C2.C2.C66.C.C.C.C.C.C.C.C46.C3.C2.C$62.C2.C13.5C12.C2.B9.2CAB2.C4.43C2.C.C.C.C4.C2.C2.C2.C3.C2.C2.C67.C.C.C.C.C.C.C.C46.C3.C.2C$61.C2.C15.C.C14.2C9.C4.3C.B45.C.C4.3C2.5C2.C2.4C.2C2.C68.C.C.C.C.C.C.C.C46.C$60.C2.C15.C2.C.C23.C.C5.CB2C.2C38.4C3.2C.C.2C.C.C2.C2.C5.C2.C69.C.C.C.C.C.C.C.C46.C$59.C2.C15.3C2.24C2.4C.AB.B2.C2.36C4.C3.C5.C5.C.C.3C3.C3.C69.C.C.C.C.C.C.C.C46.C$58.C2.C15.C.C2.C.C11.C10.2C.C2.C6.C38.C.C2.4C2.C.C3.C3.3C.C3.C4.C69.C.C.C.C.C.C.C.C46.C3.C.2C$57.C2.C15.C3.2C2.C11.C5.C9.3C6.2C10.C26.3C5.6C.3C.C.C2.C2.C5.C69.C.C.C.C.C.C.C.C46.C3.C2.C$56.C2.C15.C21.2C14.C2.3C4.C3.30C2.C.C.C.C4.C2.C2.C2.C3.C2.C6.C69.C.C.C.C.C.C.C.C46.C3.C.2C$55.C2.C15.C24.C12.C.3C.5C3.C30.C.C4.3C2.5C2.C2.4C.2C7.C69.C.C.C.C.C.C.C.C46.C$54.C2.C15.C.C15.7C.C12.C.C.C.C7.C28.4C3.2C.C.2C.C.C2.C2.C5.C2.C5.C69.C.C.C.C.C.C.C.C46.C$53.C2.C15.C2.C12.C.C7.C12.3C2.3C2.5C31.C3.C5.C5.C.C.3C3.C2.C.C4.C69.C.C.C.C.C.C.C.C46.C$52.C2.C15.C3.C.C.13C4.4C12.C4.C2.C37.4C2.C.C3.C3.3C.C3.C3.C.C4.C69.C.C.C.C.C.C.C.C46.C3.C.C$51.C2.C15.C5.3C9.C2.C3.2C2.C4.C6.C6.2C42.6C.3C.C.C2.C2.C4.C.C4.C69.C.C.C.C.C.C.C.C46.C3.C.2C$50.C2.C15.C7.C4.C4.5C2.C.4C3.C.C5.C52.C2.C2.C2.C3.C2.C5.C.C4.C69.C.C.C.C.C.C.C.C46.C3.C2.C$49.C2.C15.C8.C3.C.C2.C.C.C2.C4.C4.C2.5C.C50.5C2.C2.4C.2C6.C2.2C2.C69.C.C.C.C.C.C.C.C46.C$48.C2.C15.C9.C.C.C.C.C5.2C6.C3.C8.C49.C.C.C2.C2.C5.C6.C.C3.C.C69.C.C.C.C.C.C.C.C46.C$47.C2.C15.C11.3C2.C.C14.C2.C8.C48.C5.C.C.3C3.C7.3C3.C.C69.C.C.C.C.C.C.C.C46.C$46.C2.C15.C11.C.C4.C16.C.C7.C56.3C.C3.C2.C6.C4.C.C69.C.C.C.C.C.C.C.C46.C3.C.2C$40.2C3.C2.C15.C12.C12.12C.C6.C56.C.C2.C2.C2.C.C5.C4.C.C69.C.C.C.C.C.C.C.C46.C3.C.C$.29C.10C.3C2.C15.C7.C5.C2.10C11.C.C6.C56.C3.C2.C2.C2.C5.C4.C.C69.C.C.C.C.C.C.C.C46.C3.C2.C$C29.C9.2C4.C16.C6.C.5C2.C21.C.C6.C56.4C.2C2.C2.3C3.3C3.C.C69.C.C.C.C.C.C.C.C46.C$.17C11.C15.C3.2C2.C.C2.2C3.C6.C9.3C4.3C7.C.2C2.C6.C4.3CAB42C10.C2.C3.C.C3.C.C3.C.C69.C.C.C.C.C.C.C.C46.C$18.C9.C15.C4.C.C.C.C.C4.C.C.3C.C12.C2.C3.9C2.C.C6.C.C.C47.C8.C2.C3.2C.2C.2C.2C3.C70.C.C.C.C.C.C.C.C46.C$.17C9.C15.C5.2C2.C.C2.C2.C3.2C.2C14.C.C10.C.4C7.C4.47C8.C.C.C2.C.3C.C.3C.C73.C.C.C.C.C.C.C.C46.C$C18.C.2C.3C15.C6.C.C.C.C3.C.C4.C.C.C14.C15.C8.C59.3C.C2.C5.C5.C73.C.C.C.C.C.C.C.C45.C$.20C2.C17.C7.2C3.C2.2C2.C4.3C2.C38.C60.C2.C3.C4.C4.C74.C.C.C.C.C.C.C.C44.C$19.C.4C15.C20.C5.C4.C37.5C57.C.C4.C2.3C2.C75.C.C.C.C.C.C.C.C43.C$23.C.C13.C21.C5.C5.C41.C26.22C9.C6.C.C.C.C76.C.C.C.C.C.C.C.C42.C$25.C13.C2.3C.2C2.2C3.C2.2C.C.3C.C.3C.C20.C19.C26.C22.C16.2C.2C77.C.C.C.C.C.C.C.C41.C$25.C13.C2.C3.C.C.C.C.C.C.C3.2C.2C.2C.2C40.C28.21C2.C10.5C.3C.26C51.C.C.C.C.C.C.C.C40.C$2.23C11.2C.C2.2C2.2C2.2C2.C.C.2C3.C.C3.C.C22.C18.C49.C2.C4.2C2.C36.C50.C.C.C.C.C.C.C.C39.C$.C33.2C.C.C.C3.C.C.C.C.C.C.C.C2.3C3.3C21.B.C17.C18.29C.C4.5C.2C3.34C51.C.C.C.C.C.C.C.C38.C$.C2.29C.C.2C2.C.5C2.2C2.C.C.2C.C3.C5.C22.A.C17.C17.C29.C9.2C4.C85.C.C.C.C.C.C.C.C37.C$.C.C29.C6.C.C21.C6.10C2.C10.C18.C18.17C11.C15.C3.2C2.C.C2.2C72.C.C.C.C.C.C.C.C36.C$.C2.17C11.C8.C22.C16.C32.C34.C9.C15.C4.C.C.C.C.C74.C.C.C.C.C.C.C.C35.C$.C19.C9.C.3C4.3C21.C15.C2.2C30.C16.17C9.C15.C5.2C2.C.C2.C73.C.C.C.C.C.C.C.C34.C$.C2.17C9.C5.C4.C22.C7.8C36.C14.C18.C.2C.3C15.C6.C.C.C.C3.C72.C.C.C.C.C.C.C.C33.C$.C.C18.C.2C.3C7.4C23.C6.C11.C.27C5.C14.20C2.C17.C7.2C3.C2.2C73.C.C.C.C.C.C.C.C32.C$.C2.20C2.C37.C7.13C27.C5.C31.C.4C15.C91.C.C.C.C.C.C.C.C31.C$.C20.C.4C4.19C13.C18.C.2C26.C5.C34.C.C13.C92.C.C.C.C.C.C.C.C30.C$2.19C5.C.C2.C19.C12.C22.2C25.C5.C35.C12.C3.3C.2C2.2C3.C2.2C72.C.C.C.C.C.C.C.C29.C$21.C6.C2.C2.5C.C.5C4.C13.C20.C2.C25.C5.C34.C11.C4.C3.C.C.C.C.C.C.C.C71.C.C.C.C.C.C.C.C28.C$2.19C5.C.C2.C.C5.3C5.C2.C15.C16.C.C3.C26.C5.C10.23C11.C5.2C2.2C2.2C2.C.C.2C72.C.C.C.C.C.C.C.C27.C$.C26.C2.C2.3C3.C.8C17.18C5.C26.C5.C8.C33.C4.C.C3.C.C.C.C.C.C.C.C71.C.C.C.C.C.C.C.C26.C$2.19C8.C.C5.C9.C35.C.C5.C26.C5.C7.C2.29C.C5.C.5C2.2C2.C.C.2C.C8.47C16.C.C.C.C.C.C.C.C25.C$21.C6.5C3.C6.2C2.C37.C6.C10.C15.C5.C6.C.C29.C6.C.C23.C.C47.C15.C.C.C.C.C.C.C.C24.C$4.17C8.C.C4.C5.C2.C.C36.C8.8C.12C6.C5.C5.C2.17C11.C8.C27.33CAB12C16.C.C.C.C.C.C2.C24.C$3.C24.2C.5C.C.C2.C3.C26.11C17.C.C10.C6.C5.C4.C19.C9.C.3C4.3C89.C.C.C.C.C.C26.C$4.17C6.C.3C6.6C2.C3.3C19.C28.C.C10.C7.C5.C3.C2.17C9.C5.C4.C21.C68.C.C.C.C.C.C25.C$21.C5.C9.C.C2.C2.3C.2C.2C19.C28.C12.C7.C5.C2.C.C18.C.2C.3C7.4C91.C.C.C.C.C.C24.C$22.C5.C8.C4.C3.C.C.C.C.2C.C13.C.C27.3C12.C7.C4.C2.C2.20C2.C36.C21.8C39.C.C.C.C.C.C23.C$22.C6.C8.4C3.2C.C.3C3.3C14.C28.C14.C7.C3.C2.C20.C.4C4.19C6.C4.B.C16.4C8.C38.C.C.C.C.C.C22.C$22.C7.C11.3C2.C3.C3.C.C.C.C3.4C.5C27.C15.C6.C3.C3.19C5.C.C2.C19.C10.A.C15.C6.2C4.C38.C.C.C.C.C.C21.C$22.C8.C14.3C3.C2.C4.3C.C4.C3.C28.C16.C5.C3.C22.C6.C2.C2.5C.C.5C4.C11.C16.C5.C2.C3.C38.C.C.C.C.C.C20.C$22.C9.8C7.C5.7C.C.C4.3C3.2C26.C16.C5.C3.C3.19C5.C.C2.C.C5.3C5.C2.C29.C6.2C5.C37.C.C.C.C.C.C19.C$22.C8.C8.C7.5C2.C3.C4.C4.C15.17C17.C5.C3.C2.C26.C2.C2.3C3.C.8C31.4C10.5C31.C2.C.C.C.C.C18.C$22.C7.C3.4C3.C17.C2.C.C5.9C5.C34.C5.C3.C3.19C8.C.C5.C9.C37.C14.C29.C3.C.C.C.C.C17.C$22.C6.3C.C4.C3.C17.6C13.38C2.C5.C3.C22.C6.5C3.C6.2C2.C37.C15.C3.3C7.15C4.C.C.C.C.C16.C$22.C7.C2.C3.C5.C18.C2.C.C5.C43.C.C5.C3.C3.19C8.C.C4.C5.C2.C.C36.C17.C.C3.7C18.C2.C.C.C.C15.C$22.C6.C.C.C3.C2.2C.C17.5C27.24C2.C5.C3.C2.C26.2C.5C.C.C2.C3.C26.11C19.C13.16C3.C.C.C.C14.C$22.C6.C.C2.C.C2.C2.C4.3C.2C7.C.C.C2.26C26.C5.C3.C3.19C6.C.3C6.6C2.C3.3C19.C43.C19.C.C.C.C13.C$22.C6.C.C2.C.C2.C.3C2.C3.C2.C6.C4.2C26.C25.C5.C3.C22.C5.C9.C.C2.C2.3C.2C.2C19.C41.C20.C.C.C.C12.C$22.C6.C.C2.C.C2.C2.C2.3C3.C2.C6.C4.C.C25.C24.C5.C3.C23.C5.C8.C4.C3.C.C.C.C.2C.C13.C.C3.C5.C5.C17.C7.C20.C.C.C.C11.C$22.C6.C.C2.C.C2.C2.C3.C5.C2.C.C4.C4.4C.C22.C23.C5.C4.C22.C6.C8.4C3.2C.C.3C3.3C14.C41.C20.C.C2.C11.C$22.C6.C.C2.C.C.C.6C.C5.C2.3C4.C4.C2.19C4.3C15.8C5.C5.C21.C7.C11.3C2.C3.C3.C.C.C.C3.10C40.C20.C.C13.C$23.C5.C.C2.C.C.C3.C2.C.C.3C.C.C.C.C.C2.C4.2C.C17.C2.C.C.3C11.C13.C5.C21.C8.C14.3C3.C2.C4.3C.C8.C2.C37.C21.C.C12.C$24.C4.C2.2C2.C2.2C3.3C.2C.2C2.C4.3C.C3.C7.14C3.C6.C9.C15.C4.C21.C9.8C7.C5.7C.C.C10.2C37.C22.C.C11.C$25.C2.3C5.C4.C3.C3.C.C2.6C.C.C3.C7.C17.C6.C8.C17.C.C.C21.C8.C8.C7.5C2.C3.C4.C48.C22.C.C10.C$26.C2.C.5C.4C.3C4.3C.C.C3.C4.C3.7C18.C6.C7.C17.5C22.C7.C3.4C3.C17.C2.C.C48.C22.C.C9.C$27.C.C20.C2.C5.C2.C.C10.C17.C3.3C7.C18.C2.C23.C6.3C.C4.C3.C17.6C46.2C22.C.C8.C$28.C.9C3.8C4.3C3.6C2.7C19.3C9.C19.10C17.C7.C2.C3.C5.C18.C2.C.C5.C34.4C24.C.C7.C$39.C.C15.C.C2.C2.C.C21.5C11.C21.C.C6.4C13.C6.C.C.C3.C2.2C.C17.5C42.C27.C.C6.C$33.6C3.15C2.C.5C.C12.9C15.C21.C13.4C9.C6.C.C2.C.C2.C2.C4.3C.2C7.C.C.C2.26C15.C28.C.6C$32.C26.C2.C.C2.C12.C22.C21.C18.C8.C6.C.C2.C.C2.C.3C2.C3.C2.C6.C4.2C26.C14.C$33.2C.2C.20C6.2C13.C21.C21.C20.C7.C6.C.C2.C.C2.C2.C2.3C3.C2.C6.C4.C.C25.C13.C$35.C2.C41.C20.C21.C22.C6.C6.C.C2.C.C2.C2.C3.C5.C2.C.C4.C4.4C.C22.C12.C$34.3C.C27.C13.C19.C8.14C23.C6.C6.C.C2.C.C.C.6C.C5.C2.3C4.C4.C2.19C4.3C11.C$35.C2.C41.C6.13C8.C38.C6.C5.C.C2.C.C.C3.C2.C.C.3C.C.C.C.C.C2.C4.2C.C17.C2.C.C.3C8.C$35.C2.C41.C5.C20.C40.2C5.C4.C2.2C2.C2.2C3.3C.2C.2C2.C4.3C.C3.C7.14C3.C6.C7.C$36.2C42.C4.C10.11C42.C6.C2.3C5.C4.C3.C3.C.C2.6C.C.C3.C7.C17.C6.C7.C$55.25C4.C4.7C53.C7.C2.C.5C.4C.3C4.3C.C.C3.C4.C3.7C4.11C3.C6.C7.C$54.C28.C4.C27.14C19.C8.C.C20.C2.C5.C2.C.C10.C2.C11.C2.C3.3C8.C$55.25C2.C5.C.26C14.C19.C8.C.9C3.8C4.3C3.6C2.7C2.C2.8C3.C2.3C4.8C$80.2C6.C.C40.C19.C18.C.C15.C.C2.C2.C.C8.C2.C8.C2.C.C6.C$80.C7.C.C41.2C17.C12.6C3.15C2.C.5C.C2.6C2.C2.8C2.C.C5.C$80.C7.C2.25C18.C17.C10.C26.C2.C.C2.C.C8.C.C10.C2.C3.C$55.25C8.C27.C18.9C8.C11.2C.2C.20C6.2C2.C7.C2.C10.C2.C2.C$54.C33.C2.25C28.C7.C13.C2.C31.7C3.C10.C2.C2.C$55.25C8.C.C54.2C5.C12.3C.C27.C13.C11.C.C.C$80.C7.C.C55.3C3.C13.C2.C6.35C3.9C2.C.C$80.C7.C.C57.C4.9C4.C2.C5.C37.C11.C.C$80.C7.C2.25C32.C13.C4.2C7.34C3.10C2.C.C$80.C7.C27.C31.C13.C47.C12.C.C.C$80.C7.C2.25C32.6C9.C32.14C4.9C2.C.C$80.C7.C.C62.C10.C8.2C49.C2.C$80.C7.C.C62.C11.C6.C2.C.C.45C3.C$80.C7.C.C62.C11.C5.C2.5C47.C$80.C7.C.C62.C12.5C3.C2.C10.38C$80.C7.C.C63.C19.9CBA3C$80.C7.C.C63.C20.C.C$80.C7.C.C64.20C$80.C7.C.C$80.C7.C.C$80.C7.C.C$80.C7.C.C$80.C7.C.C$37.43C8.C2.43C$36.C51.C45.C$37.43C8.C2.43C$80.C7.C.C$80.C7.C.C$80.C8.2C$80.C9.C$13.14CBAC2.3C7.3C7.3C5.C.3C7.3C5.C.3C5.C.3C7.3C7.3C7.3C$12.C17.3C.2C.2C.3C.2C.2C.3C.2C.2C.3C.2C.2C.3C.2C.2C.3C.2C.2C.3C.2C.2C.3C.2C.2C.3C.2C.2C.3C.2C.2C$13.17C2.C.C.C2.C2.C.C.C2.C2.C.C.C2.C2.C.C.C2.C2.C.C.C2.C2.C.C.C2.C2.C.C.C2.C2.C.C.C2.C2.C.C.C2.C2.C.C.C$32.3C.C.3C.3C.C.3C.3C.C.3C.3C.C.3C.3C.C.3C.3C.C.3C.3C.C.3C.3C.C.3C.3C.C.3C.3C.C.C$27.C5.C2.A2.C3.C2.C2.C3.C2.C2.C3.C2.C2.C3.C2.C2.C3.C2.C2.C3.C2.C2.C3.C2.C2.C3.C2.C2.C3.C2.C$33.C.B.C.C3.C.C.C.C3.C.C.C.C3.C.C.C.C3.B.C.C.C3.C.C.C.C3.C.C.C.C3.C.C.C.C3.C.C.C.C3.C.C.C$33.C.C.C.C3.C.C.C.C3.C.C.C.C3.C.C.C.C3.A.C.C.C3.C.C.C.C3.C.C.C.C3.C.C.C.C3.C.C.C.C3.C.C.C$34.C2.C.A4.C2.C.C4.C2.C.C4.C2.C.C4.C2.C.C4.C2.C.C4.C2.C.C4.C2.C.C4.C2.C.C4.C2.C.C$36.C2.B6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C$36.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C$36.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C6.C2.C$37.2C8.2C8.2C8.2C8.BA8.2C8.2C8.2C8.2C8.2C!
Code: Select all
/*
writetoWWC.js
I won't even put my name to this.
This is a poorly hacked together script to enter data into the Wireworld
Computer. Yeah.
*/
state=prompt("Enter data to input.");
words=state.split(' ');
for(ind=0;ind<64;ind++){
words[ind]=("0000000000000000" + parseInt(words[ind],16).toString(2)).substr(-16,16);
curcelx = 492-ind*6;
curcely = 404+ind*6;
words[ind]=words[ind].substr(15,1) + words[ind].substr(0,15);
//words[ind]=words[ind].substr(1,15) + words[ind].substr(0,1);
for(indc=1;indc<ind;indc++){
//words[ind]=words[ind].substr(15,1) + words[ind].substr(0,15);
words[ind]=words[ind].substr(1,15) + words[ind].substr(0,1);
}
if((ind>0 && ind<=54) || ind==59 || ind==60 || ind==62){ // simple registers
// why can't they all be like these :(
for(bat=0;bat<8;bat++){
if(words[ind].charAt(15-bat)=='1'){
putCell(curcelx+bat*6,curcely,1);
putCell(curcelx+bat*6+1,curcely,2);
} else {
putCell(curcelx+bat*6,curcely,3);
putCell(curcelx+bat*6+1,curcely,3);
}
}
if(words[ind].charAt(7)=='1'){
putCell(curcelx+45,curcely+4,1);
putCell(curcelx+44,curcely+5,2);
putCell(curcelx+43,curcely+5,2);
putCell(curcelx+42,curcely+5,2);
putCell(curcelx+41,curcely+5,1);
} else {
putCell(curcelx+45,curcely+4,3);
putCell(curcelx+44,curcely+5,3);
putCell(curcelx+43,curcely+5,3);
putCell(curcelx+42,curcely+5,3);
putCell(curcelx+41,curcely+5,3);
}
for(bat=0;bat<7;bat++){
if(words[ind].charAt(bat)=='1'){
putCell(curcelx+2+bat*6,curcely+3,2);
putCell(curcelx+2+bat*6+1,curcely+3,1);
} else {
putCell(curcelx+2+bat*6,curcely+3,3);
putCell(curcelx+2+bat*6+1,curcely+3,3);
}
}
} else if(ind==0){
for(bat=0;bat<7;bat++){
if(words[ind].charAt(15-bat)=='1'){
putCell(curcelx+bat*6,curcely,1);
putCell(curcelx+bat*6+1,curcely,2);
} else {
putCell(curcelx+bat*6,curcely,3);
putCell(curcelx+bat*6+1,curcely,3);
}
}
if(words[ind].charAt(7)=='1'){
putCell(curcelx+42,curcely-1,1);
putCell(curcelx+43,curcely-1,2);
} else {
putCell(curcelx+42,curcely-1,3);
putCell(curcelx+43,curcely-1,3);
}
if(words[ind].charAt(8)=='1'){
putCell(curcelx+42,curcely+3,1);
putCell(curcelx+43,curcely+3,1);
putCell(curcelx+44,curcely+3,1);
putCell(curcelx+43,curcely+2,2);
} else {
putCell(curcelx+42,curcely+3,3);
putCell(curcelx+43,curcely+3,3);
putCell(curcelx+44,curcely+3,3);
putCell(curcelx+43,curcely+2,3);
}
for(bat=0;bat<7;bat++){
if(words[ind].charAt(bat)=='1'){
putCell(curcelx+1+bat*6,curcely+2,2);
putCell(curcelx+1+bat*6+1,curcely+2,1);
} else {
putCell(curcelx+1+bat*6,curcely+2,3);
putCell(curcelx+1+bat*6+1,curcely+2,3);
}
}
} else if(ind==55 || ind==58){
for(bat=0;bat<8;bat++){
if(words[ind].charAt(15-bat)=='1'){
putCell(curcelx+bat*6,curcely,1);
putCell(curcelx+bat*6+1,curcely,2);
} else {
putCell(curcelx+bat*6,curcely,3);
putCell(curcelx+bat*6+1,curcely,3);
}
}
if(words[ind].charAt(7)=='1'){
if(ind==58){
putCell(curcelx+41,curcely+4,1);
}
putCell(curcelx+45,curcely+4,1);
putCell(curcelx+44,curcely+5,2);
putCell(curcelx+43,curcely+5,2);
putCell(curcelx+42,curcely+5,2);
putCell(curcelx+41,curcely+5,1);
} else {
if(ind==58){
putCell(curcelx+41,curcely+4,3);
}
putCell(curcelx+45,curcely+4,3);
putCell(curcelx+44,curcely+5,3);
putCell(curcelx+43,curcely+5,3);
putCell(curcelx+42,curcely+5,3);
putCell(curcelx+41,curcely+5,3);
}
for(bat=0;bat<7;bat++){
if(words[ind].charAt(bat)=='1'){
putCell(curcelx+3+bat*6,curcely+2,2);
putCell(curcelx+3+bat*6+1,curcely+2,1);
} else {
putCell(curcelx+3+bat*6,curcely+2,3);
putCell(curcelx+3+bat*6+1,curcely+2,3);
}
}
} else if(ind==56){
for(bat=0;bat<7;bat++){
if(words[ind].charAt(15-bat)=='1'){
putCell(curcelx+bat*6,curcely-2,1);
putCell(curcelx+bat*6+1,curcely-2,2);
} else {
putCell(curcelx+bat*6,curcely-2,3);
putCell(curcelx+bat*6+1,curcely-2,3);
}
}
if(words[ind].charAt(8)=='1'){
putCell(curcelx+42,curcely-2,1);
putCell(curcelx+42+1,curcely-1,2);
} else {
putCell(curcelx+42,curcely-2,3);
putCell(curcelx+42+1,curcely-1,3);
}
if(words[ind].charAt(7)=='1'){
putCell(curcelx+45,curcely+4,1);
putCell(curcelx+44,curcely+5,2);
putCell(curcelx+43,curcely+5,2);
putCell(curcelx+42,curcely+5,2);
putCell(curcelx+41,curcely+5,1);
} else {
putCell(curcelx+45,curcely+4,3);
putCell(curcelx+44,curcely+5,3);
putCell(curcelx+43,curcely+5,3);
putCell(curcelx+42,curcely+5,3);
putCell(curcelx+41,curcely+5,3);
}
for(bat=0;bat<7;bat++){
if(words[ind].charAt(bat)=='1'){
putCell(curcelx+3+bat*6,curcely,2);
putCell(curcelx+3+bat*6+1,curcely,1);
} else {
putCell(curcelx+3+bat*6,curcely,3);
putCell(curcelx+3+bat*6+1,curcely,3);
}
}
} else if(ind==57){
for(bat=0;bat<8;bat++){
if(words[ind].charAt(15-bat)=='1'){
putCell(curcelx+bat*6,curcely,1);
putCell(curcelx+bat*6+1,curcely,2);
} else {
putCell(curcelx+bat*6,curcely,3);
putCell(curcelx+bat*6+1,curcely,3);
}
}
if(words[ind].charAt(7)=='1'){
putCell(curcelx+45,curcely+4,1);
putCell(curcelx+44,curcely+5,2);
putCell(curcelx+43,curcely+5,2);
putCell(curcelx+42,curcely+5,2);
} else {
putCell(curcelx+45,curcely+4,3);
putCell(curcelx+44,curcely+5,3);
putCell(curcelx+43,curcely+5,3);
putCell(curcelx+42,curcely+5,3);
}
if(words[ind].charAt(7)=='1'){
putCell(curcelx+39,curcely+2,2);
putCell(curcelx+40,curcely+3,1);
} else {
putCell(curcelx+39,curcely+2,3);
putCell(curcelx+40,curcely+3,3);
}
for(bat=0;bat<6;bat++){
if(words[ind].charAt(bat)=='1'){
putCell(curcelx+3+bat*6,curcely+2,2);
putCell(curcelx+3+bat*6+1,curcely+2,1);
} else {
putCell(curcelx+3+bat*6,curcely+2,3);
putCell(curcelx+3+bat*6+1,curcely+2,3);
}
}
} else if(ind==61){
if(words[ind].charAt(15)=='1'){
putCell(curcelx,curcely+1,1);
putCell(curcelx+1,curcely+2,2);
} else {
putCell(curcelx,curcely+1,3);
putCell(curcelx+1,curcely+2,3);
}
for(bat=1;bat<8;bat++){
if(words[ind].charAt(15-bat)=='1'){
putCell(curcelx+bat*6,curcely,1);
putCell(curcelx+bat*6+1,curcely,2);
} else {
putCell(curcelx+bat*6,curcely,3);
putCell(curcelx+bat*6+1,curcely,3);
}
}
if(words[ind].charAt(7)=='1'){
putCell(curcelx+45,curcely+4,1);
putCell(curcelx+44,curcely+5,2);
putCell(curcelx+43,curcely+5,2);
putCell(curcelx+42,curcely+5,2);
putCell(curcelx+41,curcely+5,1);
} else {
putCell(curcelx+45,curcely+4,3);
putCell(curcelx+44,curcely+5,3);
putCell(curcelx+43,curcely+5,3);
putCell(curcelx+42,curcely+5,3);
putCell(curcelx+41,curcely+5,3);
}
for(bat=1;bat<7;bat++){
if(words[ind].charAt(bat)=='1'){
putCell(curcelx+2+bat*6,curcely+3,2);
putCell(curcelx+2+bat*6+1,curcely+3,1);
} else {
putCell(curcelx+2+bat*6,curcely+3,3);
putCell(curcelx+2+bat*6+1,curcely+3,3);
}
}
if(words[ind].charAt(0)=='1'){
putCell(curcelx+2,curcely+4,2);
putCell(curcelx+3,curcely+4,1);
} else {
putCell(curcelx+2,curcely+4,3);
putCell(curcelx+3,curcely+4,3);
}
} else if(ind==63){
if(words[ind].charAt(15)=='1'){
putCell(curcelx+7,curcely+4,1);
putCell(curcelx+8,curcely+4,2);
} else {
putCell(curcelx+7,curcely+4,3);
putCell(curcelx+8,curcely+4,3);
}
if(words[ind].charAt(14)=='1'){
putCell(curcelx+6,curcely,1);
putCell(curcelx+7,curcely-1,2);
} else {
putCell(curcelx+6,curcely,3);
putCell(curcelx+7,curcely-1,3);
}
for(bat=2;bat<8;bat++){
if(words[ind].charAt(15-bat)=='1'){
putCell(curcelx+bat*6,curcely,1);
putCell(curcelx+bat*6+1,curcely,2);
} else {
putCell(curcelx+bat*6,curcely,3);
putCell(curcelx+bat*6+1,curcely,3);
}
}
if(words[ind].charAt(7)=='1'){
putCell(curcelx+45,curcely+4,1);
putCell(curcelx+44,curcely+5,2);
putCell(curcelx+43,curcely+5,2);
putCell(curcelx+42,curcely+5,2);
putCell(curcelx+41,curcely+5,1);
} else {
putCell(curcelx+45,curcely+4,3);
putCell(curcelx+44,curcely+5,3);
putCell(curcelx+43,curcely+5,3);
putCell(curcelx+42,curcely+5,3);
putCell(curcelx+41,curcely+5,3);
}
for(bat=2;bat<7;bat++){
if(words[ind].charAt(bat)=='1'){
putCell(curcelx+2+bat*6,curcely+3,2);
putCell(curcelx+2+bat*6+1,curcely+3,1);
} else {
putCell(curcelx+2+bat*6,curcely+3,3);
putCell(curcelx+2+bat*6+1,curcely+3,3);
}
}
if(words[ind].charAt(1)=='1'){
putCell(curcelx+9,curcely+6,2);
putCell(curcelx+10,curcely+6,1);
} else {
putCell(curcelx+9,curcely+6,3);
putCell(curcelx+10,curcely+6,3);
}
if(words[ind].charAt(0)=='1'){
putCell(curcelx+2,curcely+3,2);
putCell(curcelx+2,curcely+4,2);
putCell(curcelx+2,curcely+5,2);
putCell(curcelx+2,curcely+6,2);
putCell(curcelx+3,curcely+7,2);
putCell(curcelx+4,curcely+8,1);
} else {
putCell(curcelx+2,curcely+3,3);
putCell(curcelx+2,curcely+4,3);
putCell(curcelx+2,curcely+5,3);
putCell(curcelx+2,curcely+6,3);
putCell(curcelx+3,curcely+7,3);
putCell(curcelx+4,curcely+8,3);
}
}
}Have you gotten it to work? No? Of course not, please explain your problems so I can fix them. Regardless, here's a description of the language itself.
The Language Itself
Programs consist mostly of a series of statements, separated by semicolons. Single-line comments can be created with the # character. A statement can be data, a label, or an operation.
Labels consist of simply an identifier, like "start", "a".
Data contains an integer literal, like "1". They can be formatted in base 16 by appending 'h' ("FFFEh"), or in binary with 'b' ("101b"). 'd' can be used for decimal, though it is redundant.
An operation consists of an operator and one to three operands separated by whitespace, like "1 + 2", "a ++", "print a".
Whitespace consists of spaces, newlines, tabs, and commas. It also does not matter where the operator goes, all that matters is what the operator is and what order its operands go in. "+ 1 2", "1 + 2", and "1 2 +" are all equivalent.
In order to retrieve the result of some operations, you will have to use predefined labels, such as r+ for the output of the + operator (you can also use r0,r1 ... r63 to refer to specific locations in memory). The following adds 2 to a:
Code: Select all
a + 2; # Perform addition.
a = r+; # Write result of addition into a.Code: Select all
a;0; # Defines a variable a, which has the initial value 0.Code: Select all
goto &start; # Return to the beginning of the program.With that in mind, here is a simple program:
Code: Select all
#
# inc.bwcsl
# blah 2018
#
# The first 'real' BWCSL program. It counts up in 5s, starting from 0.
#
start; # Label for entrypoint, used to initialise the PC.
print a; # Write a to display (as unsigned 16-bit integer).
a + 5; # Add 5 to a,
a = r+; # and move the result of addition into a.
jmp &start; # Loop.
a;0; # a is defined as 0. Note that labels and variables are the same
Code: Select all
#
# helloworld.bwcsl
# blah 2018
#
# Says hello. For optimal viewing, turn head upside down. You could rotate the
# pattern on your screen, but that's too easy.
#
start;
print 07734; # This value looks like 'hello' if you view it upside down.
loop;
mov r1,r1; # NOP instruction; jmp commands must actually go one address
# earlier than they are supposed to be used, so a loop with
# only jmp would not work.
jmp &loop;Code: Select all
a >= b; # Perform comparison
? &somewhere, &somewhere_else; # If a>=b, go somewhere. Otherwise, go somewhere_else.Code: Select all
#
# 21days.bwcsl
# blah 2018
#
# Displays the '21days' sequence, as I call it; counting up to a higher and
# higher point. The sequence goes like this:
# 1,1,2,1,2,3,1,2,3,4,1,2,3,4,5,1,2,3,4,5,6,1,2,3,4,5,6,7, etc.
#
a;1; # Value counting up.
b;2; # Point to count to.
start;
print a;
a ++;
a != b; # Note that there is no == operator.
? &start , &a_equal; # If a!=b, jump to start, else jump to a_equal.
a_equal; # If a has met b,
a = 1; # we start over
b ++; # and increment b to count higher next time.
goto &start; # Cool.Code: Select all
#
# fastinc.bwcsl
# blah 2018
#
# Optimised version of inc.bwcsl.
#
start;
print a;
%r60:5. # This time, we do not need to move the value 5 anywhere; he is
# already here.
r61 = a; # When read, r61 returns the values of r60 + r61.
a = r61; # So this statement adds r60 (5) to a.
jmp &start;
a;0;Code: Select all
#CONDITIONAL BRANCHES
? a,b,c (4) # If a is non-zero, jump to b. Else, jump to c.
mov a, r56;
mov b, r55;
mov r56, r63;
mov c, r57;
? a,b (4) # If a previously specified condition is met, jump to a. Else, b.
mov a,r55;
mov b,r57;
mov r56,r63;
mov r1,r1;
# CONDITIONALS
!= a,b (7) # Not equal to.
mov a, r53;
mov b, r54;
mov r54, r62;
mov r53, r54;
mov r62, r53;
mov r54, r62;
mov r62, r56;
>= a,b (8) # Greater than or equal to. Assumes most significant bit is 0.
mov b,r62;
mov 1,r60;
mov r62,r61;
mov r61,r61;
mov a,r60;
mov r61,r54;
mov 0111111111111111b,r53;
mov r53, r56;
# BITWISE OPERATIONS
mov a,*b (1) # For direct use of assembly.
mov a,b;
= *a,b (1) # Equivalent to mov with operands switched.
mov b,a;
&! a,b (2) # Bitwise a ANDNOT b.
mov a, r53;
mov b, r54;
#r54
& a,b (3) # Bitwise a AND b.
mov b, r62;
mov r62, r54;
mov a, r53;
#r54
| a,b (4) # Bitwise a OR b.
mov a, r62;
mov r62, r53;
mov b, r54;
mov r54, r62;
#r62
^ a,b (6) # Bitwise a XOR b. Thanks to whoever it was in the Conwaylife discord
# who helped me construct XOR with ANDNOTs, I don't remember who.
mov a, r53;
mov b, r54;
mov r54, r62;
mov r53, r54;
mov r62, r53;
mov r54, r62;
#r62
! a (1) # Bitwise NOT.
mov a, r62;
#r62
>> a (1) # Rotate right. Note that this is not a shift, as the symbol may imply.
mov a, r58;
#r58
<< a (1) # Rotate left. Also not a shift.
mov a, r59;
#r59
# ARITHMETIC OPERATIONS
+ a,b (2) # a plus b.
mov a, r60;
mov b, r61;
#r61
- a,b (5) # a minus b.
mov b,r62;
mov 1,r60;
mov r62,r61;
mov r61,r61;
mov a,r60;
#r61
++ *a (2) # Increment a.
mov a,r60;
mov 1,r61;
mov r61,a;
-- *a (3) # Decrement a.
mov a,r62;
mov FFFF,r60;
mov r61,a;
-. a (3) # Get negative value of a.
mov a,r62;
mov 1,r60;
mov r62,r61;
#r61
# MISC
goto a # Synonymous with jmp a.
jmp a (1) # Branch to a.
mov a, r63;
print a (1) # Write a to display.
mov a, r00;(EDIT: I forgot to mention, I think there's a bug with uppercase letters. Use lowercase ones for labels.)
That's The Language.
Now I want to see if anybody actually uses this. I'd be interested to see other peoples' BWCSL programs, so I encourage you to try implementing programs I haven't made. BWCSL also allows you to simply program in assembly if the operators confuse you. Maybe the people on the esoteric languages discord would enjoy this (though if they're not posting in this thread I don't really care).
I don't know if you could make a prime number generator small enough to fit in the 52 words of memory allocated for programs in the Wireworld Computer using these operators, but feel free to try implementing something more complex, like Skyrim.