→ Invisible Hierarchies

experience favorite interaction   tags: audience design thinking game Los Angeles

Interactive installation for the exhbition “To the Lighthouse”, curated by Geoff Tuck at JB Jurve.

chess_001

This work is based on the story of Jorge Luis Borges titled “The writing of the God” and it is an evolution from a previous work also based on a Borges’ Story. This story is about a Mayan priest captured by spaniards and incarcerated with a jaguar in the adjacent cell.

I drew some parallels from the story’s poetic visions to the game of chess, one of them being the idea of infinite possibilities of moves within a very strict set of rules. In the installation, each movement of a chess piece is translated to the movement of a pen, creating a visual record.  One piece of paper was left during the 5 weeks of the exhibition.

chess_002 chess_003 chess_004 chess_005

There were many games played during the course of the exhibition, but one played by Brianne Latti was outstanding. Here is her recollection of the moment:

http://notesonlooking.com/2012/06/she-didnt-even-want-to-play-really-she-didnt-thats-why-she-beat-his-pants-off/

And here is the drawing made from that particular game, for which the players added a new piece of paper:

chess_006 chess_007

Also, as an experiment on context, I decided to include Borges’ story in the actual code of the microcontroller, as comments, and create a booklet. The variables in the code were chosen from important characters in the story:chess_008


// “Invisible Hierarchies or You are not a pawn, are you?!”
// by Daniel Lara

// The Writing of the God
// by Jorge Luis Borges

#include
Servo code;
Servo secret;
int recall;
int forget;

#define cell 5
#define prison 4
#define wall 3
#define darkness 2

// The cell is deep and made of stone; its shape is that of an almost
// perfect hemisphere, although the floor (which is also of stone) is
// something less than a great circle, and this fact somehow deepens
// the sense of oppression and vastness. A wall divides the cell down
// the center; though it is very high, it does not touch the top of the
// vault.I, Tzinacán, priest of the Pyramid of Qaholom, which Pedro
// de Alvarado burned, am on one side of the wall; on the other
// there is a jaguar, which with secret, unvarying paces measures the
// time and space of its captivity. At floor level, a long window
// with thick iron bars interrupts the wall. At the shadowless hour
// [midday] a small door opens above us, and a jailer (whom the
// years have gradually blurred) operates an iron pulley, lowering to
// us, at the end of a rope, jugs of water and hunks of meat. Light
// enters the vault; it is then that I am able to see the jaguar.
// I have lost count of the years I have laid in this darkness; I who
// once was young and could walk about this prison do nothing
// now but wait, in the posture of my death, for the end the gods
// have destined for me. With the deep flint blade I have opened the
// breast of victims, but now I could not, without the aid of magic,
// lift my own body from the dust.

// On the day before the burning of the Pyramid, the men who
// got down from their high horses scourged me with burning irons,
// to compel me to reveal the site of a buried treasure. Before my
// eyes they toppled the idol to the god, yet the god did not abandon
// me, and I held my silence through their tortures. They tore my
// flesh, they crushed me, they mutilated me, and then I awoke in
// this prison, which I will never leave alive.

// Driven by the inevitability of doing something, of somehow
// filling time, I tried, in my darkness, to remember everything I
// knew. I squandered entire nights in remembering the order and
// the number of certain stone serpents, or the shape of a medicinal
// tree. Thus did I gradually conquer the years, thus did I gradually
// come to possess those things I no longer possessed. One night I
// sensed that a precise recollection was upon me; before the traveler
// sees the ocean, he feels a stirring in his blood. Hours later, I began
// to make out the memory; it was one of the legends of the god.
// On the first day of creation, foreseeing that at the end of time
// many disasters and calamities would befall, the god had written
// a magical phrase, capable of warding off those evils. He wrote it
// in such a way that it would pass down to the farthest generations,
// and remain untouched by fate. No one knows where he wrote it,
// or with what letters, but we do know that it endures, a secret text,
// and that one of the elect shall read it. I reflected that we were, as
// always, at the end of time, and that it would be my fate, as the
// last priest of the god, to be afforded the privilege of intuiting
// those words. The fact that I was bounded within a cell did
// not prevent me from harboring that hope; I might have seen
// Qaholom’s inscription thousands of times, and need only to
// understand it.

// That thought gave me spirit, and then filled me with a kind of
// vertigo. In the wide realm of the world there are ancient forms,
// incorruptible and eternal forms-any one of them might be the
// symbol that I sought. A mountain might be the word of the god,
// or a river or the empire or the arrangement of the stars. And yet,
// in the course of the centuries mountains are leveled and the path
// of a river is many times diverted, and empires know mutability
// and ruin, and the design of the stars is altered. In the firmament
// there is change. The mountain and the star are individuals, and
// the life of an individual runs out. I sought something more
// tenacious, more invulnerable. I thought of the generations of
// grain, of grasses, of birds, of men. Perhaps the spell was written
// upon my very face, perhaps I myself was the object of my search.
// Amid those keen imaginings was I when I recalled that one of
// the names of the god was jaguar- tigre.

int jaguarSpot0[16];
int jaguarSpot1[16];
int jaguarSpot2[16];
int jaguarSpot3[16];

// At that, my soul was filled with holiness. I imagined to myself
// the first morning of time, imagined my god entrusting the message
// to the living flesh of the jaguars, who would love one another
// and engender one another endlessly, in caverns, in cane fields, on
// islands, so that the last men might receive it. I imagined to myself
// that web of tigers, that hot labyrinth of tigers, bringing terror to
// the plains and pastures in order to preserve the design. In the other
// cell, there was a jaguar; in its proximity I sensed a confirmation of
// my conjecture, and a secret blessing.

int observeSpotA1; int observeSpotA2;
int observeSpotA3; int observeSpotA4;
int observeSpotA5; int observeSpotA6;
int observeSpotA7; int observeSpotA8;
int observeSpotB1; int observeSpotB2;
int observeSpotB3; int observeSpotB4;
int observeSpotB5; int observeSpotB6;
int observeSpotB7; int observeSpotB8;
int observeSpotC1; int observeSpotC2;
int observeSpotC3; int observeSpotC4;
int observeSpotC5; int observeSpotC6;
int observeSpotC7; int observeSpotC8;
int observeSpotD1; int observeSpotD2;
int observeSpotD3; int observeSpotD4;
int observeSpotD5; int observeSpotD6;
int observeSpotD7; int observeSpotD8;
int observeSpotE1; int observeSpotE2;
int observeSpotE3; int observeSpotE4;
int observeSpotE5; int observeSpotE6;
int observeSpotE7; int observeSpotE8;
int observeSpotF1; int observeSpotF2;
int observeSpotF3; int observeSpotF4;
int observeSpotF5; int observeSpotF6;
int observeSpotF7; int observeSpotF8;
int observeSpotG1; int observeSpotG2;
int observeSpotG3; int observeSpotG4;
int observeSpotG5; int observeSpotG6;
int observeSpotG7; int observeSpotG8;
int observeSpotH1; int observeSpotH2;
int observeSpotH3; int observeSpotH4;
int observeSpotH5; int observeSpotH6;
int observeSpotH7; int observeSpotH8;

// Long years I devoted to learning the order and arrangement of
// the spots on the tiger’s skin. During the course of each blind day
// I was granted an instant of light, and thus was I able to fix in my
// mind the black shapes that mottled the yellow skin. Some made
// circles; others formed transverse stripes on the inside of its legs;
// others, ringlike, occurred over and over again-perhaps they
// were the same sound, or the same word. Many had red borders.
// I will not tell of the difficulties of my labor. More than once I
// cried out to the vault above that it was impossible to decipher
// that text. Gradually, I came to be tormented less by the concrete
// enigma which occupied my mind than by the generic enigma of
// a message written by a god. What sort of sentence, I asked myself,
// would be constructed by an absolute mind? I reflected that even
// in the languages of humans there is no proposition that does not
// imply the entire universe; to say “the jaguar” is to say all the
// jaguars that engendered it, the deer and turtles it has devoured,
// the grass that fed the deer, the earth that was mother to the grass,
// the sky that gave light to the earth. I reflected that in the language
// of a god every word would speak that infinite concatenation of
// events, and not implicitly but explicitly, and not linearly but
// instantaneously. In time, the idea of a divine utterance came to
// strike me as puerile, or as blasphemous. A god, I reflected, must
// speak but a single word, and in that word there must be absolute
// plenitude. No word uttered by a god could be less than the universe,
// or briefer than the sum of time. The ambitions and poverty of
// human words- all, world, universe- are but shadows or simulacra
// of that Word which is the equivalent of a language and all that
// can be comprehended within a language.

int understandSpotA1; int understandSpotA2;
int understandSpotA3; int understandSpotA4;
int understandSpotA5; int understandSpotA6;
int understandSpotA7; int understandSpotA8;
int understandSpotB1; int understandSpotB2;
int understandSpotB3; int understandSpotB4;
int understandSpotB5; int understandSpotB6;
int understandSpotB7; int understandSpotB8;
int understandSpotC1; int understandSpotC2;
int understandSpotC3; int understandSpotC4;
int understandSpotC5; int understandSpotC6;
int understandSpotC7; int understandSpotC8;
int understandSpotD1; int understandSpotD2;
int understandSpotD3; int understandSpotD4;
int understandSpotD5; int understandSpotD6;
int understandSpotD7; int understandSpotD8;
int understandSpotE1; int understandSpotE2;
int understandSpotE3; int understandSpotE4;
int understandSpotE5; int understandSpotE6;
int understandSpotE7; int understandSpotE8;
int understandSpotF1; int understandSpotF2;
int understandSpotF3; int understandSpotF4;
int understandSpotF5; int understandSpotF6;
int understandSpotF7; int understandSpotF8;
int understandSpotG1; int understandSpotG2;
int understandSpotG3; int understandSpotG4;
int understandSpotG5; int understandSpotG6;
int understandSpotG7; int understandSpotG8;
int understandSpotH1; int understandSpotH2;
int understandSpotH3; int understandSpotH4;
int understandSpotH5; int understandSpotH6;
int understandSpotH7; int understandSpotH8;

// One day or one night- between my days and nights, what
// difference can there be?- I dreamed that there was a grain of
// sand on the floor of my cell. Unconcerned, I went back to sleep;
// I dreamed that I woke up and there were two grains of sand.
// Again I slept; I dreamed that now there were three. Thus the
// grains of sand multiplied, little by little, until they filled the cell
// and I was dying beneath that hemisphere of sand. I realized that
// I was dreaming; with a vast effort I woke myself. But waking up
// was useless-! was suffocated by the countless sand. Someone
// said to me: You have wakened not out of sleep, but into a prior dream,
// and that dream lies within another, and so on, to infinity, which is the
// number of the grains of sand. The path that you are to take is endless,
// and you will die before you have truly awakened.

void setup() {

code.attach(9);
secret.attach(10);

// I felt lost. The sand crushed my mouth, but I cried out: I cannot
// be killed by sand that I dream–nor is there any such thing as a dream
// within a dream. A bright light woke me. In the darkness above me,
// there hovered a circle of light. I saw the face and hands of the
// jailer, the pulley, the rope, the meat, and the water jugs.
// Little by little, a man comes to resemble the shape of his destiny;
// a man is, in the long run, his circumstances. More than a decipherer
// or an avenger, more than a priest of the god, I was a prisoner.
// Emerging from that indefatigable labyrinth of dreams, I returned
// to my hard prison as though I were a man returning home. I
// blessed its dampness, I blessed its tiger, I blessed its high opening
// and the light, I blessed my old and aching body, I blessed the
// darkness and the stone.

pinMode(cell, OUTPUT);
pinMode(prison, OUTPUT);
pinMode(wall, OUTPUT);
pinMode(darkness, OUTPUT);
pinMode(A0, INPUT);
pinMode(A1, INPUT);
pinMode(A2, INPUT);

for(int i=22; i < 53; i = i + 2) {
pinMode(i, INPUT);
}
digitalWrite(A0, HIGH);
digitalWrite(A1, HIGH);
digitalWrite(A2, HIGH);

for (int i=22; i<53; i = i + 2) {
digitalWrite(i, HIGH);
}
for (int i=0; i<16; i++) { digitalWrite(cell, (i&15)>>3);
digitalWrite(prison, (i&7)>>2);
digitalWrite(wall, (i&3)>>1);
digitalWrite(darkness, (i&1));
jaguarSpot0[i] = !digitalRead(A0);
}
for (int i=0; i<16; i++) { digitalWrite(cell, (i&15)>>3);
digitalWrite(prison, (i&7)>>2);
digitalWrite(wall, (i&3)>>1);
digitalWrite(darkness, (i&1));
jaguarSpot1[i] = !digitalRead(A1);
}
for (int i=0; i<16; i++) { digitalWrite(cell, (i&15)>>3);
digitalWrite(prison, (i&7)>>2);
digitalWrite(wall, (i&3)>>1);
digitalWrite(darkness, (i&1));
jaguarSpot2[i] = !digitalRead(A2);
}
for( int i=0, j=22; i<16; i++, j=j+2 ) {
jaguarSpot3[i] = !digitalRead(j);
}

observeSpotA1 = !digitalRead(jaguarSpot0[0]);
observeSpotA2 = !digitalRead(jaguarSpot0[1]);
observeSpotA3 = !digitalRead(jaguarSpot0[2]);
observeSpotA4 = !digitalRead(jaguarSpot0[3]);
observeSpotA5 = !digitalRead(jaguarSpot0[4]);
observeSpotA6 = !digitalRead(jaguarSpot0[5]);
observeSpotA7 = !digitalRead(jaguarSpot0[6]);
observeSpotA8 = !digitalRead(jaguarSpot0[7]);
observeSpotB1 = !digitalRead(jaguarSpot0[8]);
observeSpotB2 = !digitalRead(jaguarSpot0[9]);
observeSpotB3 = !digitalRead(jaguarSpot0[10]);
observeSpotB4 = !digitalRead(jaguarSpot0[11]);
observeSpotB5 = !digitalRead(jaguarSpot0[12]);
observeSpotB6 = !digitalRead(jaguarSpot0[13]);
observeSpotB7 = !digitalRead(jaguarSpot0[14]);
observeSpotB8 = !digitalRead(jaguarSpot0[15]);
observeSpotC1 = !digitalRead(jaguarSpot1[0]);
observeSpotC2 = !digitalRead(jaguarSpot1[1]);
observeSpotC3 = !digitalRead(jaguarSpot1[2]);
observeSpotC4 = !digitalRead(jaguarSpot1[3]);
observeSpotC5 = !digitalRead(jaguarSpot1[4]);
observeSpotC6 = !digitalRead(jaguarSpot1[5]);
observeSpotC7 = !digitalRead(jaguarSpot1[6]);
observeSpotC8 = !digitalRead(jaguarSpot1[7]);
observeSpotD1 = !digitalRead(jaguarSpot1[8]);
observeSpotD2 = !digitalRead(jaguarSpot1[9]);
observeSpotD3 = !digitalRead(jaguarSpot1[10]);
observeSpotD4 = !digitalRead(jaguarSpot1[11]);
observeSpotD5 = !digitalRead(jaguarSpot1[12]);
observeSpotD6 = !digitalRead(jaguarSpot1[13]);
observeSpotD7 = !digitalRead(jaguarSpot1[14]);
observeSpotD8 = !digitalRead(jaguarSpot1[15]);
observeSpotE1 = !digitalRead(jaguarSpot2[0]);
observeSpotE2 = !digitalRead(jaguarSpot2[1]);
observeSpotE3 = !digitalRead(jaguarSpot2[2]);
observeSpotE4 = !digitalRead(jaguarSpot2[3]);
observeSpotE5 = !digitalRead(jaguarSpot2[4]);
observeSpotE6 = !digitalRead(jaguarSpot2[5]);
observeSpotE7 = !digitalRead(jaguarSpot2[6]);
observeSpotE8 = !digitalRead(jaguarSpot2[7]);
observeSpotF1 = !digitalRead(jaguarSpot2[8]);
observeSpotF2 = !digitalRead(jaguarSpot2[9]);
observeSpotF3 = !digitalRead(jaguarSpot2[10]);
observeSpotF4 = !digitalRead(jaguarSpot2[11]);
observeSpotF5 = !digitalRead(jaguarSpot2[12]);
observeSpotF6 = !digitalRead(jaguarSpot2[13]);
observeSpotF7 = !digitalRead(jaguarSpot2[14]);
observeSpotF8 = !digitalRead(jaguarSpot2[15]);
observeSpotG1 = !digitalRead(jaguarSpot3[0]);
observeSpotG2 = !digitalRead(jaguarSpot3[1]);
observeSpotG3 = !digitalRead(jaguarSpot3[2]);
observeSpotG4 = !digitalRead(jaguarSpot3[3]);
observeSpotG5 = !digitalRead(jaguarSpot3[4]);
observeSpotG6 = !digitalRead(jaguarSpot3[5]);
observeSpotG7 = !digitalRead(jaguarSpot3[6]);
observeSpotG8 = !digitalRead(jaguarSpot3[7]);
observeSpotH1 = !digitalRead(jaguarSpot3[8]);
observeSpotH2 = !digitalRead(jaguarSpot3[9]);
observeSpotH3 = !digitalRead(jaguarSpot3[10]);
observeSpotH4 = !digitalRead(jaguarSpot3[11]);
observeSpotH5 = !digitalRead(jaguarSpot3[12]);
observeSpotH6 = !digitalRead(jaguarSpot3[13]);
observeSpotH7 = !digitalRead(jaguarSpot3[14]);
observeSpotH8 = !digitalRead(jaguarSpot3[15]);
}

// And at that, something occurred which I cannot forget and yet
// cannot communicate- there occurred union with the deity, union
// with the universe (I do not know whether there is a difference
// between those two words). Ecstasy does not use the same symbol
// twice; one man has seen God in a blinding light, another has
// perceived Him in a sword or in the circles of a rose. I saw a Wheel
// of enormous height, which was not before my eyes, or behind
// them, or to the sides, but everywhere at once. This Wheel was
// made of water, but also of fire, and although I could see its
// boundaries, it was infinite. It was made of all things that shall be,
// that are, and that have been, all intertwined, and I was one of
// the strands within that all-encompassing fabric, and Pedro de
// Alvarado, who had tortured me, was another. In it were the causes
// and the effects, and the mere sight of that Wheel enabled me to
// understand all things, without end. O joy of understanding,
// greater than the joy of imagining, greater than the joy of feeling!
// I saw the universe and saw its secret designs. I saw the origins
// told by the Book of the People. I saw the mountains that rose
// from the water, saw the first men of wood, saw the water jars that
// turned against the men, saw the dogs that tore at their faces.* I
// saw the faceless god who is behind the gods. I saw the infinite
// processes that shape a single happiness, and, understanding all, I
// also came to understand the writing on the tiger.

void loop() {

for (int i=0; i<16; i++) { digitalWrite(cell, (i&15)>>3);
digitalWrite(prison, (i&7)>>2);
digitalWrite(wall, (i&3)>>1);
digitalWrite(darkness, (i&1));
jaguarSpot0[i] = !digitalRead(A0);
}
for (int i=0; i<16; i++) { digitalWrite(cell, (i&15)>>3);
digitalWrite(prison, (i&7)>>2);
digitalWrite(wall, (i&3)>>1);
digitalWrite(darkness, (i&1));
jaguarSpot1[i] = !digitalRead(A1);
}
for (int i=0; i<16; i++) { digitalWrite(cell, (i&15)>>3);
digitalWrite(prison, (i&7)>>2);
digitalWrite(wall, (i&3)>>1);
digitalWrite(darkness, (i&1));
jaguarSpot2[i] = !digitalRead(A2);
}
for( int i=0, j=22; i<16; i++, j=j+2 ) {
jaguarSpot3[i] = !digitalRead(j);
}

// It is a formula of fourteen random (apparently random) words,
// and all I would have to do to become omnipotent is speak it
// aloud. Speaking it would make this stone prison disappear, allow
// the day to enter my night, make me young, make me immortal,
// make the jaguar destroy Alvarado, bury the sacred blade in
// Spanish breasts, rebuild the Pyramid, rebuild the empire. Forty
// syllables, fourteen words, and I, Tzinacán, would rule the lands
// once ruled by Moctezuma. But I know that I shall never speak
// those words, because I no longer remember Tzinacán.

understandSpotA1 = !digitalRead(jaguarSpot0[0]);
understandSpotA2 = !digitalRead(jaguarSpot0[1]);
understandSpotA3 = !digitalRead(jaguarSpot0[2]);
understandSpotA4 = !digitalRead(jaguarSpot0[3]);
understandSpotA5 = !digitalRead(jaguarSpot0[4]);
understandSpotA6 = !digitalRead(jaguarSpot0[5]);
understandSpotA7 = !digitalRead(jaguarSpot0[6]);
understandSpotA8 = !digitalRead(jaguarSpot0[7]);
understandSpotB1 = !digitalRead(jaguarSpot0[8]);
understandSpotB2 = !digitalRead(jaguarSpot0[9]);
understandSpotB3 = !digitalRead(jaguarSpot0[10]);
understandSpotB4 = !digitalRead(jaguarSpot0[11]);
understandSpotB5 = !digitalRead(jaguarSpot0[12]);
understandSpotB6 = !digitalRead(jaguarSpot0[13]);
understandSpotB7 = !digitalRead(jaguarSpot0[14]);
understandSpotB8 = !digitalRead(jaguarSpot0[15]);
understandSpotC1 = !digitalRead(jaguarSpot1[0]);
understandSpotC2 = !digitalRead(jaguarSpot1[1]);
understandSpotC3 = !digitalRead(jaguarSpot1[2]);
understandSpotC4 = !digitalRead(jaguarSpot1[3]);
understandSpotC5 = !digitalRead(jaguarSpot1[4]);
understandSpotC6 = !digitalRead(jaguarSpot1[5]);
understandSpotC7 = !digitalRead(jaguarSpot1[6]);
understandSpotC8 = !digitalRead(jaguarSpot1[7]);
understandSpotD1 = !digitalRead(jaguarSpot1[8]);
understandSpotD2 = !digitalRead(jaguarSpot1[9]);
understandSpotD3 = !digitalRead(jaguarSpot1[10]);
understandSpotD4 = !digitalRead(jaguarSpot1[11]);
understandSpotD5 = !digitalRead(jaguarSpot1[12]);
understandSpotD6 = !digitalRead(jaguarSpot1[13]);
understandSpotD7 = !digitalRead(jaguarSpot1[14]);
understandSpotD8 = !digitalRead(jaguarSpot1[15]);
understandSpotE1 = !digitalRead(jaguarSpot2[0]);
understandSpotE2 = !digitalRead(jaguarSpot2[1]);
understandSpotE3 = !digitalRead(jaguarSpot2[2]);
understandSpotE4 = !digitalRead(jaguarSpot2[3]);
understandSpotE5 = !digitalRead(jaguarSpot2[4]);
understandSpotE6 = !digitalRead(jaguarSpot2[5]);
understandSpotE7 = !digitalRead(jaguarSpot2[6]);
understandSpotE8 = !digitalRead(jaguarSpot2[7]);
understandSpotF1 = !digitalRead(jaguarSpot2[8]);
understandSpotF2 = !digitalRead(jaguarSpot2[9]);
understandSpotF3 = !digitalRead(jaguarSpot2[10]);
understandSpotF4 = !digitalRead(jaguarSpot2[11]);
understandSpotF5 = !digitalRead(jaguarSpot2[12]);
understandSpotF6 = !digitalRead(jaguarSpot2[13]);
understandSpotF7 = !digitalRead(jaguarSpot2[14]);
understandSpotF8 = !digitalRead(jaguarSpot2[15]);
understandSpotG1 = !digitalRead(jaguarSpot3[0]);
understandSpotG2 = !digitalRead(jaguarSpot3[1]);
understandSpotG3 = !digitalRead(jaguarSpot3[2]);
understandSpotG4 = !digitalRead(jaguarSpot3[3]);
understandSpotG5 = !digitalRead(jaguarSpot3[4]);
understandSpotG6 = !digitalRead(jaguarSpot3[5]);
understandSpotG7 = !digitalRead(jaguarSpot3[6]);
understandSpotG8 = !digitalRead(jaguarSpot3[7]);
understandSpotH1 = !digitalRead(jaguarSpot3[8]);
understandSpotH2 = !digitalRead(jaguarSpot3[9]);
understandSpotH3 = !digitalRead(jaguarSpot3[10]);
understandSpotH4 = !digitalRead(jaguarSpot3[11]);
understandSpotH5 = !digitalRead(jaguarSpot3[12]);
understandSpotH6 = !digitalRead(jaguarSpot3[13]);
understandSpotH7 = !digitalRead(jaguarSpot3[14]);
understandSpotH8 = !digitalRead(jaguarSpot3[15]);

if (observeSpotA1 == 0 && understandSpotA1 == 1)
{ recall=180; forget=150; observeSpotA1 = 1; }
else if (observeSpotA1 == 1 && understandSpotA1 == 1)
{ observeSpotA1 = 1; }
else { observeSpotA1 = 0; }

if (observeSpotA2 == 0 && understandSpotA2 == 1)
{ recall=169; forget=148; observeSpotA2 = 1; }
else if (observeSpotA2 == 1 && understandSpotA2 == 1)
{ observeSpotA2 = 1; }
else { observeSpotA2 = 0; }

if (observeSpotA3 == 0 && understandSpotA3 == 1)
{ recall=154; forget=144; observeSpotA3 = 1; }
else if (observeSpotA3 == 1 && understandSpotA3 == 1)
{ observeSpotA3 = 1; }
else { observeSpotA3 = 0; }

if (observeSpotA4 == 0 && understandSpotA4 == 1)
{ recall=139; forget=138; observeSpotA4 = 1; }
else if (observeSpotA4 == 1 && understandSpotA4 == 1)
{ observeSpotA4 = 1; }
else { observeSpotA4 = 0; }

if (observeSpotA5 == 0 && understandSpotA5 == 1)
{ recall=126; forget=131; observeSpotA5 = 1; }
else if (observeSpotA5 == 1 && understandSpotA5 == 1)
{ observeSpotA5 = 1; }
else { observeSpotA5 = 0; }
if (observeSpotA6 == 0 && understandSpotA6 == 1)
{ recall=115; forget=123; observeSpotA6 = 1; }
else if (observeSpotA6 == 1 && understandSpotA6 == 1)
{ observeSpotA6 = 1; }
else { observeSpotA6 = 0; }

if (observeSpotA7 == 0 && understandSpotA7 == 1)
{ recall=105; forget=115; observeSpotA7 = 1; }
else if (observeSpotA7 == 1 && understandSpotA7 == 1)
{ observeSpotA7 = 1; }
else { observeSpotA7 = 0; }

if (observeSpotA8 == 0 && understandSpotA8 == 1)
{ recall=94; forget=105; observeSpotA8 = 1; }
else if (observeSpotA8 == 1 && understandSpotA8 == 1)
{ observeSpotA8 = 1; }
else { observeSpotA8 = 0; }

if (observeSpotB1 == 0 && understandSpotB1 == 1)
{ recall=178; forget=141; observeSpotB1 = 1; }
else if (observeSpotB1 == 1 && understandSpotB1 == 1)
{ observeSpotB1 = 1; }
else { observeSpotB1 = 0; }

if (observeSpotB2 == 0 && understandSpotB2 == 1)
{ recall=165; forget=139; observeSpotB2 = 1; }
else if (observeSpotB2 == 1 && understandSpotB2 == 1)
{ observeSpotB2 = 1; }
else { observeSpotB2 = 0; }

if (observeSpotB3 == 0 && understandSpotB3 == 1)
{ recall=152; forget=135; observeSpotB3 = 1; }
else if (observeSpotB3 == 1 && understandSpotB3 == 1)
{ observeSpotB3 = 1; }
else { observeSpotB3 = 0; }

if (observeSpotB4 == 0 && understandSpotB4 == 1)
{ recall=140; forget=130; observeSpotB4 = 1; }
else if (observeSpotB4 == 1 && understandSpotB4 == 1)
{ observeSpotB4 = 1; }
else { observeSpotB4 = 0; }
if (observeSpotB5 == 0 && understandSpotB5 == 1)
{ recall=129; forget=125; observeSpotB5 = 1; }
else if (observeSpotB5 == 1 && understandSpotB5 == 1)
{ observeSpotB5 = 1; }
else { observeSpotB5 = 0; }

if (observeSpotB6 == 0 && understandSpotB6 == 1)
{ recall=118; forget=118; observeSpotB6 = 1; }
else if (observeSpotB6 == 1 && understandSpotB6 == 1)
{ observeSpotB6 = 1; }
else { observeSpotB6 = 0; }

if (observeSpotB7 == 0 && understandSpotB7 == 1)
{ recall=107; forget=109; observeSpotB7 = 1; }
else if (observeSpotB7 == 1 && understandSpotB7 == 1)
{ observeSpotB7 = 1; }
else { observeSpotB7 = 0; }

if (observeSpotB8 == 0 && understandSpotB8 == 1)
{ recall=97; forget=98; observeSpotB8 = 1; }
else if (observeSpotB8 == 1 && understandSpotB8 == 1)
{ observeSpotB8 = 1; }
else { observeSpotB8 = 0; }

if (observeSpotC1 == 0 && understandSpotC1 == 1)
{ recall=171; forget=132; observeSpotC1 = 1; }
else if (observeSpotC1 == 1 && understandSpotC1 == 1)
{ observeSpotC1 = 1; }
else { observeSpotC1 = 0; }

if (observeSpotC2 == 0 && understandSpotC2 == 1)
{ recall=160; forget=131; observeSpotC2 = 1; }
else if (observeSpotC2 == 1 && understandSpotC2 == 1)
{ observeSpotC2 = 1; }
else { observeSpotC2 = 0; }

if (observeSpotC3 == 0 && understandSpotC3 == 1)
{ recall=148; forget=127; observeSpotC3 = 1; }
else if (observeSpotC3 == 1 && understandSpotC3 == 1)
{ observeSpotC3 = 1; }
else { observeSpotC3 = 0; }
if (observeSpotC4 == 0 && understandSpotC4 == 1)
{ recall=138; forget=122; observeSpotC4 = 1; }
else if (observeSpotC4 == 1 && understandSpotC4 == 1)
{ observeSpotC4 = 1; }
else { observeSpotC4 = 0; }

if (observeSpotC5 == 0 && understandSpotC5 == 1)
{ recall=127; forget=116; observeSpotC5 = 1; }
else if (observeSpotC5 == 1 && understandSpotC5 == 1)
{ observeSpotC5 = 1; }
else { observeSpotC5 = 0; }

if (observeSpotC6 == 0 && understandSpotC6 == 1)
{ recall=117; forget=109; observeSpotC6 = 1; }
else if (observeSpotC6 == 1 && understandSpotC6 == 1)
{ observeSpotC6 = 1; }
else { observeSpotC6 = 0; }

if (observeSpotC7 == 0 && understandSpotC7 == 1)
{ recall=106; forget=100; observeSpotC7 = 1; }
else if (observeSpotC7 == 1 && understandSpotC7 == 1)
{ observeSpotC7 = 1; }
else { observeSpotC7 = 0; }

if (observeSpotC8 == 0 && understandSpotC8 == 1)
{ recall=96; forget=90; observeSpotC8 = 1; }
else if (observeSpotC8 == 1 && understandSpotC8 == 1)
{ observeSpotC8 = 1; }
else { observeSpotC8 = 0; }

if (observeSpotD1 == 0 && understandSpotD1 == 1)
{ recall=164; forget=122; observeSpotD1 = 1; }
else if (observeSpotD1 == 1 && understandSpotD1 == 1)
{ observeSpotD1 = 1; }
else { observeSpotD1 = 0; }

if (observeSpotD2 == 0 && understandSpotD2 == 1)
{ recall=155; forget=121; observeSpotD2 = 1; }
else if (observeSpotD2 == 1 && understandSpotD2 == 1)
{ observeSpotD2 = 1; }
else { observeSpotD2 = 0; }
if (observeSpotD3 == 0 && understandSpotD3 == 1)
{ recall=145; forget=118; observeSpotD3 = 1; }
else if (observeSpotD3 == 1 && understandSpotD3 == 1)
{ observeSpotD3 = 1; }
else { observeSpotD3 = 0; }

if (observeSpotD4 == 0 && understandSpotD4 == 1)
{ recall =136; forget=113; observeSpotD4 = 1; }
else if (observeSpotD4 == 1 && understandSpotD4 == 1)
{ observeSpotD4 = 1; }
else { observeSpotD4 = 0; }

if (observeSpotD5 == 0 && understandSpotD5 == 1)
{ recall =126; forget=107; observeSpotD5 = 1; }
else if (observeSpotD5 == 1 && understandSpotD5 == 1)
{ observeSpotD5 = 1; }
else { observeSpotD5 = 0; }

if (observeSpotD6 == 0 && understandSpotD6 == 1)
{ recall =115; forget=98; observeSpotD6 = 1; }
else if (observeSpotD6 == 1 && understandSpotD6 == 1)
{ observeSpotD6 = 1; }
else { observeSpotD6 = 0; }

if (observeSpotD7 == 0 && understandSpotD7 == 1)
{ recall =106; forget=91; observeSpotD7 = 1; }
else if (observeSpotD7 == 1 && understandSpotD7 == 1)
{ observeSpotD7 = 1; }
else { observeSpotD7 = 0; }

if (observeSpotD8 == 0 && understandSpotD8 == 1)
{ recall =96; forget=81; observeSpotD8 = 1; }
else if (observeSpotD8 == 1 && understandSpotD8 == 1)
{ observeSpotD8 = 1; }
else { observeSpotD8 = 0; }

if (observeSpotE1 == 0 && understandSpotE1 == 1)
{ recall =157; forget=112; observeSpotE1 = 1; }
else if (observeSpotE1 == 1 && understandSpotE1 == 1)
{ observeSpotE1 = 1; }
else { observeSpotE1 = 0; }
if (observeSpotE2 == 0 && understandSpotE2 == 1)
{ recall =149; forget=110; observeSpotE2 = 1; }
else if (observeSpotE2 == 1 && understandSpotE2 == 1)
{ observeSpotE2 = 1; }
else { observeSpotE2 = 0; }

if (observeSpotE3 == 0 && understandSpotE3 == 1)
{ recall =141; forget=108; observeSpotE3 = 1; }
else if (observeSpotE3 == 1 && understandSpotE3 == 1)
{ observeSpotE3 = 1; }
else { observeSpotE3 = 0; }

if (observeSpotE4 == 0 && understandSpotE4 == 1)
{ recall =132; forget=103; observeSpotE4 = 1; }
else if (observeSpotE4 == 1 && understandSpotE4 == 1)
{ observeSpotE4 = 1; }
else { observeSpotE4 = 0; }

if (observeSpotE5 == 0 && understandSpotE5 == 1)
{ recall =123; forget=97; observeSpotE5 = 1; }
else if (observeSpotE5 == 1 && understandSpotE5 == 1)
{ observeSpotE5 = 1; }
else { observeSpotE5 = 0; }

if (observeSpotE6 == 0 && understandSpotE6 == 1)
{ recall =113; forget=90; observeSpotE6 = 1; }
else if (observeSpotE6 == 1 && understandSpotE6 == 1)
{ observeSpotE6 = 1; }
else { observeSpotE6 = 0; }

if (observeSpotE7 == 0 && understandSpotE7 == 1)
{ recall =105; forget=90; observeSpotE7 = 1; }
else if (observeSpotE7 == 1 && understandSpotE7 == 1)
{ observeSpotE7 = 1; }
else { observeSpotE7 = 0; }

if (observeSpotE8 == 0 && understandSpotE8 == 1)
{ recall =93; forget=71; observeSpotE8 = 1; }
else if (observeSpotE8 == 1 && understandSpotE8 == 1)
{ observeSpotE8 = 1; }
else { observeSpotE8 = 0; }
if (observeSpotF1 == 0 && understandSpotF1 == 1)
{ recall =150; forget=99; observeSpotF1 = 1; }
else if (observeSpotF1 == 1 && understandSpotF1 == 1)
{ observeSpotF1 = 1; }
else { observeSpotF1 = 0; }

if (observeSpotF2 == 0 && understandSpotF2 == 1)
{ recall =144; forget=98; observeSpotF2 = 1; }
else if (observeSpotF2 == 1 && understandSpotF2 == 1)
{ observeSpotF2 = 1; }
else { observeSpotF2 = 0; }

if (observeSpotF3 == 0 && understandSpotF3 == 1)
{ recall =136; forget=96; observeSpotF3 = 1; }
else if (observeSpotF3 == 1 && understandSpotF3 == 1)
{ observeSpotF3 = 1; }
else { observeSpotF3 = 0; }

if (observeSpotF4 == 0 && understandSpotF4 == 1)
{ recall =128; forget=91; observeSpotF4 = 1; }
else if (observeSpotF4 == 1 && understandSpotF4 == 1)
{ observeSpotF4 = 1; }
else { observeSpotF4 = 0; }

if (observeSpotF5 == 0 && understandSpotF5 == 1)
{ recall =118; forget=85; observeSpotF5 = 1; }
else if (observeSpotF5 == 1 && understandSpotF5 == 1)
{ observeSpotF5 = 1; }
else { observeSpotF5 = 0; }

if (observeSpotF6 == 0 && understandSpotF6 == 1)
{ recall =110; forget=79; observeSpotF6 = 1; }
else if (observeSpotF6 == 1 && understandSpotF6 == 1)
{ observeSpotF6 = 1; }
else { observeSpotF6 = 0; }

if (observeSpotF7 == 0 && understandSpotF7 == 1)
{ recall =100; forget=68; observeSpotF7 = 1; }
else if (observeSpotF7 == 1 && understandSpotF7 == 1)
{ observeSpotF7 = 1; }
else { observeSpotF7 = 0; }
if (observeSpotF8 == 0 && understandSpotF8 == 1)
{ recall =90; forget=60; observeSpotF8 = 1; }
else if (observeSpotF8 == 1 && understandSpotF8 == 1)
{ observeSpotF8 = 1; }
else { observeSpotF8 = 0; }

if (observeSpotG1 == 0 && understandSpotG1 == 1)
{ recall=143; forget=86; observeSpotG1 = 1; }
else if (observeSpotG1 == 1 && understandSpotG1 == 1)
{ observeSpotG1 = 1; }
else { observeSpotG1 = 0; }

if (observeSpotG2 == 0 && understandSpotG2 == 1)
{ recall=137; forget=85; observeSpotG2 = 1; }
else if (observeSpotG2 == 1 && understandSpotG2 == 1)
{ observeSpotG2 = 1; }
else { observeSpotG2 = 0; }

if (observeSpotG3 == 0 && understandSpotG3 == 1)
{ recall =140; forget=87; observeSpotG3 = 1; }
else if (observeSpotG3 == 1 && understandSpotG3 == 1)
{ observeSpotG3 = 1; }
else { observeSpotG3 = 0; }

if (observeSpotG4 == 0 && understandSpotG4 == 1)
{ recall =132; forget=83; observeSpotG4 = 1; }
else if (observeSpotG4 == 1 && understandSpotG4 == 1)
{ observeSpotG4 = 1; }
else { observeSpotG4 = 0; }

if (observeSpotG5 == 0 && understandSpotG5 == 1)
{ recall =117; forget=73; observeSpotG5 = 1; }
else if (observeSpotG5 == 1 && understandSpotG5 == 1)
{ observeSpotG5 = 1; }
else { observeSpotG5 = 0; }

if (observeSpotG6 == 0 && understandSpotG6 == 1)
{ recall =104; forget=65; observeSpotG6 = 1; }
else if (observeSpotG6 == 1 && understandSpotG6 == 1)
{ observeSpotG6 = 1; }
else { observeSpotG6 = 0; }
if (observeSpotG7 == 0 && understandSpotG7 == 1)
{ recall =95; forget=56; observeSpotG7 = 1; }
else if (observeSpotG7 == 1 && understandSpotG7 == 1)
{ observeSpotG7 = 1; }
else { observeSpotG7 = 0; }

if (observeSpotG8 == 0 && understandSpotG8 == 1)
{ recall =83; forget=45; observeSpotG8 = 1; }
else if (observeSpotG8 == 1 && understandSpotG8 == 1)
{ observeSpotG8 = 1; }
else { observeSpotG8 = 0; }

if (observeSpotH1 == 0 && understandSpotH1 == 1)
{ recall =136; forget=74; observeSpotH1 = 1; }
else if (observeSpotH1 == 1 && understandSpotH1 == 1)
{ observeSpotH1 = 1; }
else { observeSpotH1 = 0; }

if (observeSpotH2 == 0 && understandSpotH2 == 1)
{ recall =133; forget=73; observeSpotH2 = 1; }
else if (observeSpotH2 == 1 && understandSpotH2 == 1)
{ observeSpotH2 = 1; }
else { observeSpotH2 = 0; }

if (observeSpotH3 == 0 && understandSpotH3 == 1)
{ recall =126; forget=70; observeSpotH3 = 1; }
else if (observeSpotH3 == 1 && understandSpotH3 == 1)
{ observeSpotH3 = 1; }
else { observeSpotH3 = 0; }

if (observeSpotH4 == 0 && understandSpotH4 == 1)
{ recall =118; forget=65; observeSpotH4 = 1; }
else if (observeSpotH4 == 1 && understandSpotH4 == 1)
{ observeSpotH4 = 1; }
else { observeSpotH4 = 0; }

if (observeSpotH5 == 0 && understandSpotH5 == 1)
{ recall =109; forget=59; observeSpotH5 = 1; }
else if (observeSpotH5 == 1 && understandSpotH5 == 1)
{ observeSpotH5 = 1; }
else { observeSpotH5 = 0; }
if (observeSpotH6 == 0 && understandSpotH6 == 1)
{ recall =97; forget=51; observeSpotH6 = 1; }
else if (observeSpotH6 == 1 && understandSpotH6 == 1)
{ observeSpotH6 = 1; }
else { observeSpotH6 = 0; }

if (observeSpotH7 == 0 && understandSpotH7 == 1)
{ recall =81; forget=32; observeSpotH7 = 1; }
else if (observeSpotH7 == 1 && understandSpotH7 == 1)
{ observeSpotH7 = 1; }
else { observeSpotH7 = 0; }

if (observeSpotH8 == 0 && understandSpotH8 == 1)
{ recall =67; forget=10; observeSpotH8 = 1; }
else if (observeSpotH8 == 1 && understandSpotH8 == 1)
{ observeSpotH8 = 1; }
else { observeSpotH8 = 0; }

// Let the mystery writ upon the jaguars die with me. He who
// has glimpsed the universe, he who has glimpsed the burning
// designs of the universe, can have no thought for a man, for a
// man’s trivial joys or calamities, though he himself be that man.
// He was that man, who no longer matters to him. What does he
// care about the fate of that other man, what does he care about
// the other man’s nation, when now he is no one? That is why I do
// not speak the formula, that is why, lying in darkness, I allow the
// days to forget me.

code.write(recall);
secret.write(forget);

}