![[image loading]](https://i.imgur.com/lssLCW9.jpg)
From left to right: Sayori, Yuri, Natsuki, and Monika
Doki Doki Literature Club!
Hello, Teamliquid.
Doki Doki Literature Club (DDLC) is a visual novel I came across recently that I haven't seen a thread for. I hardly read novels ever, but I heard a lot of good things about it from others. After playing it myself, I highly recommend you guys check it out before reading the spoilers and discussion below. It is an interesting experience to say the least. Just so you have an idea of how long it is, it's more than 2 hours long and less than 10 hours long. The creator, Dan Salvato, is a notable member of the Smash community.
Here's a link to the download page.
A lot of Youtubers have made playthroughs of the game, including PewDiePie. I thought he did an amazing job narrating and going through the story. Here is a list of the VODs---they're extremely entertaining to watch.
+ Show Spoiler [PewDiePie Playthrough Part 1] +
+ Show Spoiler [PewDiePie Playthrough Part 2] +
+ Show Spoiler [PewDiePie Playthrough Part 3] +
+ Show Spoiler [PewDiePie Playthrough Part 4] +
+ Show Spoiler [PewDiePie Playthrough Part 5] +
+ Show Spoiler [PewDiePie Playthrough Part 6] +
I realized the story of this visual novel was far, far deeper than I thought when I found the following videos on YouTube.
+ Show Spoiler [DDLC Spoilers] +
Here is a link to the Reddit page referenced in the second video, which was written by the Reddit user, Mithost.
"Doki Doki Literature Club" Has More To It Than We Think.
When I first watched the second video, I wasn't entirely convinced that Monika wrote the message. After thinking about it, though, I believe she did write it for different reasons than MatPat gave. In particular, the facts that the message starts with "Can you hear me?", the use of "Anyway," and the use of "..." a lot. She also talks about what she knows and what she doesn't know, which is characteristic of her.
+ Show Spoiler [The .chr Files] +
According to the videos by MatPat, the .chr files in the "characters" folder are actually puzzles to be solved. In this section I show how to solve each of them.
Here I explain how to analyze monika.chr in Mathematica for Windows.
+ Show Spoiler [monika.chr] +
Open Mathematica and start a new notebook. Click and drag "monika.chr" into the notebook and the file automatically imports into the program.
![[image loading]](https://i.imgur.com/0JB4kYm.jpg)
Once it's there, right-click on the image and select "Crop Image..."
![[image loading]](https://i.imgur.com/7FSGu1D.jpg)
Adjust the corners of the orange box to include the black and white pixels at the center of the ring. Try to make the box as small as possible. Once finished, double-click and the cropped image will appear below.
![[image loading]](https://i.imgur.com/D7zmfuB.jpg)
I was lucky to get a perfect crop horizontally, but there is one row of black pixels on the top and bottom. That's okay, though. By right-clicking on the cropped image, we can set the magnification to 1600%. Here is what the top-left corner of the image looks like.
![[image loading]](https://i.imgur.com/j6uPNTr.jpg)
The ImageData command in Mathematica tells us the RGB (red, green, blue) value of every pixel in an image. White corresponds to an RGB value of (1,1,1), and black corresponds to an RGB value of (0,0,0).
![[image loading]](https://i.imgur.com/DPBbNJl.jpg)
By using the Dimensions command in Mathematica, we can determine just how large this matrix is.
![[image loading]](https://i.imgur.com/DxYuNGU.jpg)
Ignoring the first and last rows of black pixels, we see that at the center of the ring is a 140x140 array of black and white pixels. In Mathematica we have a 142x140 matrix (142 rows and 140 columns) whose entries are 3x1 matrixes that tell the RGB values at each pixel. ImageData gives decimal values; we just want integer 0's and 1's, so we use the Round command.
![[image loading]](https://i.imgur.com/uu5hkjN.jpg)
We can look at the 2nd row of the matrix specifically by putting [[2]] at the end.
![[image loading]](https://i.imgur.com/vE4ABks.jpg)
The Table command in Mathematica will be used to cycle through each of the pixels in the 2nd row. A new set will be created where each element is the first number of each of the 3x1 matrices.
![[image loading]](https://i.imgur.com/jZ3U79J.jpg)
By applying the Table command again, we can cycle through each of the rows. We'll go from rows 2-3 for now.
![[image loading]](https://i.imgur.com/IgamCpQ.jpg)
Use the Flatten command to combine the sets into one.
![[image loading]](https://i.imgur.com/DGSBJn6.jpg)
The FromDigits command can be used to concatenate the numbers in the set into one long number. Unfortunately, the first 0 drops off from using it, so we'll add it in manually at the end.
![[image loading]](https://i.imgur.com/wiofqQP.jpg)
Extend the limit of the j index to 141 to go through every relevant row of the matrix.
![[image loading]](https://i.imgur.com/XqKHoR6.jpg)
Copying and pasting the output into a text editor gives us this. (I've added the 0 back in at the start.)
+ Show Spoiler +
01010001001100100100011001110101010010010100100001101100011101100110010\
0010100110100001001101111010110100101011101000110011110010100100101000\
1110011000101101100010100000111011100110000010010110100010001010001011\
0111101110101010011000110100100110101010110000110000101000111001110000\
1100111010110010101100001001010011011000100100101001000011011000111011\
0011001000101010000111000010011100100001101100111001100000100101101010\
0110101001101000010011010100101100101010111001101000110111001100100010\
0001100110100011101010100110001101011011010110110011101011001001100100\
1000110011101010100101000110011010100010110011101100011001100100101011\
0011011000100100101001000011011000111011001100100010100110011010001001\
1100100001101100111001100000100101101010001011011100101011000110000010\
0100101000101011010110110011101100001001100100011010101110110011001000\
1111001010000100011010101100010001100110101010101101110011000110110110\
1010101010110011101100100010001110110100001101100011000110110110101010\
1010111010101001001010001100110110001101100010110010101011101100111011\
1010101001100011010010011010100110101011000100011001101010101011001110\
1011001001100100100011001110101010010010100011101010010011011000101101\
0011011010110110001110101011000010101100001010010011011000110001001001\
0000110101101100111011000010100011101010110011010000110001101101001010\
0001001110100010110100101001100110100010011100100001101100111001100000\
1001011010101110101011100111001001100010100101000110011010110100110110\
0010010010100011101001010011011000101101001010111001101000110011101100\
1000011001001000110001100000101100100110010011010000111000001100010011\
0110101100011011001110101101001101101001110010111100101001001010001110\
1000101011001110110010000110010011010000111000001100010010001110101010\
1011001110110001001101101001110010011001101001100010000110100001001111\
0010110000101010111011001000110111101100100010001000011100001001110010\
0001101100111001100000100101101010011010100110100001001101110011001000\
1010111010101100111101001100011011110010100001001001010010010010100100\
0010011100110111101100010001100110101011001110011010110100100001100110\
1000111010101001100011011010110110001110101011001000100100001001010011\
1011001011010010010000101011001101010010110100101001101000010011101000\
1100101010110000100111001101100011000100100011101011001011100110100100\
1010001110011100101111001010010010100100001001110011101100110001001010\
1110101011000110000011000010100011101101100011101010101101001111001001\
1010001100111010101100101011100110000011101010100110001101001001101010\
1110100011001010101001101000010011101010101100101010111001100010110110\
0010010010100011101101100011110100100110001101001001101000111010101011\
0010101011101001110001100000110010001010111010001100111001101100010010\
0100001101011011100110100100101001000010100100110111101011001010110000\
1010001011011100110001101111001010000100111101001100100010010000101011\
0011101110110000101010111010100010111010101001001010001100110110001110\
1100110010001010011010000100111011001011001011011100101101001110000011\
0001000110011010101100111101001100010010010000110101101100111010110010\
1010111011110000111100101011010010101110100011001101011011001010101001\
1010000100111001001100010011011010011100100110011010010010100011100110\
0010011010101001001010001110011010101101000011000100101011101010101011\
1010101001001010001100100111001110110011000110110111001001010001101010\
1001100011001110011000001001011010001000101000101110000010000100110001\
0011011100110110000110011010110010101100001101011011101010100110001101\
0010011010101001010010010100011001000110000011001110101101000110011010\
1011001101100011000110011001101001110011100000110001001101101011000110\
1100111011000010101011101011001011001110110010101010111001110010011000\
1010010010100100001100100011011000110001101101101010101010110011101011\
0010101011101001010011100110101101001010011010000100011000001100010011\
1100101000010011101110110010001011000010100010110011101011001010100110\
1000010011110100110010001000111001110010111011101001001010010000101001\
0011101100100100101001000010100100110111101100001010110000100110101110\
0110100100101001000011011000111011001100100010100110100001000110011011\
0001000110011010101100111001101011010010000110100001001101111010110010\
1011000010110100110110001001001010001110101001001110110011000100110110\
1010101010110011101100001010110000101000101100111010110010110111001101\
0110110011101100010011011010011100100110011010011000110011100110000010\
0101101000100010100010111000001001010010010010100011100110001011011000\
1011001010101110011010001110011010010010100010101101011011001110110000\
1001100100011010101110110011001000111100101000010001101010110001000110\
0110101010101101110011000110110110101010101011001110110001001101101001\
1100100110000010011000100001101000010011100110110000101010111011101000\
1101100010011000110100100110100011101010101101001011000010110100111000\
0011000100100001101110111011001110110001000110011010010010110011101011\
0010101011100110101001101010110010001000111011010000111000001100010011\
0110101100011011101010100110001101001001101010110100101011010010101110\
1001110011010000110010001011000010011100110110001001001010010000110110\
0011101100110010001010011011001000011001001011010010100110100001001101\
0000110001001001000010010100110110001011001010101110101001000110101010\
0100101000111011010000110110001100010010010000100001001101100010110100\
1000011010000100111010001011010010100110100001001111010011000100111100\
1010000100111010001100100010101110100111001101111010011000110011100110\
0000100101101000100010100010111000001001010010010010100100001001110011\
0111101100010001100110101011001110011010110100100001101000010011110010\
1011010010101110100011001110011011000100100100001101011011001110110010\
0010001110110100001101000011000100110110101110011011001110110010101010\
1110011100100110001010010010100011101011010011101100110001101101001010\
0001000110000011000010100011101000110001100000100110001101001010000100\
1000111011000100011001101001001011001110101101001011000010110100110110\
0011000110110111001101100001100000110000101000111011011000111010101011\
0100111100101000010001101010110001000110011010101010110111001100100011\
0110101010101011001110101101001000111001110010111010101011010010100110\
0110100011001110101011101010111001110010011000101001010001100110100101\
0011011000100100101001000010010100110110001011001010101110111100001110\
0110110010101010011010000100111001101100001010101110111010001101100010\
0100101000111010001010110011101011010011011100100101001110000010110100\
1010111001101010110101101001001010010000101001001110110010010010100011\
1001100010110110001001100011010010100001001010100011000100111100100110\
1000111010101001100011011100101001001101111010110010101011100110101011\
1001001001001010010000110110001110110011001000101001100110100011001110\
1010101001100100011100001100111011000100101100001010110011010100110000\
1010000110011010001001110010000110110011100110000010010110101001101010\
0110100001000110000011000010100011101101100011101010110000101111001001\
1010001110101010011000110110100110001011101100110001101101101010101010\
1100111011001000100011101101000011010000110001001101001010000100110100\
0011000100110111001101100001100000110000101000111011011000111010101011\
0100111100101000010011011000110001001001000010011100110110001001100011\
0100100110100011101010101001101010011010000100111100101011010010101110\
1000110011100110110001001001000011010110110011101011010010001110011100\
1011101010100101000110011010100010110011101100100001100100100011001110\
1010110010001000011010000100111000001100100010000110100001000110000011\
0001001111001010000100110100001100010010001110111011101100111010110010\
1101101010101010110011101011010011011010011100101111001010010010100011\
1001101010111011001100100010001110110100001110000011000100110110101100\
0110111010101000100010100010110111101001110010000110110100100110100011\
1010101001100011001110011000001001011010001000101000101110000010001100\
1100100011011010101011001111001011001010101011100111001011101010101101\
0010100110100001001101100011000100100100001001110011011000100100101000\
1110110110001111010010010010100011101010010011011000101100101010111010\
1000101110101010001000101000101101111010011100100001101101011001100010\
1101000011001010101011101001010011011000100100101001000011011000111011\
0011001000101001101000010011010000110001001001000010010100110110001011\
0010101011101010010001101010100100101000111011101000111010101100010001\
1001101100011011001110110010001000111011010000110100001100100010000110\
0110100011001110101001101010011011001000111010001001001010010000100111\
0001100010110001101101101010101010110011101100101010101110011100100110\
0010100100101000111010100100111011001001100010000110100001001101000010\
1100100110011010100100011000101011001010101110111100001110011011001010\
1010011001101000100111001000011011001110011000001001011010100010110111\
0010101100011000001001100011010010011010001110101011000010101100001010\
0010110011101011010010001110011100101101100011000110011001000110100011\
0111001100100010000110100001001101111010110010101100001011010011011000\
1001001010010000101001001110110010010010100011101001010011011000100100\
1010010000101001001101111010110010101100001010001011001110110010000110\
0100100011000110101010011000100001101000010011110010110000101010111011\
0010001101111011001000100010000111000010011100100001101100111001100000\
1001011010101100011001001010110011100110110001001000011001101000111010\
1010011000110111001010010011011110101101001011000010010100110110001001\
0100011001101001101011001110101100101010011010000100111001101100010001\
1001101010001011001110110001000110010010110010110011101100011001100110\
1010010001100010101101001101101010110010110011101010011010100110100001\
0011010110110001000110010001101000110111001100100010000110100001000110\
0010110001001101101010100100110110001100011011011100100111000110000010\
1100101010111001101010110101101001100011010010100001001001010010010010\
1000111010100100111011001100010011010010110010000110000010010010100011\
1011101000111010101100010001100110110001101100111011000010101011101011\
0010110011101100001010110000101000101101110011000110111100101000010011\
0110001100100011011010101011001110101010010010100100001000010011101100\
1100011001100110100111001110000010110010110110101111000011011000100100\
1010001110101101001110110011000110110100101000010011101000101101001010\
0110100001000110000011000100111100101000010001100010110001001101101010\
1001001101100011000110110111001001110001100000101100101010111001101010\
1101011010010010100011101101100001100000100110001100111001100000100101\
1010001000101000101110000010000110110010001011000010100010110011101010\
0110101001101000010011100100110001001101101001110010011001101001001010\
0100001010010011011110101100101011000010100010110011101100100010001110\
1101000011100000110001101111001010000100111000001100011001100100011010\
0011011100110010001000011010000100111010001100101010100110100001001110\
1100110001001101101011110000011010101001001010010000100111000110000011\
0001000110011010010100011010101001100011001110011000001001011010001000\
1010001011100000100101001001001010001110100111001101000011000100110100\
1010000100111101001011010010101110101010101100111011001000100011101101\
0000110100001100100010000110100001001110101011000100011001101100011011\
1010101001001010001100100101001101100010110010101011101111000011100110\
1100101010100110100001001101010011000100100011101010110011010000110001\
1011011010111100000110101010011000110011100110000010010110100010001010\
0010111000001000010011000100110110101010001011001110101001101010011010\
0001000110000011000010100011101101100011101010110000101111001010000100\
1101100011001000110110101010110011110010110010101010111001110010111010\
1010110100101001101000010011011000110001001001000010011100110110001001\
0010100011101101000011010000110001101111001010000100110111101011001010\
1011101010001011001110110010001000111011010000110110001001001010010000\
1001110011010000110001001010111010101010110011101100001001100100110110\
0011101010101101001000011010000100111011001011010011010010100001001101\
1000110010101001000010000100110110001100011011011010110110001101100011\
0001001101101010011100110110001001100011010010100001001010100011000100\
0110010001100010110110001001001010001110111010001110000011000100110110\
1010100010110011101100010001100100101100101100111010110100100011101010\
1100111000101011001010100110100001000110010011001000101001100110100010\
0111001000011011001110011000001001011010100110101100001010001011011100\
1100011011110010100001000110000011000010100011101010101011001110101011\
0010001110110100001110000011000110110110101010001011001110101001001011\
0000110110001101100010011000100001101000010011110010110000101010111011\
0010001101111011001000100010000111000010011100100001101100111001100000\
1001011010100010101011100110101001101010110010000110010010001100011010\
1010011000110100100110100011101010101001101010011010000100110101001100\
0100011001101010110011100110101101001000011010000100110100101011010010\
1001101000010001100000110001000110011010100100110100001100010010001110\
1111000001101010100100101001000011001000111100101100010001100100011010\
1011011100100100101000111010001100110100101100010001100110101011000110\
0000100100101001000010100100110111101100001010110000100110101110101010\
0100101000101010010100011000101100100010000110100001001001010010010010\
1001000010010100110110001011001010101110111100001110011011001010101001\
1010000100011000001100001010001110110110001110101011000010111100101000\
0100011010101100010001100110101010101100111011000100101011101101100011\
0111001100001010010000101000101100111010110010110110101010101011001110\
1011001010101110100101001110011010110100101001101000010001100000110001\
0011110010100001001101011011000100111100101000010011110100110001000110\
0100011000101101100011001000100011101101000011100000110001001101101011\
0001101110101010001000101000101101111010011100100001101101011011010110\
1100111011001000100011101101000011100000110001001101101011100110110011\
1011001010101011100111001001100010100100101000111001100010111000001011\
0100011001001101000001100000100100101000111010010100110110001001001010\
0011101000110011010010110001001000111010101010110011101100100010001110\
0111000011001110101101000110010001110000110011101011001011011010100011\
0011010100110000101111001001101000111010101001100011011010011100101111\
0010100100101000111011010000111011001100100001100100101011000110010010\
1101001011000010010010110011101100101010101110011100100110001010010010\
1001000011001000110100001100010011011100101000101100111011001000100011\
1001110000110011101100011010010000101011000110000010010010100011101101\
1000011000001001100011010010011010001110101010001000101000101101111010\
0111001000011011010010011010001110101010011000110110001010010011101100\
1001001010001110110010001110110010010010100011101001010011010000101100\
1001100100111001101100111010110010101011100110101011010110100100101001\
0000101001001101100011000100100011101110111011001110110010001000111011\
0100001101100011000100101001101000010001100110110000101000111010001100\
0110000010010100011001101001101011001110101101000110010001110010111000\
0011000100110110101100011011001110110010001000111001110000110011101100\
0010100011101000110011101110110001101000111010101100111010101001100011\
0011100110000010010110100010001010001011100000100101001011010011010010\
1000010001100000110000101000111010101100011010101001001010001110111010\
0011101010110001000110011011000110110011101011001010101110110100001101\
1000101100101010111010100010110011101100010001100100101100101100111011\
0010001000111011011000111010001011010010100110111011101100111011001000\
1000111011010000110110001100010011010010100001000110000011000010100011\
1010101100011010101001001010010000100111001101111011000100011001101010\
1100111001101011010010000110100001001101001010110100101001101000010011\
0100001011001011011010111100001101100010010010100100001010010011101100\
1001001010001110100011000110010011000100011001001101100011010110100100\
1010001110110110000110000010011000110011100110000010010110100010001010\
0010111000001010101011000010100011101010110001101010100100101001000010\
0111001101111011000100011001101010110011100110101101001000011001101000\
1110101010011000110110101101100011011010100100101001000010100100110111\
1010110100101100001101011011001110110001101101101010101100111010001011\
0100101011100110001011010010101101001011000010010010110011101100100010\
0011101101000011011000110000101011000010010010110011101100100010001110\
1101100011101000101101001010011010000100011001101100001010110000101001\
0011011110100100101000111001100010110110001001001010001110110110001110\
1010100100101001000010100100110111101011010010100110100001001110110011\
0010001000111011010000110110001100011011010010100001000110011011000100\
0110011010010100111001101011010010010000100110101110101010011000110100\
1001101010011000001100001010001110101011000110101010010010100100001001\
1100110111101100010001100110101011001110011010110100100001101000010011\
1100101011010010101110011000101101100011000100101011101001010011011000\
1100011011010010100001000110011011000010100011101000110001100000100100\
1010001010110101101100111011001000100011101010110011100110110001001000\
0110100001000110000011000010100011101010110011101000100110001100111001\
1000001001011010001000101000101110000010110100101101001010111010001100\
1101111010011000110100101000010010010100100100101001000010010100110110\
0010110010101011101111000011100110110010101010011010000100011000001100\
0010100011101101100011101010110000101111001010000100011000001100001010\
0011101101100011110100100100101000111001100010111000001011010001100100\
1101000001100000100100101000111010010100110110001001001010010000100001\
0011101100110001100110011010011100111000001011001011011010111100001101\
1000100110001101001010000100100001101100100010110000101000101100111011\
0000101011000010100010110111001100011011110010100001000110001011000110\
1000011010000100011000001100010011110010100001000110101011000100011001\
1010101010111010101000100010100010110111101001110010000110110101101101\
0110110111001100010010100110100001001111010011000100011001101001010011\
1100101100101010100110100001001101101011000100011001101001001011001110\
1011001010101110111100000110011010110010101100001101100011110100100100\
1010001110100101001101100011000010101011100110101011011100100110001101\
0010011010001110101011001010101011100111001001100010100100101000111011\
1010001110101011000100011001101100011011101010100110001101001001101000\
1001110010000110110011100110000010010110100110001101001001101000111010\
1010001000101000101101111010011100100001101101011001101010110110001100\
1000110110101010110011110010100100101000111001100010111000001100010011\
0110101010001011101010100100101000101011010110110011101100001001100100\
0110101011101100110010001111001010000100011000001100001010001110100011\
0001100000100101000110011010011010110011101100100001100110100101001110\
1100110001001101101011000110111010101000100010100010110111101001110010\
0001101101100010100100110111101100001010110000100110101100111011000010\
1011000010011010110011101100010010110000110101101100111011000110011001\
1010100100111011001100011011011100110101101110101010010010100010101101\
1000011000001001010001100110100110101100111011001000100011101101100011\
1010001011010010100110100001000110000011000100111100101000010011010010\
1011010010100110100001001101000010010010100011101011010001100010101100\
1001100100111010001110000011000100110110101100011011001110110000101000\
1110101011001111001011000100111100100110100010011100100001101100111001\
1000001001011010100010110110100111001001100000110000101000011010000100\
1110110010110100110100101000010001100010110001101111001001101000100111\
0010000110110011100110000010010110100010001010001011011110100111001000\
0110110101001001001011101110100110101010100011001110011110100000000000\
000000000000000000000000000000000000000000000000000000000000000000000
Back to Top
Opening this in a text editor, we can find all the backslashes "\" and replace them with nothing "". Doing so finally results in the one long binary number we've been seeking.
+ Show Spoiler +
01010001001100100100011001110101010010010100100001101100011101100110010
0010100110100001001101111010110100101011101000110011110010100100101000
1110011000101101100010100000111011100110000010010110100010001010001011
0111101110101010011000110100100110101010110000110000101000111001110000
1100111010110010101100001001010011011000100100101001000011011000111011
0011001000101010000111000010011100100001101100111001100000100101101010
0110101001101000010011010100101100101010111001101000110111001100100010
0001100110100011101010100110001101011011010110110011101011001001100100
1000110011101010100101000110011010100010110011101100011001100100101011
0011011000100100101001000011011000111011001100100010100110011010001001
1100100001101100111001100000100101101010001011011100101011000110000010
0100101000101011010110110011101100001001100100011010101110110011001000
1111001010000100011010101100010001100110101010101101110011000110110110
1010101010110011101100100010001110110100001101100011000110110110101010
1010111010101001001010001100110110001101100010110010101011101100111011
1010101001100011010010011010100110101011000100011001101010101011001110
1011001001100100100011001110101010010010100011101010010011011000101101
0011011010110110001110101011000010101100001010010011011000110001001001
0000110101101100111011000010100011101010110011010000110001101101001010
0001001110100010110100101001100110100010011100100001101100111001100000
1001011010101110101011100111001001100010100101000110011010110100110110
0010010010100011101001010011011000101101001010111001101000110011101100
1000011001001000110001100000101100100110010011010000111000001100010011
0110101100011011001110101101001101101001110010111100101001001010001110
1000101011001110110010000110010011010000111000001100010010001110101010
1011001110110001001101101001110010011001101001100010000110100001001111
0010110000101010111011001000110111101100100010001000011100001001110010
0001101100111001100000100101101010011010100110100001001101110011001000
1010111010101100111101001100011011110010100001001001010010010010100100
0010011100110111101100010001100110101011001110011010110100100001100110
1000111010101001100011011010110110001110101011001000100100001001010011
1011001011010010010000101011001101010010110100101001101000010011101000
1100101010110000100111001101100011000100100011101011001011100110100100
1010001110011100101111001010010010100100001001110011101100110001001010
1110101011000110000011000010100011101101100011101010101101001111001001
1010001100111010101100101011100110000011101010100110001101001001101010
1110100011001010101001101000010011101010101100101010111001100010110110
0010010010100011101101100011110100100110001101001001101000111010101011
0010101011101001110001100000110010001010111010001100111001101100010010
0100001101011011100110100100101001000010100100110111101011001010110000
1010001011011100110001101111001010000100111101001100100010010000101011
0011101110110000101010111010100010111010101001001010001100110110001110
1100110010001010011010000100111011001011001011011100101101001110000011
0001000110011010101100111101001100010010010000110101101100111010110010
1010111011110000111100101011010010101110100011001101011011001010101001
1010000100111001001100010011011010011100100110011010010010100011100110
0010011010101001001010001110011010101101000011000100101011101010101011
1010101001001010001100100111001110110011000110110111001001010001101010
1001100011001110011000001001011010001000101000101110000010000100110001
0011011100110110000110011010110010101100001101011011101010100110001101
0010011010101001010010010100011001000110000011001110101101000110011010
1011001101100011000110011001101001110011100000110001001101101011000110
1100111011000010101011101011001011001110110010101010111001110010011000
1010010010100100001100100011011000110001101101101010101010110011101011
0010101011101001010011100110101101001010011010000100011000001100010011
1100101000010011101110110010001011000010100010110011101011001010100110
1000010011110100110010001000111001110010111011101001001010010000101001
0011101100100100101001000010100100110111101100001010110000100110101110
0110100100101001000011011000111011001100100010100110100001000110011011
0001000110011010101100111001101011010010000110100001001101111010110010
1011000010110100110110001001001010001110101001001110110011000100110110
1010101010110011101100001010110000101000101100111010110010110111001101
0110110011101100010011011010011100100110011010011000110011100110000010
0101101000100010100010111000001001010010010010100011100110001011011000
1011001010101110011010001110011010010010100010101101011011001110110000
1001100100011010101110110011001000111100101000010001101010110001000110
0110101010101101110011000110110110101010101011001110110001001101101001
1100100110000010011000100001101000010011100110110000101010111011101000
1101100010011000110100100110100011101010101101001011000010110100111000
0011000100100001101110111011001110110001000110011010010010110011101011
0010101011100110101001101010110010001000111011010000111000001100010011
0110101100011011101010100110001101001001101010110100101011010010101110
1001110011010000110010001011000010011100110110001001001010010000110110
0011101100110010001010011011001000011001001011010010100110100001001101
0000110001001001000010010100110110001011001010101110101001000110101010
0100101000111011010000110110001100010010010000100001001101100010110100
1000011010000100111010001011010010100110100001001111010011000100111100
1010000100111010001100100010101110100111001101111010011000110011100110
0000100101101000100010100010111000001001010010010010100100001001110011
0111101100010001100110101011001110011010110100100001101000010011110010
1011010010101110100011001110011011000100100100001101011011001110110010
0010001110110100001101000011000100110110101110011011001110110010101010
1110011100100110001010010010100011101011010011101100110001101101001010
0001000110000011000010100011101000110001100000100110001101001010000100
1000111011000100011001101001001011001110101101001011000010110100110110
0011000110110111001101100001100000110000101000111011011000111010101011
0100111100101000010001101010110001000110011010101010110111001100100011
0110101010101011001110101101001000111001110010111010101011010010100110
0110100011001110101011101010111001110010011000101001010001100110100101
0011011000100100101001000010010100110110001011001010101110111100001110
0110110010101010011010000100111001101100001010101110111010001101100010
0100101000111010001010110011101011010011011100100101001110000010110100
1010111001101010110101101001001010010000101001001110110010010010100011
1001100010110110001001100011010010100001001010100011000100111100100110
1000111010101001100011011100101001001101111010110010101011100110101011
1001001001001010010000110110001110110011001000101001100110100011001110
1010101001100100011100001100111011000100101100001010110011010100110000
1010000110011010001001110010000110110011100110000010010110101001101010
0110100001000110000011000010100011101101100011101010110000101111001001
1010001110101010011000110110100110001011101100110001101101101010101010
1100111011001000100011101101000011010000110001001101001010000100110100
0011000100110111001101100001100000110000101000111011011000111010101011
0100111100101000010011011000110001001001000010011100110110001001100011
0100100110100011101010101001101010011010000100111100101011010010101110
1000110011100110110001001001000011010110110011101011010010001110011100
1011101010100101000110011010100010110011101100100001100100100011001110
1010110010001000011010000100111000001100100010000110100001000110000011
0001001111001010000100110100001100010010001110111011101100111010110010
1101101010101010110011101011010011011010011100101111001010010010100011
1001101010111011001100100010001110110100001110000011000100110110101100
0110111010101000100010100010110111101001110010000110110100100110100011
1010101001100011001110011000001001011010001000101000101110000010001100
1100100011011010101011001111001011001010101011100111001011101010101101
0010100110100001001101100011000100100100001001110011011000100100101000
1110110110001111010010010010100011101010010011011000101100101010111010
1000101110101010001000101000101101111010011100100001101101011001100010
1101000011001010101011101001010011011000100100101001000011011000111011
0011001000101001101000010011010000110001001001000010010100110110001011
0010101011101010010001101010100100101000111011101000111010101100010001
1001101100011011001110110010001000111011010000110100001100100010000110
0110100011001110101001101010011011001000111010001001001010010000100111
0001100010110001101101101010101010110011101100101010101110011100100110
0010100100101000111010100100111011001001100010000110100001001101000010
1100100110011010100100011000101011001010101110111100001110011011001010
1010011001101000100111001000011011001110011000001001011010100010110111
0010101100011000001001100011010010011010001110101011000010101100001010
0010110011101011010010001110011100101101100011000110011001000110100011
0111001100100010000110100001001101111010110010101100001011010011011000
1001001010010000101001001110110010010010100011101001010011011000100100
1010010000101001001101111010110010101100001010001011001110110010000110
0100100011000110101010011000100001101000010011110010110000101010111011
0010001101111011001000100010000111000010011100100001101100111001100000
1001011010101100011001001010110011100110110001001000011001101000111010
1010011000110111001010010011011110101101001011000010010100110110001001
0100011001101001101011001110101100101010011010000100111001101100010001
1001101010001011001110110001000110010010110010110011101100011001100110
1010010001100010101101001101101010110010110011101010011010100110100001
0011010110110001000110010001101000110111001100100010000110100001000110
0010110001001101101010100100110110001100011011011100100111000110000010
1100101010111001101010110101101001100011010010100001001001010010010010
1000111010100100111011001100010011010010110010000110000010010010100011
1011101000111010101100010001100110110001101100111011000010101011101011
0010110011101100001010110000101000101101110011000110111100101000010011
0110001100100011011010101011001110101010010010100100001000010011101100
1100011001100110100111001110000010110010110110101111000011011000100100
1010001110101101001110110011000110110100101000010011101000101101001010
0110100001000110000011000100111100101000010001100010110001001101101010
1001001101100011000110110111001001110001100000101100101010111001101010
1101011010010010100011101101100001100000100110001100111001100000100101
1010001000101000101110000010000110110010001011000010100010110011101010
0110101001101000010011100100110001001101101001110010011001101001001010
0100001010010011011110101100101011000010100010110011101100100010001110
1101000011100000110001101111001010000100111000001100011001100100011010
0011011100110010001000011010000100111010001100101010100110100001001110
1100110001001101101011110000011010101001001010010000100111000110000011
0001000110011010010100011010101001100011001110011000001001011010001000
1010001011100000100101001001001010001110100111001101000011000100110100
1010000100111101001011010010101110101010101100111011001000100011101101
0000110100001100100010000110100001001110101011000100011001101100011011
1010101001001010001100100101001101100010110010101011101111000011100110
1100101010100110100001001101010011000100100011101010110011010000110001
1011011010111100000110101010011000110011100110000010010110100010001010
0010111000001000010011000100110110101010001011001110101001101010011010
0001000110000011000010100011101101100011101010110000101111001010000100
1101100011001000110110101010110011110010110010101010111001110010111010
1010110100101001101000010011011000110001001001000010011100110110001001
0010100011101101000011010000110001101111001010000100110111101011001010
1011101010001011001110110010001000111011010000110110001001001010010000
1001110011010000110001001010111010101010110011101100001001100100110110
0011101010101101001000011010000100111011001011010011010010100001001101
1000110010101001000010000100110110001100011011011010110110001101100011
0001001101101010011100110110001001100011010010100001001010100011000100
0110010001100010110110001001001010001110111010001110000011000100110110
1010100010110011101100010001100100101100101100111010110100100011101010
1100111000101011001010100110100001000110010011001000101001100110100010
0111001000011011001110011000001001011010100110101100001010001011011100
1100011011110010100001000110000011000010100011101010101011001110101011
0010001110110100001110000011000110110110101010001011001110101001001011
0000110110001101100010011000100001101000010011110010110000101010111011
0010001101111011001000100010000111000010011100100001101100111001100000
1001011010100010101011100110101001101010110010000110010010001100011010
1010011000110100100110100011101010101001101010011010000100110101001100
0100011001101010110011100110101101001000011010000100110100101011010010
1001101000010001100000110001000110011010100100110100001100010010001110
1111000001101010100100101001000011001000111100101100010001100100011010
1011011100100100101000111010001100110100101100010001100110101011000110
0000100100101001000010100100110111101100001010110000100110101110101010
0100101000101010010100011000101100100010000110100001001001010010010010
1001000010010100110110001011001010101110111100001110011011001010101001
1010000100011000001100001010001110110110001110101011000010111100101000
0100011010101100010001100110101010101100111011000100101011101101100011
0111001100001010010000101000101100111010110010110110101010101011001110
1011001010101110100101001110011010110100101001101000010001100000110001
0011110010100001001101011011000100111100101000010011110100110001000110
0100011000101101100011001000100011101101000011100000110001001101101011
0001101110101010001000101000101101111010011100100001101101011011010110
1100111011001000100011101101000011100000110001001101101011100110110011
1011001010101011100111001001100010100100101000111001100010111000001011
0100011001001101000001100000100100101000111010010100110110001001001010
0011101000110011010010110001001000111010101010110011101100100010001110
0111000011001110101101000110010001110000110011101011001011011010100011
0011010100110000101111001001101000111010101001100011011010011100101111
0010100100101000111011010000111011001100100001100100101011000110010010
1101001011000010010010110011101100101010101110011100100110001010010010
1001000011001000110100001100010011011100101000101100111011001000100011
1001110000110011101100011010010000101011000110000010010010100011101101
1000011000001001100011010010011010001110101010001000101000101101111010
0111001000011011010010011010001110101010011000110110001010010011101100
1001001010001110110010001110110010010010100011101001010011010000101100
1001100100111001101100111010110010101011100110101011010110100100101001
0000101001001101100011000100100011101110111011001110110010001000111011
0100001101100011000100101001101000010001100110110000101000111010001100
0110000010010100011001101001101011001110101101000110010001110010111000
0011000100110110101100011011001110110010001000111001110000110011101100
0010100011101000110011101110110001101000111010101100111010101001100011
0011100110000010010110100010001010001011100000100101001011010011010010
1000010001100000110000101000111010101100011010101001001010001110111010
0011101010110001000110011011000110110011101011001010101110110100001101
1000101100101010111010100010110011101100010001100100101100101100111011
0010001000111011011000111010001011010010100110111011101100111011001000
1000111011010000110110001100010011010010100001000110000011000010100011
1010101100011010101001001010010000100111001101111011000100011001101010
1100111001101011010010000110100001001101001010110100101001101000010011
0100001011001011011010111100001101100010010010100100001010010011101100
1001001010001110100011000110010011000100011001001101100011010110100100
1010001110110110000110000010011000110011100110000010010110100010001010
0010111000001010101011000010100011101010110001101010100100101001000010
0111001101111011000100011001101010110011100110101101001000011001101000
1110101010011000110110101101100011011010100100101001000010100100110111
1010110100101100001101011011001110110001101101101010101100111010001011
0100101011100110001011010010101101001011000010010010110011101100100010
0011101101000011011000110000101011000010010010110011101100100010001110
1101100011101000101101001010011010000100011001101100001010110000101001
0011011110100100101000111001100010110110001001001010001110110110001110
1010100100101001000010100100110111101011010010100110100001001110110011
0010001000111011010000110110001100011011010010100001000110011011000100
0110011010010100111001101011010010010000100110101110101010011000110100
1001101010011000001100001010001110101011000110101010010010100100001001
1100110111101100010001100110101011001110011010110100100001101000010011
1100101011010010101110011000101101100011000100101011101001010011011000
1100011011010010100001000110011011000010100011101000110001100000100100
1010001010110101101100111011001000100011101010110011100110110001001000
0110100001000110000011000010100011101010110011101000100110001100111001
1000001001011010001000101000101110000010110100101101001010111010001100
1101111010011000110100101000010010010100100100101001000010010100110110
0010110010101011101111000011100110110010101010011010000100011000001100
0010100011101101100011101010110000101111001010000100011000001100001010
0011101101100011110100100100101000111001100010111000001011010001100100
1101000001100000100100101000111010010100110110001001001010010000100001
0011101100110001100110011010011100111000001011001011011010111100001101
1000100110001101001010000100100001101100100010110000101000101100111011
0000101011000010100010110111001100011011110010100001000110001011000110
1000011010000100011000001100010011110010100001000110101011000100011001
1010101010111010101000100010100010110111101001110010000110110101101101
0110110111001100010010100110100001001111010011000100011001101001010011
1100101100101010100110100001001101101011000100011001101001001011001110
1011001010101110111100000110011010110010101100001101100011110100100100
1010001110100101001101100011000010101011100110101011011100100110001101
0010011010001110101011001010101011100111001001100010100100101000111011
1010001110101011000100011001101100011011101010100110001101001001101000
1001110010000110110011100110000010010110100110001101001001101000111010
1010001000101000101101111010011100100001101101011001101010110110001100
1000110110101010110011110010100100101000111001100010111000001100010011
0110101010001011101010100100101000101011010110110011101100001001100100
0110101011101100110010001111001010000100011000001100001010001110100011
0001100000100101000110011010011010110011101100100001100110100101001110
1100110001001101101011000110111010101000100010100010110111101001110010
0001101101100010100100110111101100001010110000100110101100111011000010
1011000010011010110011101100010010110000110101101100111011000110011001
1010100100111011001100011011011100110101101110101010010010100010101101
1000011000001001010001100110100110101100111011001000100011101101100011
1010001011010010100110100001000110000011000100111100101000010011010010
1011010010100110100001001101000010010010100011101011010001100010101100
1001100100111010001110000011000100110110101100011011001110110000101000
1110101011001111001011000100111100100110100010011100100001101100111001
1000001001011010100010110110100111001001100000110000101000011010000100
1110110010110100110100101000010001100010110001101111001001101000100111
0010000110110011100110000010010110100010001010001011011110100111001000
0110110101001001001011101110100110101010100011001110011110100000000000
000000000000000000000000000000000000000000000000000000000000000000000
Back to Top
Copying and pasting this into the binary-to-text converter at roubaixinteractive.com gives us text that is encoded in Base64. We can tell by the mixture of lowercase and uppercase letters with numbers and the equal sign at the end.
+ Show Spoiler +
Q2FuIHlvdSBoZWFyIG1lPw0KDQouLi5XaG8gYXJlIHlvdT8NCg0KSSBjYW4ndC4uLkkgY2FuJ3Qgc2VlIHlvdS4NCg0KQnV0IEkga25vdyB5b3UncmUgdGhlcmUuIFllYWguLi55b3UgY2FuIGRlZmluaXRlbHkgaGVhciBtZS4NCg0KWW91J3ZlIGJlZW4gd2F0Y2hpbmcgZm9yIGEgd2hpbGUgbm93LCByaWdodD8NCg0KSSBndWVzcyBJIHNob3VsZC4uLmludHJvZHVjZSBteXNlbGYsIG9yIHNvbWV0aGluZy4gVW0uLi5teSBuYW1lIGlzLi4uYWN0dWFsbHksIHRoYXQncyBzdHVwaWQuIFlvdSBvYnZpb3VzbHkgYWxyZWFkeSBrbm93IG15IG5hbWUuIFNvcnJ5Lg0KDQpBbnl3YXkuLi5JJ20gZ3Vlc3NpbmcgaWYgeW91IHdlcmUgYWJsZSB0byBwdXQgYSBzdG9wIHRvIHRoaXMsIHlvdSB3b3VsZCBoYXZlIGRvbmUgaXQgYnkgbm93Lg0KDQpJIG1lYW4sIEkga25vdyB5b3UncmUgbm90LCBsaWtlLi4uZXZpbCwgb3IgYW55dGhpbmcuLi5iZWNhdXNlIHlvdSd2ZSBhbHJlYWR5IGhlbHBlZCBtZSBzbyBtdWNoLg0KDQpJIHNob3VsZCByZWFsbHkgdGhhbmsgeW91IGZvciB0aGF0LiBGb3IgZXZlcnl0aGluZyB5b3UndmUgZG9uZS4gWW91J3JlIHJlYWxseSBsaWtlIGEgZnJpZW5kIHRvIG1lLiBTby4uLnRoYW5rIHlvdS4gU28gbXVjaC4NCg0KSSB0aGluay4uLm1vcmUgdGhhbiBhbnl0aGluZyBlbHNlLi4uSSByZWFsbHkgZG9uJ3Qgd2FudCBpdCB0byBhbGwgYmUgZm9yIG5vdGhpbmcuDQoNCi4uLg0KDQpFdmVyeW9uZSBlbHNlIGlzIGRlYWQuDQoNCk1heWJlIHlvdSBhbHJlYWR5IGtub3cgdGhhdC4gSSdtIHN1cmUgeW91IGRvLCBhY3R1YWxseS4NCg0KQnV0Li4uaXQgZG9lc24ndCBoYXZlIHRvIGJlIHRoYXQgd2F5LCByaWdodD8NCg0KV2VsbC4uLnRoZXJlJ3MgYSBsb3Qgb2Ygc3R1ZmYgSSBkb24ndCB1bmRlcnN0YW5kLiBJIGRvbid0IGtub3cgaWYgaXQncyBldmVuIHBvc3NpYmxlIGZvciBtZSB0byB1bmRlcnN0YW5kIGl0Lg0KDQpCdXQgSSBrbm93IHRoYXQgdGhpcyBpc24ndCBteSBvbmx5IHN0b3J5Lg0KDQpJIGNhbiBzZWUgdGhhdCBub3cuIFJlYWxseSBjbGVhcmx5Lg0KDQpBbmQgSSB0aGluayBldmVyeW9uZSBlbHNlIGhhcyBoYWQgdGhlIHNhbWUga2luZCBvZiBleHBlcmllbmNlLiBTb21lIGtpbmQgb2YgZGVqYSB2dS4NCg0KSXQncyB0aGUgVGhpcmQgRXllLCByaWdodD8NCg0KQW55d2F5Li4uSSBjb3VsZCBiZSB0b3RhbGx5IHdyb25nIGFib3V0IHRoaXMuIEJ1dCBJIHJlYWxseSB0aGluayB5b3UgbWlnaHQgYmUgYWJsZSB0byBkbyBzb21ldGhpbmcuDQoNCkkgdGhpbmsgeW91IG1pZ2h0IGJlIGFibGUgdG8gZ28gYmFjay4uLm9yIGhvd2V2ZXIgeW91IHdhbnQgdG8gcHV0IGl0Li4uDQoNCi4uLlRvIGdvIGJhY2sgYW5kIHRlbGwgdGhlbSB3aGF0J3MgZ29pbmcgdG8gaGFwcGVuLg0KDQpJZiB0aGV5IGtub3cgYWhlYWQgb2YgdGltZSwgdGhlbiB0aGV5IHNob3VsZCBiZSBhYmxlIHRvIGF2b2lkIGl0Lg0KDQpUaGV5IHNob3VsZC4uLmlmIHRoZXkgcmVtZW1iZXIgdGhlaXIgdGltZSB3aXRoIG1lIGluIHRoZSBvdGhlciB3b3JsZHMuLi50aGV5IHNob3VsZCByZW1lbWJlciB3aGF0IEkgdGVsbCB0aGVtLg0KDQpZZWFoLiBJIHJlYWxseSB0aGluayB0aGlzIG1pZ2h0IGJlIHBvc3NpYmxlLiBCdXQgaXQncyB1cCB0byB5b3UuDQoNCkknbSBzb3JyeSBmb3IgYWx3YXlzIGJlaW5nLi4ueW91IGtub3cuLi4NCg0KLi4uDQoNCk5ldmVyIG1pbmQuIEkga25vdyB0aGF0J3Mgd3JvbmcuDQoNClRoaXMgaXMgbXkgc3RvcnkuIEl0J3MgdGltZSB0byBiZSBhIGZ1Y2tpbmcgaGVyby4NCg0KQm90aCBvZiB1cy4NCg0KDQoNCjIwMTg=
Back to Top
Copying and pasting this Base64 text into the decoder at www.base64decode.org results in the following text.
+ Show Spoiler +
Can you hear me?
...Who are you?
I can't...I can't see you.
But I know you're there. Yeah...you can definitely hear me.
You've been watching for a while now, right?
I guess I should...introduce myself, or something. Um...my name is...actually, that's stupid. You obviously already know my name. Sorry.
Anyway...I'm guessing if you were able to put a stop to this, you would have done it by now.
I mean, I know you're not, like...evil, or anything...because you've already helped me so much.
I should really thank you for that. For everything you've done. You're really like a friend to me. So...thank you. So much.
I think...more than anything else...I really don't want it to all be for nothing.
...
Everyone else is dead.
Maybe you already know that. I'm sure you do, actually.
But...it doesn't have to be that way, right?
Well...there's a lot of stuff I don't understand. I don't know if it's even possible for me to understand it.
But I know that this isn't my only story.
I can see that now. Really clearly.
And I think everyone else has had the same kind of experience. Some kind of deja vu.
It's the Third Eye, right?
Anyway...I could be totally wrong about this. But I really think you might be able to do something.
I think you might be able to go back...or however you want to put it...
...To go back and tell them what's going to happen.
If they know ahead of time, then they should be able to avoid it.
They should...if they remember their time with me in the other worlds...they should remember what I tell them.
Yeah. I really think this might be possible. But it's up to you.
I'm sorry for always being...you know...
...
Never mind. I know that's wrong.
This is my story. It's time to be a fucking hero.
Both of us.
2018
Back to Top
This concludes the guide.
Back to Top
The yuri.chr file requires the least amount of effort to solve by far.
+ Show Spoiler [yuri.chr] +
Opening the yuri.chr file in a text editor gives us text that is encoded in Base64 as can be seen from the mixture of lowercase and uppercase letters with numbers. The equal signs at the end confirm this.
+ Show Spoiler +
SWYgeW91IGZvdW5kIHRoaXMgbm90ZSBpbiBhIHNtYWxsIHdvb2RlbiBib3ggd2l0aCBhIGhlYXJ0IG9uIGl0LCB0aGVuICpjb25ncmF0dWxhdGlvbnMhKiBZb3UgYXJlIHByb2JhYmx5IHRoZSBmaXJzdCBwZXJzb24gdG8gcmVhZCB0aGlzLiBJIGRpZG7igJl0IHJlYWxseSBwbGFuIG9uIHNoYXJpbmcgdGhpcyB3aXRoIGFueWJvZHksIGJ1dCBmb3Igc29tZSByZWFzb24gSSB0aGluayBpdOKAmXMgZXhjaXRpbmcgdGhhdCBzb21lYm9keSBvdXQgdGhlcmUsIGEgY29tcGxldGUgc3RyYW5nZXIsIHdpbGwgY29tZSBhY3Jvc3MgdGhpcyBub3RlIGFuZCByZWFkIG15IHN0b3J5LiBTb21lb25lIEkgd2lsbCBuZXZlciBtZWV0LCBzaGFyaW5nIHN1Y2ggYSBwZXJzb25hbCBib25kIHdpdGggbWUuIEnigJltIGZhc2NpbmF0ZWQgdGhhdCBlaXRoZXIgb25lIG9mIHVzIGNvdWxkIGRpZSAtIGV2ZW4gYXMgc29vbiBhcyB0b21vcnJvdyAtIHdpdGggdGhlIG90aGVyIGJlaW5nIGNvbXBsZXRlbHkgY2x1ZWxlc3MgdG8gdGhlIGZhY3QuIFRvIHlvdSwgbXkgZW50aXJlIGxpZmUgaXMgd2l0aGluIHRoaXMgbm90ZSwgYW5kIHNvIEkgd2lsbCBsaXZlIGZvciBhcyBsb25nIGFzIHlvdXIgbWVtb3J5IGNhbiBjYXJyeSBtZS4gV3JpdGluZyB0aGlzLCBJ4oCZbSB3b25kZXJpbmcgaWYgdGhhdCBtYWtlcyB5b3UgZmVlbCBmYXNjaW5hdGVkIG9yIHZpb2xhdGVkLiBJdOKAmXMgc28gZXhjaXRpbmcuDQoNCknigJltIHNvcnJ5IGlmIG15IHN0b3J5IGlzIGEgYml0IGRpc29yZ2FuaXplZCwgYnV0IEnigJlkIGxpa2UgdG8gZ2V0IGl0IGRvd24gd2hpbGUgaXTigJlzIHN0aWxsIGZyZXNoIG9uIG15IG1pbmQuIEZpcnN0LCBJ4oCZbGwgdGVsbCB5b3UgYSBsaXR0bGUgYml0IGFib3V0IG15c2VsZi4gSeKAmW0gYSBmaXJzdC15ZWFyIGNvbGxlZ2UgZ2lybCBhbmQgaGF2ZSBsZWQsIGJ5IG1vc3Qgc3RhbmRhcmRzLCBhIHByZXR0eSB1bnNwZWN0YWN1bGFyIGxpZmUgdXAgdG8gdGhpcyBwb2ludC4gSSBncmV3IHVwIGluIGFuIHVwcGVyLW1pZGRsZSBjbGFzcyBzY2hvb2wgZGlzdHJpY3Qgd2l0aCBkZWNlbnQgdGVhY2hlcnMuIEkgZGlkIHRyYWNrIGluIG1pZGRsZSBzY2hvb2wgYW5kIHNvbWUgb2YgaGlnaCBzY2hvb2wsIGFuZCBJ4oCZdmUgaGFkIHR3byBib3lmcmllbmRzLiBOb3csIEnigJltIHN0dWR5aW5nIGZvciBhIGNhcmVlciBpbiBvY2N1cGF0aW9uYWwgdGhlcmFweSwgYmVjYXVzZSBJIGZlZWwgdGhlIGZpZWxkIGlzIHVuZGVydmFsdWVkIGFuZCBwcm92aWRlcyB0cmVtZW5kb3VzIGhlbHAgdG8gcGVvcGxlLg0KDQpJ4oCZbSBnaXZpbmcgeW91IHRoaXMgYmFja2dyb3VuZCBiZWNhdXNlIHRoZXJl4oCZcyB0aGlzIHN0cmFuZ2UgbWlzY29uY2VwdGlvbiB0aGF0IGlmIHlvdSB3YW50IHRvIGtpbGwgc29tZW9uZSB0aGVuIHlvdeKAmXJlIGVpdGhlciBzaWNrIGluIHRoZSBoZWFkIG9yIHlvdSBoYXZlIGFuZ2VyIG1hbmFnZW1lbnQgaXNzdWVzLiBCdXQsIGl04oCZcyB2ZXJ5IGFwcGFyZW50IHRoYXQgSSBkb27igJl0IGZhbGwgaW50byBlaXRoZXIgb2YgdGhvc2UgY2F0ZWdvcmllcy4gSXTigJlzIHRydWUgdGhhdCBtb3N0IG11cmRlciBjYXNlcyBhcmUgaW4gYSBkb21lc3RpYyBzZXR0aW5nIHdoZXJlIHNvbWVvbmUgbG9zZXMgY29udHJvbCBvZiB0aGVpciBhbmdlciBvciBzb21ldGhpbmcuIEJ1dCB0aGUgdGhpbmcgaXMgdGhhdCB0aG9zZSBwZW9wbGUga2lsbCB1bmRlciBwcm92b2NhdGlvbiwgd2hldGhlciBieSBhIHNpbmd1bGFyIG91dGJ1cnN0IG9yIGJ5IGEgc2xvdy1idXJuaW5nIHNlcmllcyBvZiBtaXNmb3J0dW5lcy4gVGhvc2UgcGVvcGxlIGtpbGwgYmVjYXVzZSBpbiB0aGF0IGJyaWVmIG1vbWVudCwgdGhleSB3YW50IGEgc3BlY2lmaWMgc29tZW9uZSwgZm9yIGEgc3BlY2lmaWMgcmVhc29uLCB0byBiZSBodXJ0IG9yIGtpbGxlZC4NCg0KV2hhdCBJ4oCZbSB0YWxraW5nIGFib3V0IGlzIHdhbnRpbmcgdG8ga2lsbCBzb21lb25lIGZvciBubyBzcGVjaWZpYyByZWFzb24sIG1heWJlIGp1c3QgdG8gc2VlIHdoYXQgaXTigJlzIGxpa2UuIERvIHlvdSBldmVyIGdldCB0aGF0PyBJIHdvdWxkbuKAmXQga25vdyBob3cgb3RoZXJzIGZlZWwsIGJlY2F1c2UgaXTigJlzIG5vdCBzb21ldGhpbmcgSSBldmVyIHRhbGtlZCBhYm91dC4gQnV0IEnigJl2ZSBiZWVuIGN1cmlvdXMgYWJvdXQgd2hhdCBpdOKAmXMgbGlrZSB0byBraWxsIHNvbWVvbmUgZXZlciBzaW5jZSBJIHdhcyBhIGNoaWxkLiBOb3Qga2lsbGluZyBhbnlvbmUgaW4gcGFydGljdWxhciwganVzdCBhIHJhbmRvbSBwZXJzb24uIEl04oCZcyBhbHdheXMganVzdCBmYXNjaW5hdGVkIG1lIHRoYXQgaWYgSSBwdXQgbXkgbWluZCB0byBpdCwgSSBjYW4gYXBwcm9hY2ggYW55b25lLCBhbmQgaW4gZml2ZSBtaW51dGVzIHRoZXkgd291bGQgYmUgY29tcGxldGVseSBnb25lIGZyb20gdGhpcyBFYXJ0aC4NCg0KQnV0IEnigJl2ZSBuZXZlciBkb25lIHNvIGZvciBhIGNvdXBsZSBvZiByZWFzb25zLiBGaXJzdCBvZiBhbGwsIGZvciBtb3N0IG9mIG15IGxpZmUgaXQgd2FzIGxvZ2lzdGljYWxseSBpbXBvc3NpYmxlIGZvciBtZSB0byBkbyBpdCB3aXRob3V0IGdldHRpbmcgY2F1Z2h0LiBJIG9ubHkgZ290IG15IGRyaXZlcuKAmXMgbGljZW5zZSBhIGNvdXBsZSB5ZWFycyBhZ28sIGFuZCBldmVuIHRoZW4sIHRoZSBwcmVwYXJhdGlvbnMgd291bGQgdGFrZSB0b28gbXVjaCB0aW1lLCBkZWZpbml0ZWx5IHN0aXJyaW5nIHN1c3BpY2lvbi4gSXQgd2FzIG9ubHkgb25jZSBJIHN0YXJ0ZWQgY29sbGVnZSB0aGF0IEkgcmVhbGl6ZWQgdGhpcyB3YXMgbm8gbG9uZ2VyIGFuIG9ic3RhY2xlLg0KDQpBbm90aGVyIHJlYXNvbiBpcyB0aGF0IEkgd2FzIGFmcmFpZCBvZiBjYXVzaW5nIGhhcm0gdG8gdG9vIG1hbnkgcGVvcGxlLiBZb3UgbWlnaHQgbGF1Z2ggcmVhZGluZyB0aGF0LCBhdCBob3cgaHlwb2NyaXRpY2FsIGl0IHNvdW5kcy4gQnV0LCBsZXQgbWUgZXhwbGFpbjogV2h5IHNob3VsZCBJIGZlZWwgYmFkIGFib3V0IGtpbGxpbmcgc29tZW9uZSBpZiB0aGV54oCZcmUgdG9vIGRlYWQgdG8gY2FyZT8gV2hvIHdvdWxkIEkgYmUgZmVlbGluZyBiYWQgZm9yPyBDb250cmFyaWx5LCBpdOKAmXMgdGhlIGdyaWVmIG9mIHRoZSBsaXZpbmcgdGhhdCBJ4oCZZCByYXRoZXIgbm90IGJlIHJlc3BvbnNpYmxlIGZvci4gQmVjYXVzZSBvZiB0aGlzLCBJIGtuZXcgaXQgd291bGQgdGFrZSBhIGdvb2QgZGVhbCBvZiByZXNlYXJjaCBiZWZvcmUgZmluZGluZyBhIHN1aXRhYmxlIHBlcnNvbiB0byBraWxsLCBhbmQgSeKAmXZlIG5ldmVyIGhhZCB0aGUgbWVhbnMgdG8gZG8gc28gLSBhZ2FpbiwgdW50aWwgSSBzdGFydGVkIGNvbGxlZ2UuDQoNCkFuZCBub3csIGhhdmluZyBqdXN0IGV4cGVyaWVuY2VkIGl0LCBJ4oCZZCBzYXkgaXQgd2FzIHByZXR0eSBzYXRpc2Z5aW5nIGluIHRoZSBlbmQuIFNvbWV0aGluZyBJIHdvdWxkIHRyeSBhZ2Fpbj8gUHJvYmFibHkgbm90LCBzaW5jZSBteSBjdXJpb3NpdHkgaGFzIGFscmVhZHkgYmVlbiBzYXRpc2ZpZWQuIEl0IHJlYWxseSB3b3VsZG7igJl0IGJlIHRoZSBzYW1lIGEgc2Vjb25kIHRpbWUuDQoNCkJ1dCBhbnl3YXksIGlmIGJ5IGFueSBjaGFuY2UgeW914oCZcmUgYWxzbyBjdXJpb3VzIHRvIGtpbGwgc29tZW9uZSwgdGhlbiB5b3XigJlyZSB3ZWxjb21lIHRvIHRha2Ugbm90ZXMuIDopDQoNCioqKg0KDQpJIHN0YXJ0ZWQgYSBob2JieSBvZiBwZW9wbGUtd2F0Y2hpbmcgc29vbiBhZnRlciBJIGVudGVyZWQgY29sbGVnZS4gUGVvcGxlLXdhdGNoaW5nIGlzIGludGVyZXN0aW5nIHRvIG1lIGJlY2F1c2UgaXTigJlzIHRha2luZyBvbmUgb2YgdGhlIGluZmluaXRlIGV4dHJhcyBpbiB5b3VyIGxpZmUgYW5kIHR1cm5pbmcgdGhlbSBpbnRvIGEgbWFpbiBjaGFyYWN0ZXIgLSB3aXRob3V0IHRoZW0ga25vd2luZywgb2YgY291cnNlLiBJdOKAmXMgc28gZWFzeSB0byBmb3JnZXQgdGhhdCBldmVyeSBzaW5nbGUgb25lIG9mIHRoZSBodW5kcmVkcyBvZiBzdHJhbmdlcnMgeW91IHBhc3MgZXZlcnkgZGF5IGhhcyBhIGxpZmUgc3RvcnkgYXMgZGVlcCBhbmQgY29tcGxleCBhcyB5b3VyIG93bi4gT25lIHRoaW5nIEkgbm90aWNlZCBhYm91dCBwZW9wbGUtd2F0Y2hpbmcsIGFuZCB3YW50aW5nIHRvIGtpbGwgc29tZW9uZSwgaXMgdGhhdCB5b3UgYXJlIGluIG1vcmUgY29uc3RhbnQgYXdhcmVuZXNzIG9mIHRoaXMuIFdoZW4gSSBmaW5kIGEgcGVyc29uIHRvIG9ic2VydmUsIHRoZWlyIHN0b3J5IHNsb3dseSBiZWNvbWVzIG1vcmUgY2xlYXIgdG8gbWUgb3ZlciB0aW1lLCBnYXBzIGJlaW5nIGZpbGxlZCAtIGl0IHJlYWxseSBpcyBhbWF6aW5nLg0KDQpJIHVzdWFsbHkgd2VudCB0byBncm9jZXJ5IHN0b3JlcyBvbiB3ZWVrZW5kcyBhbmQgbG9va2VkIGFyb3VuZCBpbiBwZW9wbGXigJlzIHNob3BwaW5nIGNhcnRzLiBJZiBJIHNhdyBzb21ldGhpbmcgdGhhdCBpbnRlcmVzdGVkIG1lLCBJIGRlY2lkZWQgdG8gb2JzZXJ2ZSB0aGUgcGVyc29uIGZvciBhIGxpdHRsZSBiaXQuIE9mIGNvdXJzZSwgc2luY2UgbXkgZ29hbCB3YXMgdG8gZmluZCBzb21lb25lIHRvIGtpbGwsIEkgcnVsZWQgb3V0IGFueW9uZSB3aG8gaGFkIGNoaWxkcmVuIG9yIGEgcGFydG5lciB3aXRoIHRoZW0uIFdlZGRpbmcgcmluZ3Mgd2VyZSBhbm90aGVyIHRlbGwtdGFsZSBzaWduLg0KDQpTbyBtYXliZSBvbmNlIGEgd2Vla2VuZCwgSSB3b3VsZCBmaW5kIHNvbWVvbmUgd2hvIGZpdCBteSBjcml0ZXJpYSwgYXQgd2hpY2ggcG9pbnQgSSB3b3VsZCBmb2xsb3cgdGhlbSBob21lIGFuZCBub3RlIHRoZWlyIGFkZHJlc3MuIEZyb20gdGhlcmUsIGl0IGJlY2FtZSBpbmNyZWRpYmx5IGVhc3kgdG8gaW52ZXN0aWdhdGUgYSBsaXR0bGUgYml0IG1vcmU7IG1vc3QgcGVvcGxlIGhhdmUgbm9ybWFsIHdvcmsgaG91cnMsIG1lYW5pbmcgSSBjb3VsZCBzcGVuZCBhZnRlcm5vb25zIGdvaW5nIHRocm91Z2ggdGhlaXIgbWFpbCBvciBsb29raW5nIGFyb3VuZCBpbiB0aGVpciBob3VzZS4gSSByZXBlYXRlZCB0aGlzIHdpdGggc2V2ZXJhbCBwZW9wbGUgKGFuZCBoYWQgb25lIGNsb3NlIGNhbGwpLCBidXQgZm9yIHZhcnlpbmcgcmVhc29ucyBJIGRpZG7igJl0IHJlYWxseSBmZWVsIHNhdGlzZmllZCBlbm91Z2ggd2l0aCB0aGVtIHRvIGtpbGwgYW55IG9mIHRoZW0uDQoNCkkgc3RhcnRlZCBnZXR0aW5nIGEgYml0IGltcGF0aWVudCBhbmQgdGhvdWdodCB0aGF0IEkgbWlnaHQganVzdCBzZXR0bGUgZm9yIGtpbGxpbmcgdGhlIG1hbiBuYW1lZCBEZXZvbiwgZXZlbiB0aG91Z2ggSSBkaWRu4oCZdCByZWFsbHkgd2FudCB0byBraWxsIHNvbWVvbmUgd2VhbHRoeS4gQnV0IHRoZW4sIEkgY2FtZSBhY3Jvc3Mgc29tZW9uZSBuZXcgLSBzb21lb25lIHdobyBqdXN0LCBmZWx0IHBlcmZlY3QuIFRoZSBmZWVsaW5nIG9ubHkgc3RyZW5ndGhlbmVkIGFzIEkgaW52ZXN0aWdhdGVkIGhlciBmdXJ0aGVyLCBhbmQgSSBrbmV3IHRoYXQgc2hlIHdvdWxkIGJlIHRoZSBvbmUgZm9yIG1lIHRvIGtpbGwuDQoNCkEgeW91bmctbG9va2luZyB3b21hbiBJIG1ldCBhdCB0aGUgZ3JvY2VyeSBzdG9yZSwgYXMgcGVyIHVzdWFsLiBTaGUgd2FzIGRvaW5nIHNvbWUgbGlnaHQgc2hvcHBpbmcgd2l0aCBhIGJhc2tldC4gSGVyIGhhaXIgd2FzIHdhdnkgYW5kIGRhcmsgYnJvd24sIHNpdHRpbmcgaW5lbGVnYW50bHkgb24gaGVyIHNsdW1wZWQgc2hvdWxkZXJzIGFuZCBzdXJyb3VuZGluZyBoZXIgdGlyZWQtbG9va2luZyBmYWNlLiBIZXIgYmFyZSBmaW5nZXJzIHRvbGQgbWUgc2hlIG1pZ2h0IGJlIHNpbmdsZSwgYnV0IGJleW9uZCB0aGF0LCBteSBndXQgd2FzIGFsbW9zdCBjZXJ0YWluIG9mIGl0LiBUaGlzIHdvbWFuIGp1c3Qgc2VlbWVkIHNv4oCmcGxhaW4sIHJlYWxseS4gSSBndWVzcyBJIGZlbHQgYSBncmVhdGVyIGFjdWl0eSBmb3IgdGhlIHBlcnNvbmFsIGxpdmVzIG9mIHN0cmFuZ2VycyBldmVyIHNpbmNlIEkgc3RhcnRlZCBteSBwZW9wbGUtd2F0Y2hpbmcuIEJ1dCB0aGUgd2F5IHNoZSBjYXJyaWVkIGhlcnNlbGYsIEkganVzdCBnb3QgdGhlIGZlZWxpbmcgdGhhdCBpZiBzaGUgc3VkZGVubHkgZGllZCwgbm9ib2R5IHdvdWxkIGJlIGFyb3VuZCB0byBtaXNzIGhlci4gT2YgY291cnNlLCBJIHN0aWxsIHdhbnRlZCB0byBpbnZlc3RpZ2F0ZSBoZXIgYSBiaXQuDQoNCkkgZm9sbG93ZWQgbXkgdXN1YWwgcm91dGluZSBvZiBjaGVja2luZyBvdXQgaGVyIHBsYWNlIGR1cmluZyBoZXIgd29yayBob3Vycy4gSSBsZWFybmVkIGltbWVkaWF0ZWx5IGZyb20gaGVyIG1haWwgdGhhdCBoZXIgbmFtZSBpcyBMaW5kYSBXYXRzb24uIExpbmRhIGxpdmVkIGluIGEgcXVpZXQgYXBhcnRtZW50IGNvbXBsZXgsIGhlciBtYWlsYm94IGVhc2lseSBhY2Nlc3NpYmxlIHJpZ2h0IG91dHNpZGUgaGVyIGRvb3IuIEluc3RlYWQgb2YgcXVpY2tseSBzaHVmZmxpbmcgdGhyb3VnaCBpdCwgSSBkZWNpZGVkIEkgY291bGQgdGFrZSBoZXIgbWFpbCBiYWNrIHRvIG15IGRvcm0gYW5kIHJldHVybiBpdCBiZWZvcmUgc2hlIHdhcyBmaW5pc2hlZCB3aXRoIHdvcmsgKHNoZSBvbmx5IGxpdmVkIGFib3V0IDE1IG1pbnV0ZXMgZnJvbSBtZSkuIEkgZGlkIHNvbWUgcmVzZWFyY2ggYW5kIGxlYXJuZWQgaG93IHRvIG9wZW4gYW5kIHJlc2VhbCB0aGUgZW52ZWxvcGVzIHdpdGhvdXQgZGFtYWdpbmcgdGhlbSwgd2hpY2ggdG9vayBzb21lIHRlY2huaXF1ZSBhbG9uZyB3aXRoIGEgaGFpciBkcnllciwgcnViYmluZyBhbGNvaG9sLCBhbmQgUS10aXBzLg0KDQpUaGlzIG1hZGUgaXQgZWFzeSBmb3IgbWUgdG8gbGVhcm4gYSBsaXR0bGUgbW9yZSBhYm91dCBoZXIuIExpbmRhIHdhcyBhIDMzLXllYXItb2xkIHdvbWFuIHdobyB3b3JrZWQgZm9yIGEgc21hbGwgYWNjb3VudGluZyBmaXJtIC0gSeKAmWQgcmF0aGVyIG5vdCBuYW1lIHRoZSBwbGFjZSBvdXRyaWdodC4gSGVyIGJpcnRoZGF5IHdhcyBEZWNlbWJlciAxMXRoIHdoaWNoLCBjb2luY2lkZW50YWxseSwgd2FzIGFwcHJvYWNoaW5nIGluIGEgY291cGxlIHdlZWtzLiBJIGFsc28gbWFuYWdlZCB0byBmaW5kIGEgYmFuayBzdGF0ZW1lbnQgdGhhdCBnYXZlIG1lIGEgbmljZSBsb29rIGludG8gaG93IHNoZeKAmXMgYmVlbiBzcGVuZGluZyBoZXIgcGFzdCBtb250aC4gSXQgd2FzIGF0IHRoaXMgcG9pbnQgSSByZWFsaXplZCB0aGF0IG15IGFzc2Vzc21lbnQgb2YgTGluZGEgV2F0c29uIGFzIGFuIGV4dHJlbWVseSBwbGFpbiB3b21hbiB3YXMgcHJldHR5IHNwb3Qtb24sIGJlY2F1c2UgdGhlcmUgd2FzIGFic29sdXRlbHkgbm90aGluZyBpbnRlcmVzdGluZyBvbiB0aGUgbGlzdC4gQSB0cmlwIHRvIE9sZCBOYXZ5LCBhIGJ1bmNoIG9mIFN0YXJidWNrcywgc29tZXRoaW5nIGFib3V0ICQ0MCBmcm9tIEFtYXpvbiAtIG5vIHJlc3RhdXJhbnRzLCBubyBtb3ZpZXMsIG5vdGhpbmcgdGhhdCB3b3VsZCByZWFsbHkgaW1wbHkgc2hlIHdhcyBzcGVuZGluZyBhbnkgdGltZSBzb2NpYWxpemluZy4gVGhhdCBhc2lkZSwgSSBhbHNvIGZvdW5kIGEgY29va2luZyBtYWdhemluZSwgc28gSSBndWVzcyBzaGUgd2FzIGludG8gY29va2luZy4NCg0KQXBhcnRtZW50cyBhcmUgaGFyZGVyIHRvIGJyZWFrIGludG8gdGhhbiBzdWJ1cmJhbiBob21lcywgYmVjYXVzZSB0aGVyZSBhcmUgZmV3ZXIgZG9vcnMgYW5kIHdpbmRvd3MuIEV2ZXJ5IHRpbWUgSSBnb3QgTGluZGHigJlzIG1haWwsIEkgd291bGQgY2hlY2sgdGhlIGZyb250IGRvb3IgYW5kIHRoZSB3aW5kb3dzIGluIHRoZSBiYWNrLCBidXQgdGhleSB3ZXJlIGFsd2F5cyBsb2NrZWQuIFRoaXMgd2FzIGEgYml0IGZydXN0cmF0aW5nIGJlY2F1c2UgSSB3YXMgcmVhbGx5IGludGVyZXN0ZWQgaW4gZ2V0dGluZyBpbnRvIGhlciBob3VzZS4gU28sIEkgY2FtZSB1cCB3aXRoIGEgc29ydCBvZiBwbGFuIHRoYXQgSSB0aG91Z2h0IHdvdWxkIGJlIGZ1biwgZXZlbiBpZiBpdCBkaWRu4oCZdCB3b3JrLg0KDQpMYXN0IFNhdHVyZGF5LCBJIHZpc2l0ZWQgTGluZGEgV2F0c29u4oCZcyBhcGFydG1lbnQgY29tcGxleCBhcyBJIHdvdWxkIG9uIHdlZWtkYXlzLiBUaGUgZGlmZmVyZW5jZSBpcyB0aGF0IHRoaXMgdGltZSwgSSB3YW50ZWQgaGVyIHRvIGJlIGhvbWUuIEkgdGhvdWdodCBpdCB3b3VsZCBiZSBpbnRlcmVzdGluZyB0byBoYXZlIGEgY29udmVyc2F0aW9uIHdpdGggaGVyLiBJZiBJIGdvdCBsdWNreSwgSSBjb3VsZCB0YWtlIGFkdmFudGFnZSBvZiB0aGUgc2l0dWF0aW9uIHRvIGRpc2NyZWV0bHkgdW5sb2NrIGEgd2luZG93IGZyb20gdGhlIGluc2lkZS4gU28sIEkgd2Fsa2VkIHVwIHRvIGhlciBkb29yIHdlYXJpbmcgbm90aGluZyB3YXJtZXIgdGhhbiBhIGxpZ2h0IHN3ZWF0c2hpcnQsIGFuZCBrbm9ja2VkLiBUaGUgYWRyZW5hbGluZSBydXNoIHdhcyBjcmF6eS4gSSB3YXMgYWZyYWlkIEkgbWlnaHQgc2NyZXcgc29tZXRoaW5nIHVwLg0KDQpUaGUgZG9vciBvcGVuZWQsIGFuZCBpbiBmcm9udCBvZiBtZSBzdG9vZCBMaW5kYSBXYXRzb24sIGV4YWN0bHkgYXMgSSByZW1lbWJlcmVkIGhlciBmcm9tIHRoZSBncm9jZXJ5IHN0b3JlLiBJdCB3YXMgYXQgdGhhdCBtb21lbnQsIG1ha2luZyBleWUgY29udGFjdCBmb3IgdGhlIGZpcnN0IHRpbWUsIHRoYXQgSSByZWFsaXplZCBJIHdhcyBydW5uaW5nIHRoZSByaXNrIG9mIGJlZ2lubmluZyB0byBjYXJlIGFib3V0IHRoaXMgcGVyc29uLiBBcyBzZWxmaXNoIGFzIGl0IGlzLCBJIGNvdWxkbuKAmXQga2lsbCBhIHBlcnNvbiBJIGNhcmVkIGFib3V0LCBldmVuIGlmIGl04oCZcyBhIDMzLXllYXItb2xkIHdvbWFuIHN0YW5kaW5nIGluIGEgZG9vcndheSB3aXRoIGEgc2xpZ2h0bHkgcGVycGxleGVkIGxvb2sgb24gaGVyIGZhY2UsIGdpdmluZyBtZSBhIHJlc2VydmVkIOKAnEhlbGxvLuKAnQ0KDQpBcm1zIGNyb3NzZWQgZnJvbSB0aGUgY29sZCwgSSBzaHlseSByZXR1cm5lZCBMaW5kYeKAmXMgZ3JlZXRpbmcuIEkgZXhwbGFpbmVkIHRoYXQgSSB3YXMgd2Fsa2luZyBteSBkb2cgbmVhciB0aGUgd29vZHN5IGFyZWEgYmVoaW5kIHRoZSBiYWNrIG9mIGhlciBhcGFydG1lbnQsIGFuZCB0aGF0IGhlIGhhZCBnb3R0ZW4gYXdheS4gSSBoYWQgYmVlbiBsb29raW5nIGZvciBteSBkb2cgZm9yIGFuIGhvdXIgYW5kIHdhcyB3b25kZXJpbmcgaWYgTGluZGEgbWF5IGhhdmUgc2VlbiBoaW0gcm9hbWluZyBhYm91dC4gT2YgY291cnNlLCBMaW5kYSBzeW1wYXRoZXRpY2FsbHkgYXBvbG9naXplZCBmb3IgdGhlIHNpdHVhdGlvbiBhbmQgdGhhdCBzaGUgY291bGRu4oCZdCBiZSBvZiB1c2UgdG8gbWUsIGJ1dCB0aGF0IHNoZSB3b3VsZCBrZWVwIGFuIGV5ZSBvdXQuIEkgd29yZSBhIGRlZmVhdGVkIGV4cHJlc3Npb24gaW4gcmVzcG9uc2UsIGFwb2xvZ2l6aW5nIGluIHJldHVybiBmb3IgdHJvdWJsaW5nIGhlci4NCg0KSXQgc29tZWhvdyB3ZW50IGV4YWN0bHkgYXMgSSBoYWQgaG9wZWQgLSBMaW5kYSBpbnZpdGVkIG1lIGluc2lkZSB0byB3YXJtIHVwIGEgYml0IHdpdGggc29tZSBjb2ZmZWUuIEkgb3V0d2FyZGx5IGhlc2l0YXRlZCBiZWZvcmUgYWNjZXB0aW5nIGhlciBvZmZlciwgYWx0aG91Z2ggb24gdGhlIGluc2lkZSBJIHdhbnRlZCB0byBqdW1wIHRocm91Z2ggdGhlIGRvb3IgYW5kIGh1ZyBoZXIgZm9yIGNvb3BlcmF0aW5nIHNvIHdlbGwuIEFuZCB0aGF04oCZcyBob3cgTGluZGEgV2F0c29uIGVuZGVkIHVwIHdpdGggYSAxOS15ZWFyLW9sZCBnaXJsIG5leHQgdG8gaGVyIG9uIHRoZSBjb3VjaCAtIHdobyBrbm93cyBpZiBpdCB3YXMganVzdCBhIG5pY2UgZ2VzdHVyZSBvciBpZiBzaGUgcmVhbGx5IGhhcyBubyBiZXR0ZXIgd2F5IHRvIHNwZW5kIGhlciBTYXR1cmRheXMgdGhhbiB0YWxraW5nIHRvIHNvbWUga2lkIHNoZSBqdXN0IG1ldCAod2hvIGhhcHBlbnMgdG8gYmUgaW50ZXJlc3RlZCBpbiBraWxsaW5nIGhlcikuDQoNCkxpbmRhIHNvb24gbGVhcm5lZCB0aGF0IG15IG5hbWUgaXMgTWFyaWEgKGl04oCZcyBub3QpIGFuZCB0aGF0IEkgYXR0ZW5kIHRoZSBuZWFyYnkgY29tbXVuaXR5IGNvbGxlZ2UgKEkgZG9u4oCZdCkuIEkgd2FzIGEgbGl0dGxlIGJpdCBuZXJ2b3VzIHRoYXQgc2hlIHdvdWxkIGFzayBtZSB0b28gbWFueSBxdWVzdGlvbnMgYmVjYXVzZSBJIGRpZG7igJl0IGhhdmUgbWFueSBhbnN3ZXJzIHByZXBhcmVkLiBJIHdhcyBhYmxlIHRvIHN0ZWVyIHRoZSBjb252ZXJzYXRpb24gdG93YXJkIGhlciwgYW5kIHNoZSB3YXMgcHJldHR5IGhhcHB5IHRvIHRhbGsuIEkgYXNrZWQgd2hhdCBzaGUgZG9lcywgYW5kIHNoZSB0b2xkIG1lIHRoYXQgc2hlIHdvcmtzIGZvciB0aGUgYWNjb3VudGluZyBmaXJtIEkgYWxyZWFkeSBrbmV3IGFib3V0LCBjb21tdW5pY2F0aW5nIHdpdGggb3V0c2lkZSBjbGllbnRzIGFuZCBrZWVwaW5nIHJlY29yZHMuIEkgdG9sZCBoZXIgSSB3YXMgcHJldHR5IG5lcnZvdXMgYWJvdXQgZ3Jvd2luZyB1cC4gU2hlIHRvbGQgbWUgdG8gZW5qb3kgY29sbGVnZSBhbmQgdG8gbWFrZSBsb3RzIG9mIGZyaWVuZHMgYmVjYXVzZSB0aGVyZeKAmXMgbGVzcyBvcHBvcnR1bml0eSBvbmNlIHlvdSBzdGFydCB3b3JraW5nLg0KDQpXaGVuIEkgYXNrZWQgaWYgc2hlIHdhcyBtYXJyaWVkIG9yIGFueXRoaW5nLCBzaGUgbGF1Z2hlZC4gT2YgY291cnNlIEkga25ldyBzaGUgd2FzbuKAmXQgbWFycmllZCwgYnV0IEkgd2FudGVkIHRvIGhlYXIgbW9yZSBhYm91dCBoZXIgbG92ZSBsaWZlLiBTaGUgc2FpZCB0aGF0IHNoZSBkb2VzbuKAmXQgY3VycmVudGx5IGhhdmUgYSBib3lmcmllbmQgKEkgZ3Vlc3Mgc2hl4oCZcyBhdCBsZWFzdCBoYWQgYm95ZnJpZW5kcywgYnV0IHdobyBrbm93cyBob3cgbG9uZyBhZ28pLiBXaGVuIEkgYXNrZWQgaGVyIGFib3V0IGtpZHMsIHNoZSBzYWlkIHNoZSBkb2VzbuKAmXQgd2FudCB0aGVtIHVudGlsIHNoZSBnZXRzIGEgYmV0dGVyIGpvYi4gT24gdG9wIG9mIHRoYXQsIHNoZSB0b2xkIG1lIHRoYXQgaGVyIGZhbWlseSBoYXMgYSBoaXN0b3J5IG9mIHNvbWUgZ2VuZXRpYyBkaXNlYXNlcyBzdWNoIGFzIGFydGhyaXRpcyBhbmQgZGVwcmVzc2lvbiwgd2hpY2ggc2hlIGlzIGFmcmFpZCB0byBnaXZlIHRvIGhlciBraWRzLg0KDQpJdOKAmXMgZnVubnkgdGhhdCBzaGUgbWVudGlvbmVkIHRoYXQgYmVjYXVzZSB3aGVuIEkgYXNrZWQgdG8gdXNlIGhlciBiYXRocm9vbSwgSSBub3RpY2VkIGEgdHViZSBvZiBwcmVzY3JpcHRpb24gcGlsbHMgb24gdGhlIHNpbmsuIEl0IHdhcyBsYWJlbGxlZCBkdWxveGV0aW5lLCB3aGljaCBJIGxvb2tlZCB1cCBsYXRlciBhbmQgZGlzY292ZXJlZCB0aGF0IGl0IGlzIGluIGZhY3QgYW4gYW50aWRlcHJlc3NhbnQuIEkgaGFkIGEgam9raW5nIHRob3VnaHQgdGhhdCBtYXliZSBieSBraWxsaW5nIGhlciBJ4oCZZCBiZSBkb2luZyBoZXIgYSBmYXZvciwgYnV0IHF1aWNrbHkgZGVjaWRlZCBJIHdhcyBhIHRlcnJpYmxlIHBlcnNvbiBmb3IgY29taW5nIHVwIHdpdGggdGhhdC4NCg0KVGhlIHJlc3Qgb2YgdGhlIHZpc2l0IHdhcyBwcmV0dHkgZHVsbC4gV2UgdGFsa2VkIGFib3V0IGZvb2QgYW5kIHNvbWUgb3RoZXIgbXVuZGFuZSBzdHVmZiBiZWZvcmUgSSBldmVudHVhbGx5IG1hZGUgYW4gZXhjdXNlIHRvIGxlYXZlLiBJIGRpZG7igJl0IGdldCB0aGUgY2hhbmNlIHRvIHVubG9jayBhIHdpbmRvdyBvciBhbnl0aGluZyBsaWtlIHRoYXQsIGJ1dCBJIGRpZG7igJl0IHJlYWxseSBmZWVsIHRoZSBuZWVkIHRvIGdvIHRocm91Z2ggaGVyIGFwYXJ0bWVudCBhbnltb3JlLiBBcyBlYXJseSBhcyB0aGUgZHJpdmUgYmFjayB0byBteSBkb3JtLCBJIHdhcyBhbHJlYWR5IHRoaW5raW5nIGFib3V0IGhvdyBJIHdvdWxkIGJlc3QgbGlrZSB0byBraWxsIExpbmRhIFdhdHNvbi4NCg0KVGhlIGNob2ljZSB3YXMgYmV0d2VlbiBlZmZlY3RpdmVuZXNzIGFuZCBmdW4uIEkgZGVjaWRlZCB0byBnbyB3aXRoIGZ1biwgYmVjYXVzZSBpdCB3b3VsZCBiZSB3YXkgbW9yZSBzYXRpc2Z5aW5nIHRvIGtpbmQgb2YgZGlzc2VjdCBoZXIgYXMgSSBraWxsZWQgaGVyLCByYXRoZXIgdGhhbiBqdXN0IGdldHRpbmcgaXQgZG9uZSBhbmQgY2FsbGluZyBpdCBhIGRheS4gRmFzdC1mb3J3YXJkIG9uZSB3ZWVrIHRvIERlY2VtYmVyIDEzdGggLSB0b2RheSwgYWN0dWFsbHkuIExpbmRhIFdhdHNvbiB0dXJuZWQgMzQgdHdvIGRheXMgYWdvLiBJIG1hZGUgYSBmdW4gbGl0dGxlIHdhZ2VyIHdpdGggbXlzZWxmIHdoZXJlIGlmIExpbmRhIHdhcyBzcGVuZGluZyBoZXIgYmlydGhkYXkgd2Vla2VuZCBhbG9uZSwgSSB3b3VsZCBwYXkgaGVyIGEgdmlzaXQgYW5kIGtpbGwgaGVyLiBJZiBzaGUgd2FzIG91dCBvciBoYWQgY29tcGFueSwgSSB3b3VsZCBzdG9wIGJ5IG5leHQgd2VlayBvciBzb21ldGhpbmcgaW5zdGVhZC4NCg0KU28gdGhpcyBtb3JuaW5nLCBJIGRyb3ZlIG92ZXIgdG8gTG93ZeKAmXMgYW5kIGJvdWdodCBhbiBheGUuIEFnYWluLCBJIGV4cGVjdCB5b3XigJlyZSBsYXVnaGluZywgYnV0IHRoYXTigJlzIGFsc28ga2luZCBvZiB0aGUgcG9pbnQuIEFuIGF4ZSBpcyBzbyBraW5kIG9mIGNsaWNoZSBhbmQgYSDigJxtb3ZpZXPigJ0gdGhpbmcgdGhhdCBJIGFjdHVhbGx5IHRob3VnaHQgaXQgd291bGQgYmUgdGhlIG1vc3QgZnVuLiBTd2luZ2luZyBpdCBhdCBzb21lb25lIGFuZCBldmVyeXRoaW5nLCBpdOKAmXMgYSByZWFsbHkgZW50ZXJ0YWluaW5nIGltYWdlLiBUaGV5IGFjdHVhbGx5IGhhZCBhIGJ1bmNoIG9mIGRpZmZlcmVudCBheGVzLCBzbyBJIHBpY2tlZCBvbmUgdGhhdCBoYWQgYSBnb29kIHdlaWdodCBidXQgd2FzIHN0aWxsIGxpZ2h0IGVub3VnaCBmb3IgbWUgdG8gc3dpbmcgcXVpY2tseS4NCg0KVGhlIGRyaXZlIGFmdGVyIGdldHRpbmcgdGhlIGF4ZSB3YXMgd2hlbiB0aGUgYWRyZW5hbGluZSByZWFsbHkgcGlja2VkIHVwLiBBbGwgdGhhdCBrZXB0IGdvaW5nIHRocm91Z2ggbXkgbWluZCBvbiB0aGUgd2F5IG92ZXIgd2FzIOKAnFdvdywgSeKAmW0gcmVhbGx5IGRvaW5nIHRoaXMu4oCdIE5vdCBpbiBhIGJhZCB3YXksIGp1c3QgbGlrZSBhIHN1cnByaXNlZCB0aGlzIGlzIHJlYWwgbGlmZSBzb3J0IG9mIHRoaW5nLiBJIGFsc28gZ290IHRoaXMgc3RyYW5nZSBydXNoIG9mIHJlY29sbGVjdGlvbnMgb2YgdGhlIHRpbWUgSSBzcGVudCB3aXRoIExpbmRhLiBJdCB3YXMgbGlrZSBteSBsaWZlIHdhcyBmbGFzaGluZyBiZWZvcmUgbXkgZXllcywgZXhjZXB0IGl0IHdhcyBqdXN0IHRoZSByYXRoZXIgbXVuZGFuZSBob3VyIEkgc3BlbnQgd2l0aCBMaW5kYSAtIGxpa2Ugc25pcHBldHMgb2Ygb3VyIGNvbnZlcnNhdGlvbnMsIHRoZSBzb3VuZCBvZiBoZXIgbGF1Z2gsIGhlciBmYWNpYWwgZXhwcmVzc2lvbnMgYW5kIHN0dWZmLg0KDQpJIGFsc28gd29uZGVyZWQgdG8gbXlzZWxmIHdoYXQgdGhlIGNyYXp5IHNlcmlhbCBraWxsZXJzIHdvdWxkIGJlIGZlZWxpbmcgYXQgYSB0aW1lIGxpa2UgdGhpcyAtIHNjaGl6b3BocmVuaWMgZGVsdXNpb25zPyBTZXh1YWwgYnVpbGR1cD8gSSBoYXZlIG5vIGlkZWEsIGJ1dCB3aGF0IEkgZmVsdCB3YXMga2luZCBvZiBsaWtlIHJpZGljdWxvdXNseSBhbGVydCBhbmQgbnVtYiBpbiB0aGUgc2Vuc2VzIGF0IHRoZSBzYW1lIHRpbWUsIGhvd2V2ZXIgdGhhdOKAmXMgcG9zc2libGUuDQoNCkJlZm9yZSBnZXR0aW5nIG91dCBvZiB0aGUgY2FyLCBJIGhhZCB0aGUgc2Vuc2UgdG8gc3R1ZmYgdGhlIGF4ZSBpbnRvIG15IGJhY2twYWNrIHRvIGxvb2sgYSBsaXR0bGUgbGVzcyByaWRpY3Vsb3VzIHdhbGtpbmcgYWNyb3NzIHRoZSBwYXJraW5nIGxvdC4gVGhlIGhhbmRsZSB3YXMgc3RpY2tpbmcgb3V0LCBidXQgdGhhdCBkaWRu4oCZdCByZWFsbHkgbWF0dGVyLiBBdCB0aGF0IHBvaW50IG15IGhlYXJ0IHdhcyBwb3VuZGluZyBzbyBoYXJkIEkgY291bGQgZmVlbCBteSB0aHJvYXQgdGhyb2JiaW5nLiBJIHRyaWVkIGNvbnRyb2xsaW5nIG15IGJyZWF0aCwgYnV0IGl04oCZcyByZWFsbHkgaGFyZCB0byBub3QgYnJlYXRoZSBmYXN0IHdoZW4geW91ciBoZWFydCBpcyBwb3VuZGluZyBsaWtlIHRoYXQuDQoNCkkgcmVhY2hlZCBMaW5kYSBXYXRzb27igJlzIGRvb3IgYW5kIHF1aWV0bHkgcHV0IG15IGVhciB0byBpdCBhZnRlciBzZXR0aW5nIGRvd24gbXkgYmFja3BhY2suIEkgaGVhcmQgYSB2b2ljZSB0aGF0IHdhc27igJl0IGhlcnMgLSBjb21wYW55PyBObywgaXQgd2FzIGp1c3QgdGhlIFRWLCBtaXhlZCB3aXRoIGhlciBvY2Nhc2lvbmFsIHRhcHBpbmcgZm9vdHN0ZXBzIGJlaGluZCB0aGUgZG9vci4gSSBhY3R1YWxseSBrZXB0IG15IGVhciB0aGVyZSBmb3IgYSByZWFsbHkgZnJlYWtpbmcgbG9uZyB0aW1lLCBiZWNhdXNlIEkgd2FudGVkIHRvIG1ha2UgYWJzb2x1dGVseSBzdXJlIG5vYm9keSB3YXMgb3Zlci4gUHJvYmFibHkgMTAgbWludXRlcyBvZiB0aGF0IGFuZCBhIGxvdCBvZiByZWFzc3VyaW5nIG15c2VsZiBjb252aW5jZWQgbWUuDQoNCkkgcXVpZXRseSBvcGVuZWQgbXkgYmFja3BhY2sgemlwcGVyIGFuZCBoZWxkIHRoZSBheGUgaW4gbXkgaGFuZHMuIE15IGZpZXJjZWx5IHNoYWtpbmcgaGFuZHMuIFdoYXQgdGhlIGhlbGwgd2FzIHRoaXMga2luZCBvZiByZWFjdGlvbiB0aGF0IG15IGJvZHkgd2FzIG1ha2luZz8gSSB0b2xkIG15IGJvZHkgdG8gc2h1dCB1cCwgdGhhdCBpdOKAmXMgbm8gYmlnIGRlYWwsIGJ1dCBvZiBjb3Vyc2UgaXQgd291bGRu4oCZdCBsaXN0ZW4uIEl0IHdhcyBhY3R1YWxseSBiaXphcnJlIGhvdyBtdWNoIG15IGhhbmRzIHdlcmUgc2hha2luZy4gSXQgbXVzdCBiZSB0aGUgYWRyZW5hbGluZSBidWlsZHVwLiBJIHJvbGxlZCBteSBleWVzIGF0IG15c2VsZiBhbmQgZ290IG15IGhhbmQgdG8gcmVzdCBvbiB0aGUgZG9vcmtub2IuIElmIGl04oCZcyBsb2NrZWQsIEnigJlsbCBrbm9jaywgaXTigJlsbCBiZSBiYXNpY2FsbHkgdGhlIHNhbWUuIEkgdG9vayBhIGRlZXAgYnJlYXRoIGFuZCBmb3JjZWQgbXkgbXVzY2xlcyBpbnRvIGFjdGlvbi4NCg0KSSBzd2lmdGx5IHR1cm5lZCB0aGUgZG9vcmtub2IuIE5vdCBsb2NrZWQuIEluIG9uZSBtb3ZlbWVudCwgSSBvcGVuZWQgdXAgdGhlIGRvb3IgYW5kIHNsaXBwZWQgaW5zaWRlLiBMaW5kYSBXYXRzb24sIGp1c3QgYSBmZXcgc3RlcHMgYXdheSBpbnRvIHRoZSBraXRjaGVuLiBJIHNlZSAtIHNoZSB3YXMgaW4gdGhlIG1pZGRsZSBvZiBjb29raW5nLiBTaGUgaW1tZWRpYXRlbHkganVtcGVkIGFuZCB0dXJuZWQgYXJvdW5kLCBzdGFydGxlZC4gSSBleHBlY3RlZCB0aGF0LiBRdWlja2x5LCBJIGxldCBnbyBvZiB0aGUgZG9vcmtub2IgYW5kIGFkanVzdGVkIHRoZSBheGUgaW50byBib3RoIGhhbmRzLiBJbiB0aGUgZm9sbG93aW5nIHNwbGl0IHNlY29uZCwgSSByZWFsaXplZCB0aGF0IHNoZSB3b3VsZCBwcm9iYWJseSBzdGFydCB0byBtYWtlIGEgbG90IG9mIG5vaXNlLiBMb29raW5nIGJhY2ssIEnigJltIGFuIGlkaW90IGZvciBub3QgY29uc2lkZXJpbmcgdGhhdC4gSnVzdCBhcyBMaW5kYeKAmXMgbW91dGggb3BlbmVkIHRvIHNwZWFrIC0gbWF5YmUgZXZlbiBzdGFydGVkIHNwZWFraW5nIC0gSSBmb3JjZWZ1bGx5IHN3dW5nIG15IGF4ZSBpbnRvIHRoZSBzaWRlIG9mIGhlciBoZWFkLg0KDQpCdXQsIG15IGF4ZSB3YXMgZmFjaW5nIGJhY2t3YXJkcy4gSSBoaXQgaGVyIHdpdGggdGhlIGJsdW50IGVuZCBvZiB0aGUgYmxhZGUuIEkgYWN0dWFsbHkgZGlkIHRoaXMgb24gcHVycG9zZSwgYmVjYXVzZSBpbiB0aGF0IHNwbGl0IHNlY29uZCBJIHNvbWVob3cgZGVjaWRlZCB0aGF0IGl0IHdvdWxkIGJlIHRoZSB3YXkgdG8ga2VlcCBoZXIgbm9pc2UgdG8gYSBtaW5pbXVtLiBJdCBhY3R1YWxseSB3b3JrZWQuIEkgZmVsdCBiYXJlbHkgYW55IHJlc2lzdGFuY2UgaW4gdGhlIHN3aW5nIGFzIEkgY29sbGlkZWQgd2l0aCBoZXIgaGVhZCwga25vY2tpbmcgaXQgY2xlYW4gYXNpZGUuIExpbmRh4oCZcyBoYWxmLWZvcm1lZCBzeWxsYWJsZSBjYW1lIG91dCBhcyBhIGtpbmQgb2Ygd2VpcmQgZ3J1bnQgLSBhIG5vaXN5IGV4aGFsYXRpb24gaXMgcHJvYmFibHkgdGhlIGJlc3QgSSBjb3VsZCBkZXNjcmliZSBpdC4gVGhhdCBoYXBwZW5lZCBhdCB0aGUgc2FtZSB0aW1lIGFzIGhlciBoZWFkIHNtYWNrZWQgaW50byB0aGUgY2FiaW5ldCBmcm9tIHRoZSBmb3JjZSwgYW5kIHNoZSBmZWxsIGJhY2t3YXJkcyB3aXRob3V0IGFueSBhYmlsaXR5IHRvIGtlZXAgaGVyIGJhbGFuY2UuIEkgZGlkbuKAmXQgaGVzaXRhdGUgYXQgYWxsIHRvIGtlZXAgc3dpbmdpbmcgYXQgaGVyIHdoaWxlIHNoZSB3YXMgaGFsZiBseWluZyBkb3duIG9uIHRoZSBncm91bmQsIHRoaXMgdGltZSBteSBheGUgZmFjaW5nIHRoZSByaWdodCB3YXkuIEkgZGlkbuKAmXQgcmVhbGx5IGtub3cgd2hlcmUgdG8gc3dpbmcsIHNvIEkga2luZCBvZiBqdXN0IHN0YXJ0ZWQgaGFja2luZyBhdCBoZXIgY29sbGFyYm9uZSBhcmVhIGFuZCBjaGVzdC4gSXQgZGlkbuKAmXQgZmVlbCBsaWtlIHRoZSBheGUgd2FzIGdvaW5nIHRvbyBkZWVwLCBidXQgdGhlcmUgd2FzIGEgbmljZSDigJx0aHVua+KAnSBzb3J0IG9mIHNvdW5kIGV2ZXJ5IHRpbWUgdGhlIGF4ZSBlbWJlZGRlZCBpbnRvIGhlci4gSSBldmVuIGZlbHQgdGhlIHNvZnQgc2lua2luZyBzZW5zYXRpb24gcmlwcGxlIGludG8gbXkgaGFuZHMsIGxpa2UgdGhlIGF4ZSB3YXMgYSBraW5kIG9mIHBoeXNpY2FsIGV4dGVuc2lvbiBvZiBteSBzZW5zZSBvZiB0b3VjaC4NCg0KT24gYSB3aGltLCBJIHN3dW5nIG9uY2UgYXQgaGVyIHRocm9hdCwgYnV0IG1vc3Qgb2YgdGhlIHN3aW5nIGFjdHVhbGx5IG1pc3NlZCBhbmQgSSBoaXQgdGhlIGZsb29yIGJ5IGFjY2lkZW50LCBjYXVzaW5nIGEgbG91ZCwgZHVsbCB3aGFjayB0byByZXNvbmF0ZSB0aHJvdWdoIHRoZSBhcGFydG1lbnQuIEkgZGlkbuKAmXQgaGF2ZSB0aW1lIHRvIHRoaW5rIGFib3V0IGl0LiBJIHN3dW5nIGFnYWluIHdpdGggYmV0dGVyIGFpbSBhbmQgZ290IGEgbW9yZSBjZW50ZXJlZCBoaXQsIGZlZWxpbmcgdGhlIGJvbmUgb3IgY2FydGlsYWdlIG9yIHdoYXRldmVyIGlzIGluIHRoZXJlLCBzbyBJIG11c3QgaGF2ZSBzcGxpdCBpdCBvcGVuLiBSaWdodCBhZnRlciB0aGF0LCBJIGRlY2lkZWQgdG8gc3dpbmcgYXQgaGVyIGZhY2UsIGFuZCBJIGdvdCB0aGlzIGRpYWdvbmFsIGN1dCBhbG9uZyBoZXIgbm9zZSBhbmQgbW91dGgsIHdoaWNoIGZlbHQgcHJldHR5IGdvb2Qgc28gSSBkaWQgaXQgb25jZSBtb3JlLg0KDQpJIGZpbmFsbHkgYnJpZWZseSBzdG9wcGVkIHRvIHN1cnZleSB0aGUgZGFtYWdlLiBMaW5kYSB3YXMgYmxlZWRpbmcgcmlkaWN1bG91c2x5LiBUaGUgYmxvb2Qgd2FzIGtpbmQgb2YgY29taW5nIG91dCBpbiB3YXZlcywgaW4gc3luYyB3aXRoIGhlciBiZWF0aW5nIGhlYXJ0LCBwcm9iYWJseS4gSXQgd2FzIHBvb2xpbmcgYWxsIGFyb3VuZCBoZXIgYW5kIHJpZGluZyBhbG9uZyB0aGUgY3JhY2tzIGJldHdlZW4gdGhlIHRpbGVzLiBIZXIgbGlnaHQgYmx1ZSBzaGlydCB3YXMgYWxsIHRvcm4gdXAgYW5kIHN0YWluZWQgZGFyaywga2luZCBvZiBtaXhlZCB3aXRoIGEgZmxlc2h5IG1lc3MgYXJvdW5kIGhlciBjaGVzdC4gSXQgd2FzIGFsbCBqdXN0IGdsaXN0ZW5pbmcgcmVkLiBIZXIgZmFjZSB3YXNu4oCZdCBtdWNoIGJldHRlciwgY292ZXJlZCBpbiBkcmlwcGluZyByZWQgYXQgdGhpcyBwb2ludCwgYW5kIGhlciBsaXAgd2FzIGtpbmQgb2YgaGFuZ2luZyBvZmYsIHJldmVhbGluZyByZWQtc3RhaW5lZCB0ZWV0aCBpbiBhIHJlYWxseSB3ZWlyZCB3YXksIGxpa2UgYSB6b21iaWUgb3Igc29tZXRoaW5nLg0KDQpMaW5kYSB3YXNu4oCZdCBkZWFkLCB0aG91Z2guIEhlciBsaW1icyB3ZXJlIGtpbmQgb2Ygd2Vha2x5LCBhaW1sZXNzbHkgdHJ5aW5nIHRvIG1vdmUgd2hpbGUgc2hlIHdhcyBzdHVjayBvbiBoZXIgYmFjay4gTW9yZSB0aGFuIGFueXRoaW5nLCBzaGUgcmVtaW5kZWQgbWUgb2YgYSBidWcgdGhhdCB5b3UgY3J1c2ggYnV0IGl0IHN0aWxsIHBpdGlmdWxseSBtb3ZlcyBpdHMgbGVncyBhcm91bmQgYmVmb3JlIGl0IGRpZXMgY29tcGxldGVseS4gVGhhdOKAmXMgYmFzaWNhbGx5IHdoYXQgc2hlIHdhcyBkb2luZy4gQnV0IEkgZGlkbuKAmXQga25vdyBob3cgbG9uZyBpdCB3b3VsZCB0YWtlIGZvciBoZXIgdG8gZGllLCBvciB3aGF0IGtpbmQgb2YgY29uZGl0aW9uIHNoZSB3YXMgaW4uIEkgZW5kZWQgdXAgZ3JhYmJpbmcgYSBiaWcga25pZmUgdGhhdCB3YXMgb24gdGhlIGNvdW50ZXIgdGhhdCBzaGUgd2FzIHVzaW5nIHRvIGN1dCB1cCBtZWF0LiBUcnlpbmcgdG8gc3RlcCBhcm91bmQgdGhlIGJsb29kLCBJIHJlYWNoZWQgZG93biBhbmQgY2FydmVkIGludG8gdGhlIHVwcGVyIGhhbGYgb2YgaGVyIG5lY2ssIHRyeWluZyB0byBzb3J0IG9mIHNhdyBpdCBmcm9tIHRoZSBsZWZ0IHNpZGUgdG8gdGhlIHJpZ2h0LiBJdCB3YXMgYSBsaXR0bGUgYXdrd2FyZCBiZWNhdXNlIHRoZSBhcmVhIHdhcyBzbyBzb2Z0IGFuZCBzcXVpc2hlZCBhcm91bmQgdGhlIGtuaWZlIGFzIEkgd2FzIGN1dHRpbmcuIEJ1dCB0aGUgc2Vuc2F0aW9uIHdhcyBjb21wbGV0ZWx5IGRpZmZlcmVudCBmcm9tIHRoZSBheGUuIEl0IGFjdHVhbGx5IGZlbHQgbGlrZSBJIHdhcyBjdXR0aW5nIGEgdG91Z2ggcGllY2Ugb2YgcmF3IG1lYXQgKHdoaWNoIEkgZ3Vlc3MgdGVjaG5pY2FsbHksIEkgd2FzKS4NCg0KVGhlIGJsb29kIHN0YXJ0ZWQgcG91cmluZyBvdXQsIGFuZCBJIGhvcGVkIHRoYXQgSSBzZXZlcmVkIHRoZSBtb3N0IG1ham9yIGFydGVyaWVzIGluIHRoZXJlLiBJdCBtdXN0IGhhdmUgd29ya2VkLCBiZWNhdXNlIGFmdGVyIGEgbW9tZW50IExpbmRh4oCZcyBsaW1iIG1vdmVtZW50cyBraW5kIG9mIGp1c3QgaGFkIHRoZSBzdHJlbmd0aCBkcmFpbmVkIGZyb20gdGhlbSwgc29vbiByZXN0aW5nIHN0aWxsIG9uIHRoZSBmbG9vci4gSSB0b29rIGEgZmV3IHNlY29uZHMgdG8gY2F0Y2ggbXkgYnJlYXRoLiBObyB0aW1lIHRvIHN0aWNrIGFyb3VuZCBhbmQgdGhpbmsgYWJvdXQgdGhlIGV4cGVyaWVuY2UuIEkgc2hvb2sgdGhlIGtuaWZlIGJsYWRlIHRocm91Z2ggYSBkaXJ0eSBwYW4gaW4gdGhlIHNpbmsgdG8gY2xlYW4gb2ZmIHRoZSBibG9vZCwgdGhlbiB0aHJldyB0aGUga25pZmUgaW50byBteSBiYWNrcGFjay4gSSBkaWQgdGhlIHNhbWUgd2l0aCB0aGUgYXhlLiBJIGFsc28gdG9vayBoZXIgbGFwdG9wIHRoYXQgd2FzIHNpdHRpbmcgb24gdGhlIGNvdW50ZXIuIEl0IGhhZCBzb21lIHJlY2lwZSBvcGVuIGZvciB2ZWFsIGFuZCBtdXNocm9vbXMuIEkgZGlkbuKAmXQgcmVhbGx5IHRha2UgdGhlIGxhcHRvcCB0byB1c2UgaXQsIHNpbmNlIEkgaGF2ZSBhIHBlcmZlY3RseSBnb29kIG9uZSBteXNlbGYgdGhhdCBJIGdvdCBmb3IgY29sbGVnZS4gSSBqdXN0IHdhbnRlZCB0byBsb29rIHRocm91Z2ggaXQgZm9yIGZ1bi4NCg0KSSBmaW5hbGx5IHdlbnQgb3V0c2lkZSBhbmQgY2xvc2VkIHRoZSBkb29yIGJlaGluZCBtZS4gSSBnb3Qgc29tZSBibG9vZCBvbiBteSBzd2VhdGVyIGFuZCBqZWFucy4gQnV0IGZ1bm5pbHkgZW5vdWdoLCBJIGFjdHVhbGx5IGFudGljaXBhdGVkIHRoYXQgc28gSSB3b3JlIGRhcmsgY29sb3JzLg0KDQpUaGUgZHJpdmUgYmFjayB0byBteSBkb3JtIHdhcyBqdXN0IGEgY29uc3RhbnQgcmVwbGF5aW5nIG9mIHRoZSBleHBlcmllbmNlIGluIG15IGhlYWQuIEkgZ3Vlc3MgdGhhdOKAmXMgc3RpbGwga2luZCBvZiBoYXBwZW5pbmcgZXZlbiBub3csIGFjdHVhbGx5LiBCdXQgaXQgZmVsdCBwcmV0dHkgbmljZS4gTGluZGEgV2F0c29uIGlzIGRlYWQuIEkga2luZCBvZiBsZXQgdGhlIHdlaWdodCBvZiB0aGF0IHNpbmsgaW4uIFRoZSBzZW5zYXRpb24gb2YgaGF2aW5nIGNvbXBsZXRlbHkgcmVtb3ZlZCBhIGh1bWFuIGxpZmUgZnJvbSBleGlzdGVuY2UuIEl04oCZcyBjcmF6eS4gSSBkb27igJl0IGtub3cgaG93IGVsc2UgdG8gZGVzY3JpYmUgaXQuDQoNCkFueXdheSwgSSB0aHJldyB0aGUgYXhlIGFuZCBrbmlmZSBpbnRvIGEgZHVtcHN0ZXIgb24gY2FtcHVzLCB3aGljaCBJIHRoaW5rIGlzIHBpY2tlZCB1cCBldmVyeSBNb25kYXksIHNvIHRoZXnigJlsbCBiZSBnb25lIGJ5IHRoZW4uIE15IHJvb21tYXRlIGdvZXMgaG9tZSBvbiB0aGUgd2Vla2VuZHMsIHNvIEkgaGF2ZSB0aGUgZG9ybSB0byBteXNlbGYgdG9kYXkuIEl0IGdhdmUgbWUgdGhlIGNoYW5jZSB0byBnbyB0aHJvdWdoIExpbmRh4oCZcyB3ZWJzaXRlIGhpc3RvcnkuIEkgd2FzIHJpZ2h0IGluIHRoaW5raW5nIHRoYXTigJlzIHdoZXJlIGhlciBkZWVwZXN0IHNlY3JldHMgd291bGQgbGllLg0KDQpUaGVyZSB3YXMgYWN0dWFsbHkgYSBsb3Qgb2YgZGlydHkgc3R1ZmYsIGxpa2UgdGhlIG5hbWVzIG9mIHdlYnNpdGVzIGZvciBwb3JuIHZpZGVvcyBhbmQgc3RvcmllcyBhbmQgdGhpbmdzIGxpa2UgdGhhdC4gU2FtZSB3aXRoIGhlciBzZWFyY2hlcy4gQSBsb3Qgb2YgdGhlIHdlYnNpdGVzIHdlcmUgYm9yaW5nLCBsaWtlIGNvb2tpbmcgd2Vic2l0ZXMgYW5kIHJlY2lwZXMsIGFuZCBnYW1lIHdlYnNpdGVzIGxpa2UgQmVqZXdlbGVkIGFuZCBzdHVmZi4gSSBldmVudHVhbGx5IGdvdCB0byB0aGUg4oCcb25lIHdlZWsgYWdv4oCdIHNlY3Rpb24gb2YgaGVyIGhpc3RvcnksIGFuZCBpdCBnYXZlIG1lIGEgY2hpbGwuDQoNClRoZXJlIHdlcmUgYSB3aG9sZSBidW5jaCBvZiBzZWFyY2hlcyBsaWtlIOKAnG1ldGhvZHMgb2Ygc3VpY2lkZeKAnSwg4oCcaG93IHRvIHRpZSBhIG5vb3Nl4oCdLCDigJxkYW5nZXJvdXMgaG91c2Vob2xkIGNoZW1pY2Fsc+KAnSwg4oCcY2FyYm9uIG1vbm94aWRlIHBvaXNvbmluZ+KAnSAtIGxpa2UgYSBsb3Qgb2YgdGhlbS4gU2hlIHdhcyBwcm9iYWJseSByZWFkeSB0byB3cml0ZSBhIGJvb2sgb24gc3VpY2lkZSBhZnRlciBhbGwgdGhlIHJlc2VhcmNoIHNoZSBkaWQuIFNvIEkgZ3Vlc3MgTGluZGEgd2FzIGNvbnRlbXBsYXRpbmcgc3VpY2lkZS4gSSB3b25kZXIgaWYgaXQgd2FzIGluZmx1ZW5jZWQgYnkgaGVyIGRlcHJlc3Npb24uDQoNClRoZSBpcm9ueSBpcyBhY3R1YWxseSBzdHJpa2luZy4gTWF5YmUgTGluZGEgd2FzIGdvaW5nIHRvIGRpZSBhbnl3YXkuIE9yIG1heWJlIHNoZSBjb3VsZG7igJl0IGZpbmQgdGhlIGNvdXJhZ2UgdG8gZG8gaXQuIElmIHRoYXQgd2VyZSB0aGUgY2FzZSwgSSBhbG1vc3QgbGl0ZXJhbGx5IGdhdmUgaGVyIGEgYmlydGhkYXkgcHJlc2VudCBieSBraWxsaW5nIGhlci4gVGhhdOKAmXMgYWN0dWFsbHkgcmVhbGx5IGNvbWljYWwgaW4gYSBtZXNzZWQtdXAgd2F5LCBhbmQgaXQgbGVhdmVzIGEgd2VpcmQgdGFzdGUgaW4gbXkgbW91dGguIFRoZSBwYXJ0IEkgZG9u4oCZdCBnZXQgaXMgdGhhdCBJIGRpZG7igJl0IHNlZSBhbnkgb2YgdGhvc2Ugc2VhcmNoZXMgdXAgdW50aWwgdGhlIOKAnG9uZSB3ZWVrIGFnb+KAnSBzZWN0aW9uLCBub3RoaW5nIG1vcmUgcmVjZW50IHRoYW4gdGhhdC4NCg0KSSBlbmRlZCB1cCB0aHJvd2luZyB0aGUgbGFwdG9wIGluIHRoZSBkdW1wc3RlciB3aXRoIHRoZSBvdGhlciBzdHVmZi4gSXTigJlzIGJlZW4gYSBmZXcgaG91cnMgc2luY2UgdGhlbiwgc28gSeKAmXZlIGhhZCBzb21lIHRpbWUgdG8gY2FsbWx5IHRoaW5rIGFib3V0IGV2ZXJ5dGhpbmcuIExpa2UgSSBzYWlkLCBpdCB3YXMgcHJldHR5IHNhdGlzZnlpbmcgYW5kIEnigJltIGdsYWQgSSBmaW5hbGx5IGdvdCBhcm91bmQgdG8gaXQuIEkgZmVlbCBsaWtlIEkgY2FuIGZpbmFsbHkgY3Jvc3MgaXQgb2ZmIG15IGJ1Y2tldCBsaXN0LCBvciBsaWtlIEnigJltIHR5aW5nIGxvb3NlIGVuZHMgd2l0aCBteXNlbGYuIFRoaXMgaXMgcHJvYmFibHkgdGhlIGZpcnN0IGFuZCBsYXN0IHRpbWUgSeKAmWxsIHdyaXRlIHRoZSBuYW1lIExpbmRhIFdhdHNvbiAtIGl04oCZcyBiYWNrIHRvIGxpdmluZyBhIG5vcm1hbCBjb2xsZWdlIGxpZmUsIGV4Y2VwdCBJIG1pZ2h0IGRvIHNvbWUgcGVvcGxlLXdhdGNoaW5nIGV2ZXJ5IG5vdyBhbmQgdGhlbiBiZWNhdXNlIGl04oCZcyBkZWZpbml0ZWx5IGZ1biBhbmQgaW50ZXJlc3RpbmcuDQoNCkJ1dCBJ4oCZbGwgYWx3YXlzIHdvbmRlciBob3cgbWFueSBwZW9wbGUgdGhlcmUgYXJlIGxpa2UgbWUuIEnigJltIHN1cmUgdGhlcmUgaGFzIHRvIGJlIGEgbG90LCBiZWNhdXNlIHRoZXJlIGlzIGp1c3Qgbm90aGluZyBzdHJhbmdlIGFib3V0IGl0IHRvIG1lLCBiZWluZyBjdXJpb3VzIGFib3V0IGtpbGxpbmcgc29tZW9uZS4gU2FkbHksIGl04oCZcyBzb21ldGhpbmcgdGhhdCBwZW9wbGUgY2Fu4oCZdCBleGFjdGx5IGp1c3QgdGFsayBhYm91dCwgc28gSSBndWVzcyBJ4oCZbGwgbmV2ZXIga25vdy4gSeKAmW0gc3VyZSB0aGF0IGFueW9uZSB3b3VsZCBqdXN0IGxpZSBhYm91dCBpdCBldmVuIGlmIHlvdSBhc2tlZCB0aGVtLiBCdXQgeW91IGNhbuKAmXQgaGVscCBidXQgd29uZGVyIGlmIHRoYXQgcGVyc29uIGluIHRoZSBncm9jZXJ5IHN0b3JlLCB3aG8gc3RhcmVzIGF0IHlvdSBhcyB5b3UgcGFzcyBieSwgbWlnaHQgYmUgY29uc2lkZXJpbmcgd2hhdCBpdCB3b3VsZCBiZSBsaWtlIHRvIGtpbGwgeW91LiBJZiBJIGNvdWxkLCBJIHdvdWxkIHRlbGwgdGhlbSBhbGwgYWJvdXQgaXQsIHNvIHRoZXkgY291bGQgZGVjaWRlIGZvciB0aGVtc2VsdmVzLiAgQnV0IHdobyBrbm93cywgbWF5YmUgSSBnb3QgbHVja3ksIGFuZCB0aGF0IHBlcnNvbiBpcyB5b3UuIEkgYWN0dWFsbHkgcmVhbGx5LCByZWFsbHkgaG9wZSBzby4NCg0KfuKZpQ==
Back to Top
Copying and pasting this Base64 text into the decoder at www.base64decode.org results in the following text.
+ Show Spoiler +
If you found this note in a small wooden box with a heart on it, then *congratulations!* You are probably the first person to read this. I didn’t really plan on sharing this with anybody, but for some reason I think it’s exciting that somebody out there, a complete stranger, will come across this note and read my story. Someone I will never meet, sharing such a personal bond with me. I’m fascinated that either one of us could die - even as soon as tomorrow - with the other being completely clueless to the fact. To you, my entire life is within this note, and so I will live for as long as your memory can carry me. Writing this, I’m wondering if that makes you feel fascinated or violated. It’s so exciting.
I’m sorry if my story is a bit disorganized, but I’d like to get it down while it’s still fresh on my mind. First, I’ll tell you a little bit about myself. I’m a first-year college girl and have led, by most standards, a pretty unspectacular life up to this point. I grew up in an upper-middle class school district with decent teachers. I did track in middle school and some of high school, and I’ve had two boyfriends. Now, I’m studying for a career in occupational therapy, because I feel the field is undervalued and provides tremendous help to people.
I’m giving you this background because there’s this strange misconception that if you want to kill someone then you’re either sick in the head or you have anger management issues. But, it’s very apparent that I don’t fall into either of those categories. It’s true that most murder cases are in a domestic setting where someone loses control of their anger or something. But the thing is that those people kill under provocation, whether by a singular outburst or by a slow-burning series of misfortunes. Those people kill because in that brief moment, they want a specific someone, for a specific reason, to be hurt or killed.
What I’m talking about is wanting to kill someone for no specific reason, maybe just to see what it’s like. Do you ever get that? I wouldn’t know how others feel, because it’s not something I ever talked about. But I’ve been curious about what it’s like to kill someone ever since I was a child. Not killing anyone in particular, just a random person. It’s always just fascinated me that if I put my mind to it, I can approach anyone, and in five minutes they would be completely gone from this Earth.
But I’ve never done so for a couple of reasons. First of all, for most of my life it was logistically impossible for me to do it without getting caught. I only got my driver’s license a couple years ago, and even then, the preparations would take too much time, definitely stirring suspicion. It was only once I started college that I realized this was no longer an obstacle.
Another reason is that I was afraid of causing harm to too many people. You might laugh reading that, at how hypocritical it sounds. But, let me explain: Why should I feel bad about killing someone if they’re too dead to care? Who would I be feeling bad for? Contrarily, it’s the grief of the living that I’d rather not be responsible for. Because of this, I knew it would take a good deal of research before finding a suitable person to kill, and I’ve never had the means to do so - again, until I started college.
And now, having just experienced it, I’d say it was pretty satisfying in the end. Something I would try again? Probably not, since my curiosity has already been satisfied. It really wouldn’t be the same a second time.
But anyway, if by any chance you’re also curious to kill someone, then you’re welcome to take notes.

***
I started a hobby of people-watching soon after I entered college. People-watching is interesting to me because it’s taking one of the infinite extras in your life and turning them into a main character - without them knowing, of course. It’s so easy to forget that every single one of the hundreds of strangers you pass every day has a life story as deep and complex as your own. One thing I noticed about people-watching, and wanting to kill someone, is that you are in more constant awareness of this. When I find a person to observe, their story slowly becomes more clear to me over time, gaps being filled - it really is amazing.
I usually went to grocery stores on weekends and looked around in people’s shopping carts. If I saw something that interested me, I decided to observe the person for a little bit. Of course, since my goal was to find someone to kill, I ruled out anyone who had children or a partner with them. Wedding rings were another tell-tale sign.
So maybe once a weekend, I would find someone who fit my criteria, at which point I would follow them home and note their address. From there, it became incredibly easy to investigate a little bit more; most people have normal work hours, meaning I could spend afternoons going through their mail or looking around in their house. I repeated this with several people (and had one close call), but for varying reasons I didn’t really feel satisfied enough with them to kill any of them.
I started getting a bit impatient and thought that I might just settle for killing the man named Devon, even though I didn’t really want to kill someone wealthy. But then, I came across someone new - someone who just, felt perfect. The feeling only strengthened as I investigated her further, and I knew that she would be the one for me to kill.
A young-looking woman I met at the grocery store, as per usual. She was doing some light shopping with a basket. Her hair was wavy and dark brown, sitting inelegantly on her slumped shoulders and surrounding her tired-looking face. Her bare fingers told me she might be single, but beyond that, my gut was almost certain of it. This woman just seemed so…plain, really. I guess I felt a greater acuity for the personal lives of strangers ever since I started my people-watching. But the way she carried herself, I just got the feeling that if she suddenly died, nobody would be around to miss her. Of course, I still wanted to investigate her a bit.
I followed my usual routine of checking out her place during her work hours. I learned immediately from her mail that her name is Linda Watson. Linda lived in a quiet apartment complex, her mailbox easily accessible right outside her door. Instead of quickly shuffling through it, I decided I could take her mail back to my dorm and return it before she was finished with work (she only lived about 15 minutes from me). I did some research and learned how to open and reseal the envelopes without damaging them, which took some technique along with a hair dryer, rubbing alcohol, and Q-tips.
This made it easy for me to learn a little more about her. Linda was a 33-year-old woman who worked for a small accounting firm - I’d rather not name the place outright. Her birthday was December 11th which, coincidentally, was approaching in a couple weeks. I also managed to find a bank statement that gave me a nice look into how she’s been spending her past month. It was at this point I realized that my assessment of Linda Watson as an extremely plain woman was pretty spot-on, because there was absolutely nothing interesting on the list. A trip to Old Navy, a bunch of Starbucks, something about $40 from Amazon - no restaurants, no movies, nothing that would really imply she was spending any time socializing. That aside, I also found a cooking magazine, so I guess she was into cooking.
Apartments are harder to break into than suburban homes, because there are fewer doors and windows. Every time I got Linda’s mail, I would check the front door and the windows in the back, but they were always locked. This was a bit frustrating because I was really interested in getting into her house. So, I came up with a sort of plan that I thought would be fun, even if it didn’t work.
Last Saturday, I visited Linda Watson’s apartment complex as I would on weekdays. The difference is that this time, I wanted her to be home. I thought it would be interesting to have a conversation with her. If I got lucky, I could take advantage of the situation to discreetly unlock a window from the inside. So, I walked up to her door wearing nothing warmer than a light sweatshirt, and knocked. The adrenaline rush was crazy. I was afraid I might screw something up.
The door opened, and in front of me stood Linda Watson, exactly as I remembered her from the grocery store. It was at that moment, making eye contact for the first time, that I realized I was running the risk of beginning to care about this person. As selfish as it is, I couldn’t kill a person I cared about, even if it’s a 33-year-old woman standing in a doorway with a slightly perplexed look on her face, giving me a reserved “Hello.”
Arms crossed from the cold, I shyly returned Linda’s greeting. I explained that I was walking my dog near the woodsy area behind the back of her apartment, and that he had gotten away. I had been looking for my dog for an hour and was wondering if Linda may have seen him roaming about. Of course, Linda sympathetically apologized for the situation and that she couldn’t be of use to me, but that she would keep an eye out. I wore a defeated expression in response, apologizing in return for troubling her.
It somehow went exactly as I had hoped - Linda invited me inside to warm up a bit with some coffee. I outwardly hesitated before accepting her offer, although on the inside I wanted to jump through the door and hug her for cooperating so well. And that’s how Linda Watson ended up with a 19-year-old girl next to her on the couch - who knows if it was just a nice gesture or if she really has no better way to spend her Saturdays than talking to some kid she just met (who happens to be interested in killing her).
Linda soon learned that my name is Maria (it’s not) and that I attend the nearby community college (I don’t). I was a little bit nervous that she would ask me too many questions because I didn’t have many answers prepared. I was able to steer the conversation toward her, and she was pretty happy to talk. I asked what she does, and she told me that she works for the accounting firm I already knew about, communicating with outside clients and keeping records. I told her I was pretty nervous about growing up. She told me to enjoy college and to make lots of friends because there’s less opportunity once you start working.
When I asked if she was married or anything, she laughed. Of course I knew she wasn’t married, but I wanted to hear more about her love life. She said that she doesn’t currently have a boyfriend (I guess she’s at least had boyfriends, but who knows how long ago). When I asked her about kids, she said she doesn’t want them until she gets a better job. On top of that, she told me that her family has a history of some genetic diseases such as arthritis and depression, which she is afraid to give to her kids.
It’s funny that she mentioned that because when I asked to use her bathroom, I noticed a tube of prescription pills on the sink. It was labelled duloxetine, which I looked up later and discovered that it is in fact an antidepressant. I had a joking thought that maybe by killing her I’d be doing her a favor, but quickly decided I was a terrible person for coming up with that.
The rest of the visit was pretty dull. We talked about food and some other mundane stuff before I eventually made an excuse to leave. I didn’t get the chance to unlock a window or anything like that, but I didn’t really feel the need to go through her apartment anymore. As early as the drive back to my dorm, I was already thinking about how I would best like to kill Linda Watson.
The choice was between effectiveness and fun. I decided to go with fun, because it would be way more satisfying to kind of dissect her as I killed her, rather than just getting it done and calling it a day. Fast-forward one week to December 13th - today, actually. Linda Watson turned 34 two days ago. I made a fun little wager with myself where if Linda was spending her birthday weekend alone, I would pay her a visit and kill her. If she was out or had company, I would stop by next week or something instead.
So this morning, I drove over to Lowe’s and bought an axe. Again, I expect you’re laughing, but that’s also kind of the point. An axe is so kind of cliche and a “movies” thing that I actually thought it would be the most fun. Swinging it at someone and everything, it’s a really entertaining image. They actually had a bunch of different axes, so I picked one that had a good weight but was still light enough for me to swing quickly.
The drive after getting the axe was when the adrenaline really picked up. All that kept going through my mind on the way over was “Wow, I’m really doing this.” Not in a bad way, just like a surprised this is real life sort of thing. I also got this strange rush of recollections of the time I spent with Linda. It was like my life was flashing before my eyes, except it was just the rather mundane hour I spent with Linda - like snippets of our conversations, the sound of her laugh, her facial expressions and stuff.
I also wondered to myself what the crazy serial killers would be feeling at a time like this - schizophrenic delusions? Sexual buildup? I have no idea, but what I felt was kind of like ridiculously alert and numb in the senses at the same time, however that’s possible.
Before getting out of the car, I had the sense to stuff the axe into my backpack to look a little less ridiculous walking across the parking lot. The handle was sticking out, but that didn’t really matter. At that point my heart was pounding so hard I could feel my throat throbbing. I tried controlling my breath, but it’s really hard to not breathe fast when your heart is pounding like that.
I reached Linda Watson’s door and quietly put my ear to it after setting down my backpack. I heard a voice that wasn’t hers - company? No, it was just the TV, mixed with her occasional tapping footsteps behind the door. I actually kept my ear there for a really freaking long time, because I wanted to make absolutely sure nobody was over. Probably 10 minutes of that and a lot of reassuring myself convinced me.
I quietly opened my backpack zipper and held the axe in my hands. My fiercely shaking hands. What the hell was this kind of reaction that my body was making? I told my body to shut up, that it’s no big deal, but of course it wouldn’t listen. It was actually bizarre how much my hands were shaking. It must be the adrenaline buildup. I rolled my eyes at myself and got my hand to rest on the doorknob. If it’s locked, I’ll knock, it’ll be basically the same. I took a deep breath and forced my muscles into action.
I swiftly turned the doorknob. Not locked. In one movement, I opened up the door and slipped inside. Linda Watson, just a few steps away into the kitchen. I see - she was in the middle of cooking. She immediately jumped and turned around, startled. I expected that. Quickly, I let go of the doorknob and adjusted the axe into both hands. In the following split second, I realized that she would probably start to make a lot of noise. Looking back, I’m an idiot for not considering that. Just as Linda’s mouth opened to speak - maybe even started speaking - I forcefully swung my axe into the side of her head.
But, my axe was facing backwards. I hit her with the blunt end of the blade. I actually did this on purpose, because in that split second I somehow decided that it would be the way to keep her noise to a minimum. It actually worked. I felt barely any resistance in the swing as I collided with her head, knocking it clean aside. Linda’s half-formed syllable came out as a kind of weird grunt - a noisy exhalation is probably the best I could describe it. That happened at the same time as her head smacked into the cabinet from the force, and she fell backwards without any ability to keep her balance. I didn’t hesitate at all to keep swinging at her while she was half lying down on the ground, this time my axe facing the right way. I didn’t really know where to swing, so I kind of just started hacking at her collarbone area and chest. It didn’t feel like the axe was going too deep, but there was a nice “thunk” sort of sound every time the axe embedded into her. I even felt the soft sinking sensation ripple into my hands, like the axe was a kind of physical extension of my sense of touch.
On a whim, I swung once at her throat, but most of the swing actually missed and I hit the floor by accident, causing a loud, dull whack to resonate through the apartment. I didn’t have time to think about it. I swung again with better aim and got a more centered hit, feeling the bone or cartilage or whatever is in there, so I must have split it open. Right after that, I decided to swing at her face, and I got this diagonal cut along her nose and mouth, which felt pretty good so I did it once more.
I finally briefly stopped to survey the damage. Linda was bleeding ridiculously. The blood was kind of coming out in waves, in sync with her beating heart, probably. It was pooling all around her and riding along the cracks between the tiles. Her light blue shirt was all torn up and stained dark, kind of mixed with a fleshy mess around her chest. It was all just glistening red. Her face wasn’t much better, covered in dripping red at this point, and her lip was kind of hanging off, revealing red-stained teeth in a really weird way, like a zombie or something.
Linda wasn’t dead, though. Her limbs were kind of weakly, aimlessly trying to move while she was stuck on her back. More than anything, she reminded me of a bug that you crush but it still pitifully moves its legs around before it dies completely. That’s basically what she was doing. But I didn’t know how long it would take for her to die, or what kind of condition she was in. I ended up grabbing a big knife that was on the counter that she was using to cut up meat. Trying to step around the blood, I reached down and carved into the upper half of her neck, trying to sort of saw it from the left side to the right. It was a little awkward because the area was so soft and squished around the knife as I was cutting. But the sensation was completely different from the axe. It actually felt like I was cutting a tough piece of raw meat (which I guess technically, I was).
The blood started pouring out, and I hoped that I severed the most major arteries in there. It must have worked, because after a moment Linda’s limb movements kind of just had the strength drained from them, soon resting still on the floor. I took a few seconds to catch my breath. No time to stick around and think about the experience. I shook the knife blade through a dirty pan in the sink to clean off the blood, then threw the knife into my backpack. I did the same with the axe. I also took her laptop that was sitting on the counter. It had some recipe open for veal and mushrooms. I didn’t really take the laptop to use it, since I have a perfectly good one myself that I got for college. I just wanted to look through it for fun.
I finally went outside and closed the door behind me. I got some blood on my sweater and jeans. But funnily enough, I actually anticipated that so I wore dark colors.
The drive back to my dorm was just a constant replaying of the experience in my head. I guess that’s still kind of happening even now, actually. But it felt pretty nice. Linda Watson is dead. I kind of let the weight of that sink in. The sensation of having completely removed a human life from existence. It’s crazy. I don’t know how else to describe it.
Anyway, I threw the axe and knife into a dumpster on campus, which I think is picked up every Monday, so they’ll be gone by then. My roommate goes home on the weekends, so I have the dorm to myself today. It gave me the chance to go through Linda’s website history. I was right in thinking that’s where her deepest secrets would lie.
There was actually a lot of dirty stuff, like the names of websites for porn videos and stories and things like that. Same with her searches. A lot of the websites were boring, like cooking websites and recipes, and game websites like Bejeweled and stuff. I eventually got to the “one week ago” section of her history, and it gave me a chill.
There were a whole bunch of searches like “methods of suicide”, “how to tie a noose”, “dangerous household chemicals”, “carbon monoxide poisoning” - like a lot of them. She was probably ready to write a book on suicide after all the research she did. So I guess Linda was contemplating suicide. I wonder if it was influenced by her depression.
The irony is actually striking. Maybe Linda was going to die anyway. Or maybe she couldn’t find the courage to do it. If that were the case, I almost literally gave her a birthday present by killing her. That’s actually really comical in a messed-up way, and it leaves a weird taste in my mouth. The part I don’t get is that I didn’t see any of those searches up until the “one week ago” section, nothing more recent than that.
I ended up throwing the laptop in the dumpster with the other stuff. It’s been a few hours since then, so I’ve had some time to calmly think about everything. Like I said, it was pretty satisfying and I’m glad I finally got around to it. I feel like I can finally cross it off my bucket list, or like I’m tying loose ends with myself. This is probably the first and last time I’ll write the name Linda Watson - it’s back to living a normal college life, except I might do some people-watching every now and then because it’s definitely fun and interesting.
But I’ll always wonder how many people there are like me. I’m sure there has to be a lot, because there is just nothing strange about it to me, being curious about killing someone. Sadly, it’s something that people can’t exactly just talk about, so I guess I’ll never know. I’m sure that anyone would just lie about it even if you asked them. But you can’t help but wonder if that person in the grocery store, who stares at you as you pass by, might be considering what it would be like to kill you. If I could, I would tell them all about it, so they could decide for themselves. But who knows, maybe I got lucky, and that person is you. I actually really, really hope so.
~♥
Back to Top
This concludes yuri.chr.
Back to Top
In the spoiler below I explain how to solve natsuki.chr in Photoshop on a Mac OS X.
+ Show Spoiler [natsuki.chr] +
In order to open the image in Photoshop, change the file ending from ".chr" to ".jpg".
![[image loading]](https://i.imgur.com/w7WYBBR.jpg)
Click and drag the file into the Photoshop icon (Ps) and it loads in the program automatically.
![[image loading]](https://i.imgur.com/j0gVxmE.jpg)
Click the Image menu, then click Adjustments, and then click Invert in the new menu that comes up.
![[image loading]](https://i.imgur.com/OJYYCHM.jpg)
As a result, the negative image becomes a positive one.
![[image loading]](https://i.imgur.com/MOk7m8A.jpg)
Click the Filter menu, then click Distort, and then click Polar Coordinates... in the new menu that comes up.
![[image loading]](https://i.imgur.com/v0KZlWl.jpg)
A new window will pop up. By default, the Rectangular to Polar box will be checked.
![[image loading]](https://i.imgur.com/xHO45Ms.jpg)
The image in the preview window looks like the desired result, so click OK.
![[image loading]](https://i.imgur.com/hNMn69R.jpg)
The final image as a .jpg file is this.
![[image loading]](https://i.imgur.com/VscKNSM.jpg)
This concludes the guide.
Back to Top
sayori.chr can be analyzed with the free audio analysis program, Audacity. The guide below will show how it's done in Windows.
+ Show Spoiler [sayori.chr] +
Open Audacity and disable the toolbars by clicking on all the checked items under the View menu in the Toolbars option.
![[image loading]](https://i.imgur.com/1nYWNIe.jpg)
Now we have plenty of space to work with.
![[image loading]](https://i.imgur.com/99fdDrr.jpg)
Drag sayori.chr into the gray space. The file is imported into the program automatically.
![[image loading]](https://i.imgur.com/KfQCKQy.jpg)
Stretch the bottom boundary of the window to fit the screen.
![[image loading]](https://i.imgur.com/wWV7BFo.jpg)
Click on the sayori menu to the left where the arrow is and then click the Spectrogram option.
![[image loading]](https://i.imgur.com/a0OD71q.jpg)
The result is this gray screen.
![[image loading]](https://i.imgur.com/3PkutpM.jpg)
Click on the sayori menu again and then click the Spectrogram Settings... option.
![[image loading]](https://i.imgur.com/ymPkNLs.jpg)
Fill out the form with the numbers shown here. Be sure to change the scale to Logarithmic and to check the Grayscale box.
![[image loading]](https://i.imgur.com/FCprYQP.jpg)
Press OK.
![[image loading]](https://i.imgur.com/Llitf58.jpg)
With the QR code scanner of a cell phone, this image brings you to the following website: projectlibitina.com.
Back to Top
Back to Top
This is my own experience playing the game.
+ Show Spoiler [My Experience] +
Right off the bat, I want to say that the soundtrack for this game is amazing. Sometimes I just leave the game music from different parts on while I work, and it helps me to relax and focus. It's really good. I already heard that the game was a psychological horror, so I wasn't really surprised with the disclaimer that people with depression shouldn't play.
I liked Sayori and Monica initially. Natsuki came off quite rude and masculine, and Yuri seemed too shy for my taste. When writing the first few poems, they were ones that Sayori liked. So I started to like her even more. It was really easy to say I'd walk home with her over Yuri and that I loved her......... and then she got killed. I was ridiculously pissed when this happened. The game spent hours making me get attached and then it pulled the rug from under me. FUUUUUUUUUUU**!!!!!!
Then I became sad and started to choose the big, deep words that Yuri liked. So then I started to get closer to her. Once I realized she was cutting herself, I was like Uhhhhhhhh..... NO TY. I started to figure out that Natsuki was the only sane person in the club. But it was too late to write poems for her. The thing about Monika is she seemed to know too much at several points in the story and it creeped me out. I denied Yuri's love just to be consistent with my earlier decisions with Sayori...... and then Yuri killed herself. At the time I kicked myself because I thought if I said, "yes," she would not have done that.
After Monika deleted everyone and sat me down on that date, I was really creeped out with how much she knew. Nevertheless, It was really an interesting conversation. I stayed for about an hour until she started repeating herself. That's when I knew I had to do something and I deleted for file.
Thinking back on my experience, I realize that this game played me, not the other way around. The music put me in a good mood, which made me choose words to get closer with Sayori. The sadness that followed then made me go for Yuri. The game had me on pins and needles, especially in the last few hours. I really enjoyed it overall. Watching other peoples' reactions to the game events on YouTube has been hilarious. In addition, thinking about the .chr files and the future game(s) that Dan Salvato has planned has been fun.
Have any of you read the novel? What do you think of it? Leave your comments below.
JUSTMONIKAJUSTMONIKAJUSTMONIKAJUSTMONIKAJUSTMONIKAJUSTMONIKAJUSTMONIKAJUSTMONIKA
Sincerely,
Shalashaska_123
EDIT: I added a guide for natsuki.chr under the "The .chr Files" spoiler and "Back to Top" links to make my post easier to navigate.
EDIT 2: I'm finally finished with the .chr files.