This commit is contained in:
Roman Hergenreder 2018-12-20 14:52:00 +01:00
parent cd683fdf17
commit 6df7db7cb7
75 changed files with 5302 additions and 156 deletions

@ -1,13 +1,13 @@
#!/usr/bin/python
import math
import sys
import random
c = int("2A4C9AA52257B56837369D5DD7019451C0EC04427EB95EB741D0273D55", 16)
n = int("0D8A7A45D9BE42BB3F03F710CF105628E8080F6105224612481908DC721", 16)
t = int("1398ED7F59A62962D5A47DD0D32B71156DD6AF6B46BEA949976331B8E1", 16)
# print(len(hex(t)[2:])*4)
def linear_diophantine_equation(a, b):
if b > a:
return linear_diophantine_equation(b, a)
@ -39,161 +39,17 @@ def is_square_num(n):
def is_int(n):
return int(n) == n
# m*m - k*n = c
# (m*m)/c - (k*n)/c = 1 k' = k * c
# m * m * c^-1 - k' * n = 1
def is_nth_root_num(a, b):
c = a**(1/float(b))
return abs(math.pow(c, b) - a) < 0.000001
# c = m*m - k*n
# c = 1*x - k*n mit x = m^2
def log(a, b):
return math.log(a) / math.log(b)
# c = gcd(m, n)
d, x, y = linear_diophantine_equation(n, c)
print(d, x, y)
for i in range(-10, 10):
print(i, test_solution(y + i * t))
# h = hex(y)[2:]
# print(''.join([chr(int(h[i:i+2], 16)) for i in range(len(h))]))
# print(y * c + x * n)
# y1 * c + x1 * n = 1
# y2 * m*m + x2 * n = 1
# y2 * m*m + x2 * n = y1 * c + x1 * n
# y2 * m*m + (x2-x1)*n = y1 * c
# -y1*c + (x2-x1)*n = y2*m*m
lcm = c * n
while not is_square_num(lcm):
lcm += n
print(hex(lcm))
print(is_square_num(lcm))
# tmp = -1 * y * c - x * n
#
# solution = tmp + n*n
# while not is_square_num(solution) and not test_solution(math.sqrt(solution)):
# solution += n
#
# if is_square_num(solution):
# print(len(hex(math.sqrt(solution))[2:]), hex(int(math.sqrt(solution))))
#
#
# print(is_square_num(x))
# print(test_solution(x))
# # print(hex(d))
# ggT(m², n) = ggT(c, n)
# print(gcd(c,n))
# gcd(m**2, n) = 1
#
# 1 = x*m**2 + y*n
# 1 = x*m**2*c + y*n
#
# x1*m**2 + y1*n = x2*m**2*c + y2*n
# 0 = m**2*x2*c-x1*m**2 + (y1-y2)*n
#
# gcd(m**2*c, n) = gcd(m**2, n)
#
# print(gcd(c, n))
# m = int("c20cd4b471c96cc2eaab1d1c6e33494219679ae97e48506e311ddbba35", 16)
# print(m**2 % n - c)
# print(test_solution(m))
# mult_inverse = multiplicative_inverse(c, n)
#
# d, x, y = linear_diophantine_equation(mult_inverse, n)
# print(d,x,y)
#
# print(mult_inverse*x - y*n)
#
# print(is_square_num(x))
# print(is_square_num(y))
# print(is_square_num(c))
def ascii(n):
h = hex(n)[2:]
return ''.join([chr(int(h[i:i+2], 16)) for i in range(0, len(h), 2)])
# n > t > c
# m = flag
# m**2 % n = x**2
# m**2 + k*n = c
# m % n = x
# m - k*n = x
# m = x + k * n
# x = int(math.sqrt(c))
#
# while not test_solution(x):
# x += n
# print(hex(x), hex(((x**2)%n)-c))
# print(x)
#
#
# d, x, y = linear_diophantine_equation(mult_inverse, mult_inverse*n)
# print(hex(d + 6*t - 2*c), test_solution(d + 6*t - 2*c))
# x = math.sqrt(n)
# print(x)
#
# print(test_solution(c * math.sqrt()))
# print(test_solution(math.floor(math.sqrt(c * n))))
# c = (m**2) % n
# c = m*m - k*n
# 1 = (m**2)/c - (k*n)/c
# 1 = (m**2)/c - k*(n/c)
# k = 1
# test = k * n / c
# while test != math.floor(test):
# k += 1
# test = k * n / c
#
# print(k, test)
# x = m*m
# c = x % n
# c = x - k*n
# c = k*n+x
# x ~ (48 56 31 38 2d) ^ 2
# m_guess = int("485631382d616161612d616161612d616161612d616161612d61616161", 16)
# x_guess = m_guess ** 2
# k_guess = (c - x_guess) / n
#
# i = 0
# while not test_solution(m_guess):
# m_guess += 1
# i += 1
#
# print(i, m_guess)
# print(test_solution(math.sqrt(c + n)))
# print(math.sqrt(c))
# c = x**2
# m**2 % n = x**2
# m % n = x
# i = 0
# solutioni = 0
# while i < 100:
# i += 1
# if test_solution(i):
# print(i, i**2%n)
# 4**2 % 13 = 3
# 9**2 % 13 = 3
# 17**2 % 13 = 3
# 22**2 % 13 = 3
# 30**2 % 13 = 3
# gcd(m, n) = gcd(m², n) = gcd(c, n) = gcd(t, n) = gcd(t, c) = gcd(t*c, n) = 1
# m² ≡ c (mod n)

13
Day 18/.idea/Day 18.iml Normal file

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="com.thoughtworks.xstream:xstream:1.4.11.1" level="project" />
<orderEntry type="library" name="javassist:javassist:3.12.1.GA" level="project" />
</component>
</module>

@ -0,0 +1,8 @@
<component name="ArtifactManager">
<artifact type="jar" build-on-make="true" name="Day 18:jar">
<output-path>$PROJECT_DIR$/out/artifacts/Day_18_jar</output-path>
<root id="archive" name="Day 18.jar">
<element id="module-output" name="Day 18" />
</root>
</artifact>
</component>

6
Day 18/.idea/misc.xml Normal file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
Day 18/.idea/modules.xml Normal file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/Day 18.iml" filepath="$PROJECT_DIR$/.idea/Day 18.iml" />
</modules>
</component>
</project>

6
Day 18/.idea/sbt.xml Normal file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ScalaSbtSettings">
<option name="customVMPath" />
</component>
</project>

6
Day 18/.idea/vcs.xml Normal file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>

871
Day 18/.idea/workspace.xml Normal file

@ -0,0 +1,871 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="06cb540d-322a-40ef-9ca3-76e5d50d477a" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/.idea/artifacts/Day_18_jar.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/sbt.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/META-INF/MANIFEST.MF" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/hackvent2018/evil/Main.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../Day 14/decode.py" beforeDir="false" afterPath="$PROJECT_DIR$/../Day 14/decode.py" afterDir="false" />
</list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FUSProjectUsageTrigger">
<session id="1369169411">
<usages-collector id="statistics.lifecycle.project">
<counts>
<entry key="project.closed" value="4" />
<entry key="project.open.time.11" value="1" />
<entry key="project.open.time.12" value="1" />
<entry key="project.open.time.4" value="1" />
<entry key="project.open.time.8" value="1" />
<entry key="project.open.time.9" value="1" />
<entry key="project.opened" value="5" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.extensions.open">
<counts>
<entry key="MF" value="1" />
<entry key="class" value="94" />
<entry key="java" value="44" />
<entry key="mf" value="2" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.types.open">
<counts>
<entry key="CLASS" value="94" />
<entry key="JAVA" value="44" />
<entry key="Manifest" value="3" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.extensions.edit">
<counts>
<entry key="class" value="15" />
<entry key="java" value="2384" />
<entry key="mf" value="1" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.types.edit">
<counts>
<entry key="CLASS" value="15" />
<entry key="JAVA" value="2384" />
<entry key="Manifest" value="1" />
</counts>
</usages-collector>
</session>
</component>
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/Evilist.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="240">
<caret line="16" selection-start-line="16" selection-end-line="16" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="195">
<caret line="16" column="5" selection-start-line="16" selection-start-column="5" selection-end-line="16" selection-end-column="5" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilWindow.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="510">
<caret line="46" column="14" selection-start-line="46" selection-start-column="14" selection-end-line="46" selection-end-column="14" />
<folding>
<element signature="e#0#1797#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilAction.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="73">
<caret line="53" column="65" selection-start-line="53" selection-start-column="65" selection-end-line="53" selection-end-column="65" />
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Class" />
</list>
</option>
</component>
<component name="FindInProjectRecents">
<findStrings>
<find>111</find>
<find>78</find>
<find>78, 111</find>
<find>eventResult</find>
</findStrings>
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/.." />
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/src/MANIFEST.mf" />
<option value="$PROJECT_DIR$/src/META-INF/MANIFEST.MF" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/Evil.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/EvilLoader.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/Question.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/Sad.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/Test.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/EvilImages.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/EvilType.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/EvilEvent.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/EvilHandler.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/Main.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/Evilist.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/EvilWindow.java" />
<option value="$PROJECT_DIR$/src/hackvent2018/evil/EvilAction.java" />
</list>
</option>
</component>
<component name="InstancesTracker">
<option name="classes">
<map>
<entry key="hackvent2018.evil.NotEvil" value="CREATION" />
</map>
</option>
</component>
<component name="ProjectFrameBounds">
<option name="x" value="200" />
<option name="y" value="257" />
<option name="width" value="1272" />
<option name="height" value="692" />
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="true">
<ConfirmationsSetting value="2" id="Add" />
</component>
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="PackagesPane" />
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="out" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="out" type="462c0819:PsiDirectoryNode" />
<item name="artifacts" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="out" type="462c0819:PsiDirectoryNode" />
<item name="artifacts" type="462c0819:PsiDirectoryNode" />
<item name="Day_18_jar" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="out" type="462c0819:PsiDirectoryNode" />
<item name="production" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="out" type="462c0819:PsiDirectoryNode" />
<item name="production" type="462c0819:PsiDirectoryNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="out" type="462c0819:PsiDirectoryNode" />
<item name="production" type="462c0819:PsiDirectoryNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="hackvent2018" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="out" type="462c0819:PsiDirectoryNode" />
<item name="production" type="462c0819:PsiDirectoryNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="hackvent2018" type="462c0819:PsiDirectoryNode" />
<item name="evil" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="hackvent2018" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="hackvent2018" type="462c0819:PsiDirectoryNode" />
<item name="evil" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Day 18" type="b2602c69:ProjectViewProjectNode" />
<item name="Day 18" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="META-INF" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
<pane id="Scope" />
</panes>
</component>
<component name="PropertiesComponent">
<property name="Downloaded.Files.Path.Enabled" value="false" />
<property name="Repository.Attach.JavaDocs" value="false" />
<property name="Repository.Attach.Sources" value="false" />
<property name="project.structure.last.edited" value="Artifacts" />
<property name="project.structure.proportion" value="0.15" />
<property name="project.structure.side.proportion" value="0.2" />
</component>
<component name="RecentsManager">
<key name="MoveFile.RECENT_KEYS">
<recent name="$PROJECT_DIR$/out/production/Day 18/hackvent2018/evil" />
</key>
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="RunManager" selected="Application.Evilist">
<configuration name="Evilist" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="hackvent2018.evil.Evilist" />
<module name="Day 18" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="hackvent2018.evil.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="Main" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="hackvent2018.evil.Main" />
<module name="Day 18" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="hackvent2018.evil.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="Test" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="hackvent2018.evil.Test" />
<module name="Day 18" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="hackvent2018.evil.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<list>
<item itemvalue="Application.Evilist" />
<item itemvalue="Application.Main" />
<item itemvalue="Application.Test" />
</list>
<recent_temporary>
<list>
<item itemvalue="Application.Evilist" />
<item itemvalue="Application.Main" />
<item itemvalue="Application.Test" />
</list>
</recent_temporary>
</component>
<component name="SbtLocalSettings">
<option name="projectSyncType">
<map>
<entry key="$PROJECT_DIR$/../../../Programming/Java/Intellij/SE/Aufgabe_1" value="PREVIEW" />
<entry key="$PROJECT_DIR$/../../../Programming/Java/Intellij/SE/Aufgabe_5" value="PREVIEW" />
<entry key="$PROJECT_DIR$/../../../Programming/Java/Intellij/SE/Aufgabe_6" value="PREVIEW" />
</map>
</option>
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="06cb540d-322a-40ef-9ca3-76e5d50d477a" name="Default Changelist" comment="" />
<created>1545089712863</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1545089712863</updated>
</task>
<servers />
</component>
<component name="ToolWindowManager">
<frame x="200" y="257" width="1272" height="692" extended-state="0" />
<editor active="true" />
<layout>
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.40016368" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info id="Project Explorer" order="2" />
<window_info id="Designer" order="3" />
<window_info id="UI Designer" order="4" />
<window_info id="Job Explorer" order="5" />
<window_info id="Favorites" order="6" side_tool="true" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" weight="0.5323993" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.48320693" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="bottom" id="Console" order="7" />
<window_info anchor="bottom" id="Messages" order="8" weight="0.32936078" />
<window_info anchor="bottom" id="Terminal" order="9" />
<window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
<window_info anchor="bottom" id="Version Control" order="11" show_stripe_button="false" />
<window_info anchor="bottom" id="SBT Console" order="12" />
<window_info anchor="right" id="Commander" order="0" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
<window_info anchor="right" id="Palette" order="3" />
<window_info anchor="right" id="FAQ Robot" order="4" />
<window_info anchor="right" id="Palette&#9;" order="5" />
<window_info anchor="right" id="Maven Projects" order="6" />
</layout>
<layout-to-restore>
<window_info content_ui="combo" id="Project" order="0" weight="0.2550586" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info id="Project Explorer" order="2" />
<window_info id="Designer" order="3" />
<window_info id="UI Designer" order="4" />
<window_info id="Job Explorer" order="5" />
<window_info id="Favorites" order="6" side_tool="true" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" visible="true" weight="0.32936078" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.48320693" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="bottom" id="Console" order="7" />
<window_info anchor="bottom" id="Messages" order="8" weight="0.32936078" />
<window_info anchor="bottom" id="Terminal" order="9" />
<window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
<window_info anchor="bottom" id="Version Control" order="11" show_stripe_button="false" />
<window_info anchor="bottom" id="SBT Console" order="12" />
<window_info anchor="right" id="Commander" order="0" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
<window_info anchor="right" id="Palette" order="3" />
<window_info anchor="right" id="FAQ Robot" order="4" />
<window_info anchor="right" id="Palette&#9;" order="5" />
<window_info anchor="right" id="Maven Projects" order="6" />
</layout-to-restore>
</component>
<component name="VcsContentAnnotationSettings">
<option name="myLimit" value="2678400000" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
<breakpoints>
<line-breakpoint enabled="true" type="java-line">
<url>jar:///usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar!/java/lang/ClassLoader.class</url>
<line>256</line>
<properties />
<option name="timeStamp" value="13" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
</component>
<component name="debuggerHistoryManager">
<expressions id="filteringjava.lang.String">
<expression>
<expression-string>contains(&quot;jpg&quot;)</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>contains(&quot;png&quot;)</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>toLowerCase().contains(&quot;18&quot;)</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>toLowerCase().contains(&quot;HV&quot;)</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>toLowerCase().contains(&quot;flag&quot;)</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>contains(&quot;HV&quot;)</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>contains(&quot;click&quot;)</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>contains(&quot;flag&quot;)</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
<expression>
<expression-string>HV</expression-string>
<language-id>JAVA</language-id>
<evaluation-mode>EXPRESSION</evaluation-mode>
</expression>
</expressions>
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/hackvent2018/evil/EvilHandler.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="150">
<caret line="10" column="26" lean-forward="true" selection-start-line="10" selection-start-column="26" selection-end-line="10" selection-end-column="26" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/javassist/javassist/3.12.1.GA/javassist-3.12.1.GA.jar!/javassist/CtClass.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="330">
<caret line="439" selection-start-line="439" selection-end-line="439" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/hackvent2018/evil/EvilImages.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="150">
<caret line="13" lean-forward="true" selection-start-line="13" selection-end-line="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/out/production/Day 18/hackvent2018/evil/EvilLoader.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="195">
<caret line="17" column="22" lean-forward="true" selection-start-line="17" selection-start-column="22" selection-end-line="17" selection-end-column="22" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/javassist/javassist/3.12.1.GA/javassist-3.12.1.GA.jar!/javassist/CtClassType.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="857">
<caret line="188" selection-start-line="188" selection-end-line="188" />
</state>
</provider>
</entry>
<entry file="jar:///usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar!/sun/instrument/InstrumentationImpl.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="300">
<caret line="31" column="48" selection-start-line="31" selection-start-column="48" selection-end-line="31" selection-end-column="48" />
</state>
</provider>
</entry>
<entry file="jar:///usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar!/java/lang/ClassLoader.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="236">
<caret line="258" selection-start-line="258" selection-end-line="258" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/MANIFEST.mf" />
<entry file="file://$PROJECT_DIR$/src/META-INF/MANIFEST.MF">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="5" lean-forward="true" selection-start-line="5" selection-end-line="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilLoader.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="543">
<caret line="48" lean-forward="true" selection-start-line="48" selection-end-line="48" />
<folding>
<element signature="e#157#158#0" expanded="true" />
<element signature="e#186#187#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/NotEvil.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="15">
<caret line="25" column="57" selection-start-line="25" selection-start-column="57" selection-end-line="25" selection-end-column="57" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/Question.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="543">
<caret line="333" lean-forward="true" selection-start-line="333" selection-end-line="333" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/Sad.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="543">
<caret line="324" lean-forward="true" selection-start-line="324" selection-end-line="324" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-8828YN/hackvent2018/evil/EvilAction.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="195">
<caret line="13" lean-forward="true" selection-start-line="13" selection-end-line="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/EvilImages.class" />
<entry file="file://$PROJECT_DIR$/out/production/Day 18/hackvent2018/evil/EvilAction.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="6" lean-forward="true" selection-start-line="6" selection-end-line="6" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-pUk7pl/hackvent2018/evil/EvilWindow.class" />
<entry file="file://$PROJECT_DIR$/EvilType.class" />
<entry file="file://$PROJECT_DIR$/hackvent2018.evil.EvilType.class" />
<entry file="file://$PROJECT_DIR$/hackvent2018.evil.EvilAction.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/hackvent2018.evil.EvilImages.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/hackvent2018.evil.EvilEvent.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/Test.java" />
<entry file="file:///tmp/hackvent2018.evil.EvilAction.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-nmQrwP/hackvent2018.evil.EvilWindow.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="240">
<caret line="25" column="47" lean-forward="true" selection-start-line="25" selection-start-column="47" selection-end-line="25" selection-end-column="47" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-6QXTrQ/hackvent2018.evil.EvilHandler.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-27FeGO/hackvent2018.evil.EvilImages.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-Lh0YQ0/hackvent2018.evil.EvilAction.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="630">
<caret line="47" column="61" lean-forward="true" selection-start-line="47" selection-start-column="61" selection-end-line="47" selection-end-column="61" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-1dPlum/hackvent2018.evil.EvilHandler.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="45">
<caret line="3" column="2" lean-forward="true" selection-start-line="3" selection-start-column="2" selection-end-line="3" selection-end-column="2" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-ipznX7/hackvent2018.evil.EvilAction.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="105">
<caret line="15" column="34" selection-start-line="15" selection-start-column="34" selection-end-line="15" selection-end-column="69" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-yGZdqa/hackvent2018.evil.EvilImages.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-4PUTk6/hackvent2018.evil.EvilType.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-tzt74l/hackvent2018.evil.EvilImages.class">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/Evil.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="543">
<caret line="376" column="38" lean-forward="true" selection-start-line="376" selection-start-column="38" selection-end-line="376" selection-end-column="38" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-tIcdwU/hackvent2018.evil.EvilEvent.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="225">
<caret line="15" column="32" lean-forward="true" selection-start-line="15" selection-start-column="32" selection-end-line="15" selection-end-column="32" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-OjaThG/hackvent2018.evil.EvilWindow.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="6" lean-forward="true" selection-end-line="53" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-LYxMxg/hackvent2018.evil.EvilImages.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="45">
<caret line="3" column="2" lean-forward="true" selection-end-line="28" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-Jne3gz/hackvent2018.evil.EvilType.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="45">
<caret line="3" column="2" lean-forward="true" selection-end-line="16" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilType.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="240">
<caret line="16" lean-forward="true" selection-start-line="16" selection-end-line="16" />
<folding>
<element signature="e#0#237#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilImages.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="19" column="41" lean-forward="true" selection-start-line="19" selection-start-column="41" selection-end-line="19" selection-end-column="41" />
<folding>
<element signature="e#0#686#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-BUL2nO/hackvent2018.evil.EvilAction.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="285">
<caret line="24" column="43" lean-forward="true" selection-end-line="82" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-tDaHPe/hackvent2018.evil.EvilEvent.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="180">
<caret line="12" lean-forward="true" selection-end-line="31" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilEvent.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="465">
<caret line="31" lean-forward="true" selection-start-line="31" selection-end-line="31" />
<folding>
<element signature="e#0#850#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-qTA3id/hackvent2018.evil.EvilHandler.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="345">
<caret line="28" column="5" lean-forward="true" selection-end-line="33" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilHandler.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="420">
<caret line="33" lean-forward="true" selection-start-line="33" selection-end-line="33" />
<folding>
<element signature="e#0#639#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/.cache/.fr-ybt32c/EvilAction.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-45">
<caret line="3" column="2" lean-forward="true" selection-start-line="3" selection-start-column="2" selection-end-line="3" selection-end-column="2" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/Evilist.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="240">
<caret line="16" selection-start-line="16" selection-end-line="16" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="195">
<caret line="16" column="5" selection-start-line="16" selection-start-column="5" selection-end-line="16" selection-end-column="5" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilWindow.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="510">
<caret line="46" column="14" selection-start-line="46" selection-start-column="14" selection-end-line="46" selection-end-column="14" />
<folding>
<element signature="e#0#1797#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/hackvent2018/evil/EvilAction.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="73">
<caret line="53" column="65" selection-start-line="53" selection-start-column="65" selection-end-line="53" selection-end-column="65" />
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
<state key="ArtifactsStructureConfigurable.UI">
<settings>
<artifact-editor />
<last-edited>Day 18:jar</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
<option value="0.5" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="FacetStructureConfigurable.UI">
<settings>
<last-edited>No facets are configured</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="GlobalLibrariesConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="JdkListConfigurable.UI">
<settings>
<last-edited>1.8</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ModuleStructureConfigurable.UI">
<settings>
<last-edited>Day 18</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
<option value="0.6" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ProjectJDKs.UI">
<settings>
<last-edited>1.8</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ProjectLibrariesConfigurable.UI">
<settings>
<last-edited>com.thoughtworks.xstream:xstream:1.4.11.1</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
</project>

BIN
Day 18/Evil.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

BIN
Day 18/NotEvil.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

BIN
Day 18/Question.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

BIN
Day 18/Sad.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

12
Day 18/decode.py Normal file

@ -0,0 +1,12 @@
#!/usr/bin/python
evilEvent = [-83, 8, 119, 19, 73, 17, 2, 83, 126, 17, 33, 119, 115, 6, 38, 16, 26, 23, 10, 127, 20, 85, 81, 47, 13, 88, 43, 0, 70, 27, -122, 8, 83, 17, 125, 46, 78, 64, 89, 78, 41]
evilAction = [-64, 15, 15, 10, 82, 79, 76, 67, 76]
# ascii = ''.join([chr(x + 128) for x in data])
print(len(data))
# f = open('output.bin', 'wb')
# f.write(bytes([x + 128 for x in data]))
# f.close()

BIN
Day 18/evil.jar Normal file

Binary file not shown.

BIN
Day 18/evil.jar.bak Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -0,0 +1,5 @@
Manifest-Version: 1.0
Main-Class: hackvent2018.evil.Evilist
Created-By: Evilist HomeBrew
Built-By: evilist
Build-Jdk: 666

1
Day 18/output.bin Normal file

@ -0,0 +1 @@
-┬В⌠и▒┌сЧ▒║ВС├╕░ ≈┼Ъ■уя╞█ь╚─ф⌡┬с▒Щ╝нюын╘

Binary file not shown.

@ -0,0 +1,5 @@
Manifest-Version: 1.0
Main-Class: hackvent2018.evil.Evilist
Created-By: Evilist HomeBrew
Built-By: evilist
Build-Jdk: 666

@ -0,0 +1,390 @@
package hackvent2018.evil;
public class Evil
{
public static byte[] b = {
-119, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72, 68, 82, 0, 0, 1, 44,
0, 0, 1, 44, 8, 3, 0, 0, 0, 78, -93, 126, 71, 0, 0, 2, -3, 80, 76, 84,
69, 0, 1, 0, 7, 0, 0, 3, 6, 2, 17, 2, 2, 25, 1, 0, 13, 6, 4, 24,
3, 6, 30, 2, 0, 34, 1, 2, 2, 10, 13, 45, 0, 1, 29, 4, 10, 8, 11, 7,
49, 0, 2, 43, 2, 1, 38, 3, 6, 22, 8, 9, 52, 1, 0, 56, 0, 2, 36, 6,
6, 60, 1, 0, 19, 13, 12, 66, 0, 4, 70, 0, 1, 45, 7, 6, 24, 13, 14, 50,
6, 9, 62, 3, 11, 77, 0, 0, 13, 18, 20, 42, 10, 14, 29, 14, 16, 16, 18, 15,
52, 8, 13, 65, 5, 7, 78, 1, 9, 58, 7, 10, 54, 9, 8, 81, 2, 5, 9, 22,
22, 88, 1, 2, 61, 9, 6, 35, 16, 14, 98, 0, 3, 96, 0, 9, 76, 7, 10, 69,
9, 13, 52, 15, 17, 43, 18, 19, 15, 26, 26, 23, 24, 23, 72, 11, 8, 91, 5, 14,
40, 20, 19, 66, 13, 12, 28, 24, 23, 50, 18, 18, 38, 22, 20, 86, 9, 11, 111, 2,
7, 109, 2, 13, 37, 23, 25, 80, 13, 15, 68, 16, 21, 95, 9, 11, 62, 19, 19, 45,
24, 24, 104, 8, 10, 31, 28, 29, 37, 27, 28, 29, 30, 28, 61, 21, 24, 104, 9, 17,
22, 32, 32, 27, 31, 33, 97, 12, 19, 122, 6, 15, 99, 13, 15, -125, 4, 14, 92, 16,
17, 124, 8, 10, 108, 13, 14, 80, 21, 27, 116, 12, 18, 87, 20, 26, 117, 13, 13, 61,
28, 32, 89, 21, 22, -113, 6, 15, 47, 33, 35, 53, 32, 31, -121, 10, 10, 40, 36, 35,
44, 35, 35, 73, 27, 29, 29, 39, 40, 111, 17, 17, 34, 38, 40, 79, 26, 29, 37, 38,
36, 69, 29, 31, -121, 11, 22, Byte.MAX_VALUE, 14, 19, 61, 33, 35, 66, 32, 31, -119, 13, 18, -92,
5, 19, -100, 10, 22, -110, 13, 23, -108, 14, 18, 58, 39, 40, -117, 17, 20, 69, 36, 39,
47, 43, 42, 36, 46, 47, -98, 13, 16, 52, 42, 43, 41, 45, 47, 31, 48, 47, 44, 46,
43, 68, 40, 41, Byte.MAX_VALUE, 26, 32, -104, 20, 21, -87, 15, 23, 53, 47, 48, 66, 44, 43, -95,
18, 25, -77, 13, 28, 36, 53, 53, 48, 50, 48, -76, 14, 22, 47, 51, 53, 64, 47, 49,
43, 53, 54, -84, 19, 18, -66, 15, 28, -55, 12, 26, -84, 21, 25, 54, 56, 54, 47, 58,
58, 74, 51, 51, -72, 21, 25, 65, 55, 55, 61, 57, 56, -61, 22, 24, -52, 19, 29, -61,
22, 30, -42, 17, 34, 70, 60, 60, -40, 20, 29, 61, 63, 60, 54, 65, 66, 77, 60, 63,
69, 64, 63, -29, 20, 34, -48, 26, 31, 65, 67, 64, -7, 16, 32, -37, 26, 31, -17, 20,
34, -7, 17, 39, 82, 65, 68, -16, 23, 35, -26, 26, 36, -6, 20, 40, 70, 71, 69, 74,
70, 70, 68, 72, 75, 80, 69, 70, -24, 28, 31, -15, 25, 36, -4, 23, 34, 64, 76, 76,
73, 75, 72, -13, 28, 37, -12, 30, 37, -1, 29, 36, -11, 32, 38, 64, 82, 81, 70, 81,
81, 84, 79, 78, 76, 81, 83, 79, 81, 78, 94, 83, 84, 76, 88, 89, 85, 87, 84, 90,
86, 85, 85, 90, 92, 91, 93, 90, 81, 96, 96, 90, 94, 97, 99, 93, 93, 95, 97, 94,
100, 102, 99, 93, 104, 105, 107, 102, 101, 99, 110, 110, 109, 111, 108, 104, 114, 115, 116, 111,
110, 116, 117, 115, 108, 119, 120, 113, 118, 120, 122, 117, 116, 121, 123, 120, 114, 126, Byte.MAX_VALUE, Byte.MIN_VALUE,
123, 122, 124, -127, -125, Byte.MIN_VALUE, -126, Byte.MAX_VALUE, 120, -124, -123, -123, -122, -125, Byte.MIN_VALUE, -115, -115, -121, -117, -114,
-118, -116, -119, -112, -110, -113, -120, -108, -107, -114, -109, -107, -105, -110, -112, -109, -104, -101, -105, -104,
-107, -100, -99, -102, -103, -98, -95, -96, -94, -97, -98, -93, -91, -92, -86, -84, -88, -86, -89, -85,
-80, -78, -82, -80, -83, -80, -75, -72, -76, -74, -77, -74, -69, -67, -71, -69, -72, -67, -65, -68,
-66, -61, -58, -62, -60, -63, -58, -56, -59, -59, -54, -51, -54, -52, -55, -48, -46, -49, -50, -45,
-43, -45, -43, -46, -43, -38, -35, -40, -37, -41, -36, -34, -37, -33, -31, -34, -30, -28, -31, -27,
-25, -28, -23, -21, -25, -20, -18, -21, -16, -14, -17, -13, -11, -15, -10, -8, -11, -2, -8, -9,
-7, -4, -8, -2, -1, -4, -44, 46, 122, -61, 0, 0, 0, 1, 98, 75, 71, 68, 0, -120,
5, 29, 72, 0, 0, 0, 9, 112, 72, 89, 115, 0, 0, 29, -121, 0, 0, 29, -121, 1,
-113, -27, -15, 101, 0, 0, 0, 7, 116, 73, 77, 69, 7, -30, 9, 19, 18, 23, 42, 25,
126, -80, 119, 0, 0, 26, 119, 73, 68, 65, 84, 120, -38, -19, -99, 11, 84, 83, 87, -42,
Byte.MIN_VALUE, 19, 82, 30, 117, 28, 35, 5, 31, 117, -20, 76, -85, 84, 105, 25, -80, 118, 84, 44,
-74, -108, -87, 83, -117, 51, -88, 48, 12, 83, 28, -75, 29, 71, -115, -14, 26, Byte.MAX_VALUE, -91, 29,
-25, -105, 22, 45, -42, 63, -94, 77, -101, 43, 70, -37, -117, -71, 55, 61, -119, 109, 115, -93,
103, -79, 106, -75, 106, 125, -65, -97, -29, -37, 90, -48, 42, -30, 19, 5, -103, 8, -124, Byte.MIN_VALUE,
57, -21, 79, 80, 32, 64, -98, 55, -9, -34, 60, -9, 90, -70, 64, -13, -40, -25, -69, -25,
-20, -77, -9, 62, -25, -20, -61, 67, 1, 113, 88, 120, 1, 4, 1, 88, 1, 88, 1, 88,
1, 88, 1, 88, 1, 88, 1, 4, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88,
1, 4, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88, 1, 4, 1, 88, 1, 88,
1, 88, 1, 88, 78, -119, -95, 89, -81, 107, -84, -85, -68, 116, -20, -48, 55, -85, 86, 77,
22, -76, 73, -17, 85, -85, 86, -19, 58, -10, -97, -86, 27, 15, 26, -101, -12, -51, -122,
0, -84, 22, -19, -99, -85, 103, 15, 126, -13, -55, 91, -31, -111, 3, 99, 82, 39, 102, 23, 20,
44, -109, -75, 73, -119, -15, -73, -100, -44, -108, -127, 3, -61, -61, -25, 124, -78, 109, -1, -113,
87, -17, 61, -16, 99, 88, 119, 79, 110, 92, 60, -19, -49, 19, -90, 100, -117, -91, 50, 92,
-83, Byte.MIN_VALUE, 16, 82, 70, 1, -19, 98, -4, 5, -102, 68, -119, 99, -46, -94, -20, -44, 63, -51,
-100, -70, 120, -57, -123, 106, 63, -124, 85, Byte.MAX_VALUE, 126, 57, 47, 100, 82, 46, 70, 58, 35, 106,
44, -9, 119, -67, 121, -53, -49, -41, -5, 15, 44, -67, -10, -6, -82, 55, -98, 24, -110, 35,
43, 83, 64, -32, 20, 44, 18, 64, -107, -86, 52, 115, -80, -32, 111, -5, 110, 106, -11, -66,
15, -85, -27, -6, -63, -81, -34, -118, -50, -108, 2, 57, -92, 72, 90, 66, 65, -107, 90, 60,
37, 122, -26, -6, 19, -41, 91, 124, 26, 86, -51, -50, -31, -81, -25, 98, 4, 73, 1, -46,
21, 49, -102, 51, 53, 33, 22, 13, 27, -66, -89, -50, 71, 97, 25, -102, -50, -60, 11, -110,
75, -95, 107, -100, 58, 117, 49, 108, -84, 96, -22, 79, 28, 58, 21, 92, -63, 106, -68, -74,
43, 44, -70, 24, -86, 40, -110, 65, -95, 20, -118, -126, -127, -3, -73, 87, -43, -5, 20, -84,
-102, -67, 31, 12, -50, 47, 81, 48, -41, -85, -38, 5, -62, -110, -4, -60, 5, 123, 107, 124,
6, -42, -99, -27, -63, -23, -124, -102, 100, 77, -44, 50, 81, -16, -41, 119, 125, 1, -106, -66,
-6, -85, 39, 50, 40, 72, -78, 41, 0, -110, 25, -126, 47, 110, -21, -67, 28, -106, -2, -54,
-38, -56, 76, -75, 28, -112, 44, 11, 80, -111, 89, -111, 95, 92, -47, 123, 51, -84, -118, -7,
-119, 98, 28, -78, -114, -86, 21, 23, -123, 75, 18, -25, -105, 123, 45, -84, 27, -29, -124, 98,
-118, -28, 82, -60, 61, -30, -85, -67, 17, -106, -31, -34, 119, -95, -123, 101, -36, -78, 34, 41,
77, 86, -40, 119, -9, -68, 14, 86, -35, -114, 97, -103, 56, 36, 57, 23, -120, 103, 14, -5,
65, -21, 93, -80, 78, -59, 103, 17, 0, -112, 110, 16, 0, -16, -108, -105, 79, 122, 17, -84,
-69, 83, -61, 49, 72, -70, 77, 40, -20, -105, 83, -17, 122, 9, -84, -6, -61, -62, 28, 5,
69, -70, 81, 40, -104, 39, 60, -94, -13, 6, 88, -27, 51, -58, 18, 110, 69, -43, 106, -70,
100, 105, 51, 126, -10, 120, 88, -51, -101, 34, 48, -46, 19, 4, 72, Byte.MAX_VALUE, -15, -75, -34, -93,
97, 61, -84, -103, 22, 77, 2, -113, Byte.MIN_VALUE, 69, 82, 32, 102, 94, -115, 7, -61, 106, 57, 33,
-52, -89, 60, -124, -107, -55, -89, -49, -113, 56, -95, -9, 84, 88, -38, -91, 35, 74, 32, -23,
65, 66, 17, 35, 22, 107, 61, 19, 86, 85, 112, 22, 69, 122, -104, Byte.MIN_VALUE, -36, -34, -73, 61,
16, -106, -31, 100, -104, 68, 67, 122, -100, -64, 69, 97, 39, 91, 60, 13, -106, 126, 83, -84,
103, 13, -63, 118, 90, -91, 67, 54, -22, 61, 11, 86, -19, -8, 52, 53, 32, 61, 82, Byte.MIN_VALUE,
50, -3, 15, -11, -98, 4, -21, 70, -97, 60, 13, -23, -79, 2, -77, 122, 87, 121, 14, -84,
-118, -105, 10, 32, -23, -63, -94, 41, 122, -87, -36, 83, 96, 29, -115, -112, 82, -92, 71, 11,
-75, 108, -64, 41, -113, Byte.MIN_VALUE, 101, -8, -95, -65, -89, -102, 43, 51, -61, 69, -124, 108, -16,
0, 88, 45, 7, -6, 122, 60, 42, 19, 45, -59, -96, -35, 45, -18, -122, -43, -76, -93, 31, -18,
13, -80, -116, -109, -30, -32, 77, 122, -9, -62, 106, 90, 60, 65, -19, 21, -84, -116, -76, -16,
-92, 25, 15, -35, 9, -85, 105, 109, 6, 36, -67, 70, 52, 19, -106, 52, -71, 15, -106, 110,
67, 12, -23, 77, -94, 24, -5, -107, -50, 93, -80, 30, -82, -120, 33, -127, 87, -47, 34, -57,
46, 119, 19, 44, -61, -106, 56, 72, 122, -103, -56, -93, 54, -71, 5, -106, -47, 103, -96, 72,
-81, 19, -8, 43, 23, 60, 8, -6, -80, 14, 60, -123, 3, -17, -125, 5, -44, -79, -121, -71,
-121, 117, 52, -108, -16, -62, -114, 101, -14, -27, 123, -99, -30, 26, 86, -43, -45, 106, 64, 122,
-91, 0, -100, Byte.MAX_VALUE, -117, 91, 88, 53, -81, -120, -67, -108, -107, -47, 108, 73, -98, -66, -61, 37,
44, -35, -44, 124, -81, 101, 101, -92, -107, 61, 77, -57, 33, -84, -23, 25, -112, -12, 98, -95,
82, -26, 113, 7, 107, 103, 108, 25, -23, -43, -94, -118, -36, -54, 21, -84, -53, -49, -111, 94,
46, Byte.MIN_VALUE, 20, 94, -28, 6, -106, 118, -92, -44, -37, 97, -111, 20, 54, -14, 30, 39, -80, -30,
-13, 32, -23, -3, -110, 63, -81, -123, 3, 88, -21, 71, 40, 72, 95, -112, -24, 61, -20, -61,
-70, -4, -100, 26, -8, 2, 43, Byte.MIN_VALUE, -121, -107, -77, 13, -85, 126, 26, -26, 19, -84, -116, 102,
-85, 116, 104, 13, -53, -80, 54, -89, -110, -66, 34, 32, 103, 125, 51, -85, -80, 42, 122, 40,
-127, -49, -48, 82, -10, -85, 96, 19, 86, 93, 79, 12, -110, -66, -45, -75, -106, -123, 52, -80,
8, 107, -59, 66, 31, 98, 101, 12, 18, 69, 11, -40, -125, 117, 57, -114, -14, -34, 110, 100,
-55, 124, -64, -2, 23, -39, -126, -43, 52, 89, -20, -67, 115, -97, 88, 6, 44, 57, -14, -15,
90, -106, 96, -19, -114, -15, 90, -29, 14, -54, -110, 82, 44, -7, -46, 96, -30, 94, 3, 43,
-80, 106, -8, -72, -41, -62, -62, -30, -126, 19, -28, -106, -2, 67, -42, 75, -53, 10, -84, -9,
115, -27, 94, -39, -87, 40, 92, 18, -53, -29, -15, 34, 44, 110, -73, -125, 89, -97, -79, 1,
-21, 98, -108, 55, -58, -124, 64, 69, -50, -115, -30, 27, 89, -15, 66, 44, 122, -120, Byte.MIN_VALUE, 10,
-83, 96, 30, 86, -29, 18, 111, -116, 115, 32, -103, 30, -46, -118, -118, -57, 19, 88, 62, 85,
75, 97, 67, -11, -116, -61, -70, 24, -93, -18, -98, 66, -13, -12, 20, 31, -98, -14, -104, -108,
9, 86, -79, 101, -65, 7, 78, 56, -54, 52, -84, -58, 23, -91, 93, -39, -32, 24, -27, -55,
-72, 32, -108, -92, 11, 120, 29, -62, -97, 101, -59, -95, 38, 38, 107, 25, -122, -75, 123, 8,
-20, -106, -11, 15, 93, 8, 20, -98, -118, -117, 82, 20, -58, -102, -93, 50, 74, -70, -75, -24,
-29, -43, -93, -52, -62, -46, -14, -80, 46, -99, 24, 22, 26, 31, -106, 64, -28, -103, -55, 45,
0, 37, 3, -8, -68, 46, 18, -85, -76, -14, 98, 113, -120, -98, 81, 88, 27, -45, -70, 76,
-68, 80, -14, 88, -123, -28, -107, -72, -121, -115, 70, 64, 17, -59, 3, 120, -35, 101, 16, 110,
-27, 13, -102, -33, -18, 102, 18, 86, -51, 43, 93, 21, 90, -39, -34, -57, -7, 113, -77, 74,
-53, 40, 15, 26, Byte.MAX_VALUE, -40, -84, -2, 60, 75, 18, 81, 106, 53, 105, -54, -41, 50, 7, -53,
-80, 63, -81, 75, -25, -63, -51, 31, 29, 63, 36, 1, 83, 121, 6, 46, 32, -105, 77, 8,
-31, 91, 100, -59, 19, -84, -76, -10, 46, -71, 104, 35, 115, -80, -22, 103, 119, 125, 40, 9,
-35, -6, -8, 34, -113, Byte.MIN_VALUE, 69, 76, -30, 89, 23, -119, -11, -18, 56, 78, -53, 24, -84, -118,
-24, 46, -26, 51, -103, -41, -3, -23, 9, 103, 97, 36, 116, -93, -11, 2, 10, -68, 56, -127,
103, 75, 22, 90, Byte.MAX_VALUE, 111, -58, 105, -58, 96, -67, -74, -120, -22, -100, 51, -77, -84, -52, 47,
98, 115, 40, -71, -101, 112, 1, -107, 90, 20, -59, -77, 45, 19, -84, -65, 93, -6, -98, -98,
33, 88, 21, -31, -99, -93, -62, 108, -66, 53, 117, -8, 33, 34, -75, 91, 122, 23, 36, -45,
-8, 124, -98, 61, -79, -95, -39, -32, 74, -122, 96, -3, -79, -72, -77, 59, 39, 26, 31, 100,
93, 33, 126, -78, 20, -25, -74, -80, 10, 0, 74, 44, -51, 46, 40, -98, 32, -127, -80, 49,
-121, -26, -81, 98, 6, -42, -43, 8, 85, -89, 15, 86, -1, 111, -80, 109, -75, 94, -56, -62,
32, -28, -48, 84, -27, 36, -40, 71, 21, -102, 36, -106, 83, -74, -62, 72, 65, 53, 35, -80,
54, 22, 118, 105, 121, 9, -106, 34, -80, -93, 90, 108, -127, -126, 19, 92, 64, -125, -89, 11,
-19, -113, -65, -32, -84, 82, 96, -37, -73, 81, -92, 124, -51, 4, -84, -38, -55, 22, -62, 4,
92, 100, 79, -61, -112, 92, 14, 34, 33, 80, 50, -62, 62, 41, 30, 63, -61, -66, 38, Byte.MIN_VALUE,
124, 82, -53, 0, -84, -53, -81, 90, 116, -2, 64, 74, -124, 29, 61, -7, 19, 36, 4, 96,
-49, 87, -91, 32, -79, 40, -111, -25, -64, 0, -100, Byte.MIN_VALUE, 59, -110, -31, -123, -55, 39, 92, -121,
101, -8, -90, -56, 74, -84, 74, 44, 28, 100, 79, -47, -88, 116, -79, -122, -99, -39, 17, 66,
113, -58, 0, 7, 80, -11, 23, 97, 26, -121, 20, 0, -40, 10, -67, -53, -80, -76, -67, 8,
-85, -77, 16, 46, -115, -77, 59, 7, 9, 115, 89, 112, 85, -95, 38, 59, 74, -32, -64,
0, 12, 45, -60, 29, 78, 81, 42, 95, -65, -29, 50, -84, -1, -60, -40, 74, -67, -85, 36, -79,
118, 117, -26, 39, -81, 84, 50, -104, 85, 5, 64, 77, 100, -123, 56, -48, -87, -8, 33, 89,
78, -7, 48, 19, 79, -70, 12, -85, 79, 17, 101, -5, 25, -117, 71, -124, -38, -43, -5, -7,
20, 9, -50, 72, -88, 13, 32, -60, 10, 18, -8, -114, -96, 26, 32, -62, 85, 78, 125, -76,
-28, 99, -125, -117, -80, -86, 5, 10, -69, -122, 22, -101, 101, 31, -105, -32, -7, 52, 73, -103,
-85, 121, 85, 74, 14, -77, 19, 34, 120, -114, -56, 11, 5, 78, -41, 71, -59, -19, 46, 33,
-38, -125, -75, 41, -51, -111, 5, 48, 101, -82, -3, 113, -63, -25, -121, -92, 19, -82, -104, 47,
0, -79, 100, 71, 12, -107, 41, -88, 23, -45, 40, -27, 12, -57, 30, 114, 13, 86, -13, 112,
2, 56, 102, 113, 115, -123, -114, -76, 35, 74, 68, -85, 116, -66, -47, 3, 33, -80, 44, -57,
-6, -108, 113, 0, 22, -45, -70, -59, Byte.MIN_VALUE, 90, -42, -57, 53, 88, -41, -122, 57, -70, -78, 10,
65, -73, 21, 2, -53, 50, 96, 108, -18, 74, -96, 114, -94, -117, 65, 69, 25, -106, -109, 54,
Byte.MIN_VALUE, -17, 32, -86, -124, 2, -70, -79, -106, 38, -20, -106, 75, -80, -10, -25, 2, -57, -97, 62,
46, 77, 115, -88, 69, -4, 16, 97, 114, 1, -48, 56, -14, -8, 1, 84, 105, 36, -23, 3,
66, 28, 36, -59, -29, 37, 99, 74, -38, 19, -119, 66, -76, -59, 21, 88, 77, 107, -99, -85,
118, 72, 41, 29, -75, 42, -58, 30, 38, 18, -85, -19, 89, 22, 53, 54, 55, -111, -25, -80,
-16, -7, 73, -124, 43, 83, 8, -123, -115, 55, -72, 0, 75, -5, 14, -31, 108, 14, 14, -49,
-24, -17, 112, 55, -32, -11, 79, -104, 85, 32, -58, 30, -33, 80, 100, -70, -93, -56, -12, -105,
113, 126, 85, -30, -40, -54, 69, 57, 105, -125, 4, 60, 39, 36, 98, -126, 76, -29, -38, 116,
-85, 120, -93, -58, 5, 88, -41, -93, -23, -92, 76, 10, 99, -99, 105, 35, 63, 116, -64, -96,
-72, 73, 105, -77, 102, -119, 10, -117, 11, 77, Byte.MAX_VALUE, -109, -30, -60, -72, 40, 97, 8, -49, 57,
-23, 53, -73, 4, -70, -22, -55, 81, -55, 63, -70, 0, 107, 95, 38, -99, -17, 7, -54, -46,
9, 78, 54, -43, 56, -124, 30, 11, 47, -114, 76, -26, 57, 45, -62, 69, 56, 3, 65, 2,
40, -38, 97, -96, 15, -21, 111, 82, 64, -45, 37, 34, 28, 55, 94, 93, 36, -119, 76, 114,
22, 116, -1, 69, 101, -52, -124, 83, -91, 31, 54, -46, -122, 85, 47, 112, 37, 43, -105, -11,
2, 45, 92, -23, 32, -63, -87, -41, -121, 38, 73, -28, 76, 37, 26, -15, 65, -1, -91, 13,
-85, 98, -80, 11, 123, -3, 0, -60, -59, 105, 52, 112, -91, -61, 1, -50, -96, -54, -59, 40,
-26, 114, 102, 32, -26, 42, 109, 88, 107, 93, 62, 44, -89, -52, 18, 56, 11, 107, 33, -20,
-27, -8, 4, 88, -56, 108, 114, -111, -54, -36, 71, 27, 22, -81, -60, 101, 93, 32, 85, 24,
-27, 28, -81, -123, 10, 7, 95, 31, 18, -73, 72, -59, 112, -94, 31, -120, -33, -96, 11, -21,
110, 48, 3, 59, 110, 1, -124, -110, 20, 39, 6, 22, -65, 64, -27, -48, -21, -94, 68, 98,
21, -29, 107, 34, 64, 41, -48, -45, -124, 85, 30, -85, 98, 70, 5, -14, -47, 126, 97, -57,
96, 45, -46, 56, -16, -86, 4, 49, 59, -117, -109, -102, -16, -97, 105, -62, -38, 59, -117, -79,
71, 7, 32, -103, 18, -62, 119, 40, 105, 39, 17, -37, 123, -123, 64, -60, -38, -106, 48, -59,
-40, 61, 52, 97, 45, 102, -78, -94, 38, 80, 80, -117, -110, 28, 72, 29, -124, 72, 109, -62,
-30, 11, 19, 22, 41, -40, -37, 80, 1, -77, -105, -48, -125, 85, 63, -99, 97, -125, 64, 65,
-94, 56, -35, 94, 82, 42, 20, 43, -74, -79, 88, 58, -74, Byte.MIN_VALUE, -35, -59, 110, 64, 4, 25,
104, -63, -70, 55, -121, 5, 101, 72, 37, -106, 100, 115, -11, 63, 66, 54, -53, -38, Byte.MAX_VALUE, -59,
21, -86, 89, -33, 78, -82, 9, -82, -93, 5, -21, -38, 36, 118, 30, 30, 84, -120, -109, 67,
-83, 6, 67, -49, -109, 34, -117, 41, -80, 23, 22, -110, 92, 92, -71, -94, 26, 117, -107, 22,
-84, 31, 83, 88, 91, 76, 86, 65, -15, -36, -124, 1, 22, -3, -87, 1, -35, 67, 67, 97,
108, 122, 1, 110, Byte.MAX_VALUE, -79, -42, -24, -92, 40, -28, 26, -115, 70, -82, Byte.MIN_VALUE, -12, 83, -3, 10,
91, 11, -45, -42, 97, 25, 14, 102, -45, 92, 86, 55, -87, 108, -44, -104, -78, -35, 50, 53,
-127, 21, -89, 117, 15, 31, -29, -54, 98, 59, 111, 49, -103, 43, 41, -63, -95, -3, -39, 15,
106, 72, 73, 102, 116, 95, -95, 48, 44, 50, 41, -75, -104, -92, -69, 16, 14, 11, 55, -46,
-127, -43, -78, -83, -120, -98, 19, 44, 74, 126, 33, 42, 42, 46, 45, -41, -127, 10, 91,
0, 64, 44, 55, 73, -40, -106, -99, 49, -55, -17, -116, -80, 30, -1, 30, -101, 94, -88, -90, 28,
116, -89, -88, -36, 40, -2, -72, 117, 103, 42, -85, -85, -85, 43, 79, 109, 125, 57, -24, -71,
-71, 56, -67, 71, 45, 89, 67, 7, -106, -2, 75, 103, 75, -50, 80, -92, 116, -54, -21, -45,
87, -20, 61, 121, -27, -22, -43, -53, 39, -74, 44, -98, -102, -112, -125, -39, -75, -56, -58, -114,
-88, 41, -61, 37, -123, 57, 105, -23, 70, -58, 81, 81, -23, 101, -125, -110, -45, -46, 11, 11,
48, 80, 38, 119, -16, 18, 87, 0, -91, 25, 111, -82, -65, 108, 94, 33, 95, Byte.MAX_VALUE, 117, -29,
-44, 100, 41, -99, -23, 64, 61, 95, 71, 3, 86, -45, -1, 56, 121, -37, -112, 70, 60, -28,
-97, 39, -82, -101, -87, -84, -83, -36, -1, 82, 76, -119, 35, -53, 67, 70, -81, 2, 42, 20,
114, -109, 40, 72, -29, 31, -93, -43, 113, -36, -19, -92, -108, -81, -66, 120, -74, -74, 123, 74,
-4, -30, 123, -47, 52, 22, 47, -44, -1, -44, -46, Byte.MIN_VALUE, -91, 123, -34, -87, -4, 59, 0, -55,
-67, 43, -70, 86, -29, 53, 52, 30, -29, -77, 125, 96, 31, 16, 97, -37, 44, 87, 1, -42,
-19, 17, 16, 78, Byte.MAX_VALUE, -71, 122, -26, 61, 26, -80, 26, -61, -99, 26, -11, 120, -20, 106, -117,
49, 104, -35, -72, 116, 37, -101, -84, -88, -46, -112, 115, 86, -37, 112, -66, 119, -79, -77, 125,
75, -3, -10, 77, 26, -80, -18, -10, 115, 42, 92, -113, -37, 107, -51, -10, -83, -97, -64, 98,
-33, -94, -120, -2, -25, 108, 4, 40, -73, -99, -65, -71, 108, -62, 85, 26, -80, -86, 6, 58,
-47, 70, 69, -20, -50, 78, -67, -78, -78, -86, -61, 17, -42, 47, 17, -79, 119, -72, 26, 70,
-38, -34, 40, 116, 46, -42, -39, 79, 28, 115, -123, 6, -84, -97, 98, 28, -121, 5, 11, -29,
-51, 119, -95, 46, 15, 50, -54, -116, 27, -19, 65, 38, -65, -124, -83, 40, 5, 20, 76, 51,
-41, -7, -122, -47, 105, 8, 90, -66, -57, -52, -38, 55, -81, 112, -10, 14, -35, 41, 103, 105,
-64, 58, 54, -47, 9, 88, -31, 55, 58, -34, 88, -39, -26, 80, -98, 106, -117, 73, 15, 37,
-79, 54, 16, -109, -52, -6, 65, -27, -72, -74, 111, 94, -35, 49, -93, -107, -113, 114, -78, 91,
103, 31, -95, 1, -21, -48, 20, -121, 91, 8, -80, -105, 58, 98, -11, -6, -98, -19, -18, 119,
-101, -54, -115, 97, 56, 75, -84, -120, 119, 58, -80, 84, -104, 57, -2, 47, -73, 91, -127, -122,
32, 39, 115, 95, -76, 96, 125, -109, 77, 57, 62, 24, -66, -17, 120, -33, -87, 14, -107, -113,
-73, 5, 3, Byte.MAX_VALUE, 101, -21, -126, 72, -39, 39, -19, 11, 125, -115, 11, -52, -61, -92, 117, -19,
-6, 60, -119, 57, 55, 14, -117, -66, -89, 1, 107, 85, -127, -29, -80, -78, -51, -66, -32, 64,
-121, -58, 7, -38, 96, -51, 94, 6, 88, -121, -91, 125, -42, 28, -42, 56, -49, -123, 85, -12,
-79, -103, -53, -47, -95, 113, -37, -91, 83, -51, -3, 75, -40, 26, -122, 51, -37, -121, 97, -13,
86, 115, 88, -25, -37, 61, -45, 32, 39, -125, 30, 90, -80, -90, 57, 62, -115, 24, -99, 104,
51, -121, 116, 119, -101, -62, 27, -38, -118, 91, -34, 10, 103, 43, 19, -91, 30, 113, -67, 35,
-66, -7, -56, -52, 0, -76, -37, -48, 43, -49, 59, 121, -117, 25, 45, 88, 2, -103, 19, -101,
-13, -110, -52, 22, 39, 91, -50, 60, 58, 52, -74, -67, 29, -32, -44, 28, -74, 102, 67, -112,
-1, -127, 89, 112, 85, 49, -29, -15, 100, 120, -69, -99, -107, 97, -115, -77, -21, -80, -40, -81,
89, -122, 5, 8, -66, -7, -95, -86, -90, 11, 91, -73, -98, -22, -24, 107, -25, -124, 44, 86,
-79, -23, -43, -87, -108, 76, 67, 101, -59, -123, 106, -13, -80, -85, -14, 117, 103, 63, 16, 19,
-78, 12, -117, -124, -59, -15, 86, 115, -41, 55, 126, 83, -62, 94, 62, 24, 98, -126, 107, -74,
78, 105, -67, 34, -11, 60, 88, 36, -75, 48, -34, -54, -127, -67, -14, -89, 37, 108, -26, -50,
-95, -92, -113, -11, -8, -92, -22, -27, 28, -32, -127, -80, 72, -86, -104, Byte.MAX_VALUE, -36, 82, 24, -67,
53, -116, -19, -22, 72, -104, -32, -72, -107, -60, -8, -103, 96, -79, -13, -49, -119, 11, 88, 36,
36, 34, -33, -68, -84, -19, 84, 38, 85, 95, 119, -18, -107, 36, 37, -37, -89, 52, 33, -47,
111, -38, -75, -18, -101, -48, 116, 55, -65, 8, -57, 105, -12, 105, 78, 96, -111, 20, 40, -114,
-98, -3, -19, -39, -101, 15, 90, 13, 108, 83, -35, -11, 19, 107, 102, -114, 17, 115, 80, -38,
-121, 82, 20, 12, -7, -32, -56, 77, -13, -25, -44, 114, -5, -56, 103, -79, -39, -76, 86, 25,
-71, -127, 101, -70, -44, -122, -112, -92, -1, -2, -39, -95, -29, -57, -113, 31, 62, -12, -39, -41,
77, -89, 41, -72, 57, 90, 14, -108, -104, 104, -12, -48, 53, 7, 42, 110, -41, -43, -43, -35,
42, 63, -71, 102, -8, -56, 12, 12, -89, 103, 42, -23, -63, -94, -107, 87, 1, 20, -108, -109,
98, -79, 24, -93, 20, -112, -45, -118, 43, -108, 2, -49, 121, -75, 95, 40, -97, -49, 15, -19,
-105, -108, -125, -45, 95, -112, -91, 5, -21, -75, 101, 116, -65, 15, 80, 20, -27, -122, -46, 52,
0, -54, 53, 101, 38, -47, -88, 92, 57, 79, 37, -3, -112, -35, -40, -48, -89, -124, -19, 64,
58, 0, 43, 0, -53, 9, 88, -5, 50, -95, 95, -62, -54, 62, 64, 39, 7, -97, -22, -89,
-80, -24, -92, -107, -49, -116, -15, 79, 88, 121, -89, -39, 94, 55, -12, 33, -95, -75, 110, 120,
107, -96, Byte.MAX_VALUE, 26, -8, -79, 116, 86, -92, 27, -62, 113, Byte.MAX_VALUE, 100, -91, 126, -5, 22, -99, 93,
52, 81, -124, 95, -62, -6, -57, 29, 46, -10, 103, -7, 8, 44, 90, -5, -77, -12, -97, 75,
-3, 18, 22, -83, -99, Byte.MAX_VALUE, 52, -9, -108, 122, -71, 0, 108, 5, -105, -69, -107, -67, 91, 104,
-18, 86, 70, 103, 83, -4, 17, 86, -6, 126, 90, -80, -86, 38, -7, 33, 44, -43, -88, 43,
-76, 96, -35, -103, -29, -121, -80, 52, -63, 119, -23, -99, 10, -101, -25, -121, -10, 29, -25, -47,
59, 21, -58, -20, 121, 67, 47, 49, 89, -39, -45, 105, 30, -50, -36, -110, -27, 119, -95, 52,
-3, -109, -84, -25, 18, 85, 126, 103, -78, 104, -97, -111, -66, -37, -69, -52, -33, 76, 22, -3,
-45, -9, -120, 71, 0, 63, -125, 69, -65, -82, 3, 3, 21, 67, -68, 76, -88, -52, 109, -76,
97, -99, 25, 44, -9, -77, -98, 21, 115, -119, 54, 44, 109, -120, -97, -39, 44, 124, 80, 45,
-3, -6, 89, 35, -91, -2, 101, -76, 92, -87, -97, 69, -77, 50, -101, -9, -114, -62, -94, 29,
15, 57, -83, -7, -25, -43, -10, 61, -19, 44, -105, -43, 36, -67, 60, -40, 121, -87, -38, -107,
58, -91, 95, -8, 83, 30, 30, 16, 46, -43, 41, 69, -35, 46, 9, -13, -23, -64, -48, -75,
10, -72, -24, 90, -100, 31, -71, -91, -82, -42, 86, 110, 30, -114, -5, 77, -41, -94, -92, 46,
86, -19, 70, 27, -3, 39, 77, 3, 83, 92, -84, 7, -17, -64, 77, 3, 62, 35, -22, 30,
-82, -34, 52, 96, -17, 14, 11, 31, -102, 11, -91, 31, -70, 122, -121, -123, -99, -37, 81, 124,
73, 50, -19, -34, 113, 104, -1, -34, -99, 30, 126, -78, -103, 70, 25, -25, -6, -67, 59, -122,
85, -2, -79, -118, 15, -80, -91, 77, 46, -61, 66, -27, -81, -6, -57, 92, -56, -60, 93, 97,
-106, 111, -95, -13, -67, -114, -59, -52, 45, 116, -24, -37, 98, 63, -104, 15, 21, 115, -105, 32,
38, 96, 93, -23, -81, -16, -125, -114, 21, 114, -101, 17, 88, -24, -103, 98, -97, -9, -30, -87,
-4, -9, 16, 51, -80, -70, -34, -10, -21, -117, 50, -8, 42, 67, -80, -48, 107, 62, -17, -59,
75, -89, 53, 49, 5, -85, -62, -41, -77, -53, 32, -29, 36, 98, 10, 86, -3, 95, 101, 62,
110, -78, -34, -84, 101, 12, -106, -63, -57, 19, -90, 114, -47, 70, -60, 24, 44, 84, -13, 10,
-23, -61, -76, 0, -50, -41, 50, 8, 11, 109, 76, -15, -31, -35, 71, -14, -33, -18, 70, 76,
-62, -46, -14, 125, 55, -67, 12, -80, 80, 61, -93, -80, -48, -82, 104, -33, -11, 30, 82, 15,
35, 102, 97, 53, -66, -24, -91, -37, 30, -20, 107, 77, -68, 81, -57, 48, 44, 116, 49, 70,
-19, -115, -84, -96, 93, -89, 7, -90, 31, 68, 76, -61, 106, 92, 82, -30, 125, 93, 11, 40,
115, 120, 118, 18, -67, 20, 54, -76, -111, 113, 88, -24, 92, -100, -41, 69, -120, 20, -106, 56,
-2, 69, -37, -39, 56, 64, -11, -70, Byte.MIN_VALUE, -104, -121, -123, -2, 88, -88, -16, 58, 88, 65, 23,
-1, 97, -37, 122, -64, -52, 121, -120, 13, 88, 53, 94, -25, 62, -88, -110, 54, -36, -98, 96,
-5, 37, -78, 94, 90, 86, 96, -95, 93, 99, 28, -125, 5, 100, -78, -36, 60, 73, -111, 120,
-39, 50, -103, -116, 80, -86, 91, 111, -90, -91, 0, -32, -100, 52, 37, -23, -45, 84, -98, 106,
91, -43, -119, 123, 13, -20, -64, 106, -100, 44, 118, 108, 6, -54, 29, -60, -21, -71, -12, -32,
-10, 47, -65, -100, 51, 115, 80, 100, -65, -33, -58, 76, -100, -110, 93, -76, -116, 32, -53, 90,
111, 121, -31, -50, 95, -61, -61, -85, -48, -34, 108, 91, -49, 8, -108, -60, 59, -47, -79, -100,
-126, -123, 46, -57, 57, -42, 82, 101, 73, -63, -92, 62, -13, 79, -42, 26, -102, 26, -21, -75,
-9, -81, 92, 57, -74, -17, -101, -113, -33, -32, 11, 66, 126, 57, 36, 37, -73, 120, -91, 70,
-93, -30, -124, 25, -116, -34, 109, 104, -7, -34, -26, 66, 30, 28, 112, 17, -79, 5, -53, -80,
-44, -47, 11, 41, Byte.MIN_VALUE, -23, 118, 119, -34, 103, -25, 27, 90, -52, 58, 102, 77, -43, -123, -9,
-89, -65, -33, -13, -55, -98, -61, 70, -3, 93, 84, 72, -32, -72, 90, -83, 38, 89, 27, -98,
84, -42, 124, 61, 106, -2, -9, 50, 91, -84, 68, 11, 16, 107, -80, 80, 93, 16, -26, 112,
58, 30, 106, -16, -4, -24, 30, -97, -97, -66, 105, 126, -59, -53, -26, 10, -124, 26, -76, 55,
43, 79, 31, -36, 50, -12, -35, -113, -33, -7, 75, 82, 74, 94, 118, -111, 84, -122, 67, 83,
95, 99, -78, -77, 81, -54, 49, -13, 27, 16, -46, 63, 39, -77, 21, 20, -10, 110, 96, 17,
22, -70, -48, 67, -23, 68, 93, 92, 8, 9, -55, -108, -60, -9, 54, 118, 92, -119, -77, -71,
-67, 64, 52, -38, 112, -95, -15, -34, -99, -21, -105, 79, -20, -5, -14, -33, -3, -123, -125, -94,
83, 114, -60, -91, -86, 50, 13, 67, -59, -17, 32, -15, -44, 118, -109, -81, 89, -5, -108, -115,
23, -87, 7, 87, 32, 54, 97, -95, -51, -87, -50, -122, 102, 106, 124, 97, 98, -48, -5, 23,
30, 5, -10, 51, 42, -37, 63, 105, -35, 99, 77, 13, 45, -51, -51, 15, -74, -2, -25, -48,
23, -15, 60, 126, 104, -92, 40, 119, 101, -21, -20, -23, -38, -40, -108, 23, 10, -114, -73, 26,
Byte.MIN_VALUE, -118, 33, -42, 71, 2, -56, 89, -33, -52, 46, -84, 7, 111, 58, 95, -93, 21, -54, -43,
121, -111, -126, 79, 43, 30, -24, -48, -77, -75, -35, 96, -75, -106, 114, 89, -41, -70, 94, 80,
Byte.MAX_VALUE, -29, -46, -50, -115, -29, -121, -57, -1, 126, 82, 122, -114, 24, -109, 17, -72, -102, -122, -49,
1, 40, 92, 58, -22, -35, -57, -9, -63, -20, -77, 94, -41, -118, 42, 29, 90, -125, -40, -123,
-123, 46, 63, -89, 118, -2, -87, 3, -88, 33, -14, 99, -94, 62, 61, 29, 116, -53, 10, 44,
-77, -8, 76, -89, -67, 121, -27, -20, -109, -33, 126, -15, -55, 59, 125, 7, -90, 78, -55, 19,
47, 35, -28, 26, 21, 116, 108, -2, -92, -96, 10, -53, 28, -44, -89, -3, 4, -3, -101, 86,
-41, -91, Byte.MIN_VALUE, 50, -76, 2, -79, 13, 11, -83, 31, 65, 43, -22, 1, 20, 32, -92, 11, 121,
-61, -41, -108, 55, -37, -127, -43, 42, -29, 116, 77, -115, -1, -67, Byte.MAX_VALUE, -17, -62, -79, 93, -1,
124, 67, 16, -42, 107, 72, 106, -98, -92, 84, 83, -10, 8, 26, -80, 102, 33, -27, -118, -107,
-87, -67, 66, 118, -35, -39, -36, 118, -3, -120, -127, 111, -67, -40, 106, -12, 110, -60, 62, 44,
20, 79, -1, 96, 29, 37, 5, 11, -61, 121, -13, 126, 110, -74, 7, -53, 48, -50, 60, 121,
121, -9, -42, -7, -19, 107, 95, 14, 10, -30, 63, -105, -104, -98, 82, 88, 76, -112, 22, -30,
61, 53, 94, 32, -118, 19, -12, -36, 96, -28, 100, 88, -35, 54, -40, -85, -7, 86, -113, -105,
-26, -49, 107, -31, 2, -106, 118, 36, -3, 34, 53, 20, 9, -53, -108, 121, -111, -95, -33, -100,
-69, -65, -38, -20, -76, 90, 99, 87, 88, 119, 63, -22, -6, -83, -121, 107, 80, -67, -74, -86,
-4, -56, -63, -11, 107, -2, 53, 124, -63, -20, -39, -77, -1, -14, -10, 99, 73, 124, -5, -19,
63, -49, -2, -37, -65, -2, -75, 102, -1, -27, 71, -112, -12, -19, -92, -49, 68, -53, -83, -123,
-40, 35, -17, 33, 46, 96, 25, -51, -106, 107, 73, 38, -88, -112, 21, -116, 121, -67, -49, -102,
43, -19, -124, -102, 87, 63, -24, -4, 21, -73, -70, -63, 90, -35, 113, 120, -71, 113, 67, 99,
109, -19, -3, -101, -41, 31, -53, -10, -99, 55, 110, -34, -81, 107, -22, -104, -39, 110, -73, -65,
121, -87, -107, 43, 14, 0, 41, -68, -120, -72, -127, -123, 126, -120, 117, -15, -16, -76, 113, -126,
-61, -119, -100, -72, 103, 86, -100, 107, -74, 12, -21, 118, 55, 88, 51, 58, -90, -82, -90, 5,
-99, -90, -4, 51, -25, -69, -98, 41, 109, 59, 65, -33, 52, -44, 74, -98, 68, 21, -71, 21,
113, 5, 11, -51, -56, 96, 96, 95, 13, -91, 80, 22, 70, -14, 62, -5, 73, -85, 55, -76,
116, -21, 89, -53, -69, 41, -38, 17, 8, 52, 125, -44, 105, 53, -26, -25, 51, 93, 94, -70,
-82, 109, Byte.MIN_VALUE, -33, 25, 109, 89, 77, 42, 101, 30, -30, 14, -42, -125, -87, -7, 76, 68, 116,
70, -113, 2, -49, -119, 9, -1, -4, 72, -27, -126, 46, 69, -85, -50, 28, -80, 1, 75, -65,
-70, -66, 19, -40, -19, 93, -78, 44, -49, -74, 85, 72, 57, -99, 110, -47, 113, Byte.MIN_VALUE, -39, -45,
116, 28, -62, 66, 53, -81, -120, -103, -119, Byte.MAX_VALUE, -115, 19, 62, 46, -50, -100, -60, 95, 122, -82,
-45, 110, -125, 83, -35, 97, 117, -28, 82, -12, 107, 59, -27, 85, 110, -19, -18, 12, 75, -41,
-42, -90, -26, -11, 22, -107, -124, -110, -89, -17, 32, 46, 97, -95, -86, -89, -43, 76, 102, 11,
64, 113, 98, -16, 31, 15, -44, 91, -121, -91, 11, 66, -114, -62, -86, 106, -69, -51, -23, -63,
-121, 50, -53, -117, -11, -73, 16, -73, -80, -48, -47, 80, -100, -47, 44, -127, 10, 22, 15, 9,
-103, 124, -32, -50, -125, 86, -29, 125, -8, 84, 87, Byte.MAX_VALUE, -59, 113, 88, -57, -73, 63, -2, -31,
106, -76, 5, Byte.MAX_VALUE, 12, 16, -67, 78, 33, -82, 97, -95, 3, -111, -52, -90, -28, 1, -108, -109,
69, 19, 7, -2, 117, -45, -23, 91, -51, 104, 117, -91, 77, 88, -99, -90, -125, -69, 123, 58,
-69, -105, 107, -37, -34, -5, 93, 78, -9, -57, 9, -44, -79, -121, 17, -9, -80, 90, 14, -12,
101, 60, 109, 7, 40, -91, 76, 34, 122, 107, -8, -106, 25, 85, 93, -89, -108, -98, 29, 63,
55, 111, -19, 84, -29, -86, 102, 107, -89, -55, -47, -16, -14, 99, -108, -75, -95, -35, -97, 38,
Byte.MIN_VALUE, -65, -38, -35, -30, 6, 88, -56, -80, 37, -127, -107, -115, -71, 20, -60, 69, -31, -4, -49,
46, -23, 12, 102, -61, -21, -46, 90, -77, -57, -76, -75, -45, 81, -26, -102, -51, -99, 96, -43,
-73, -103, -84, 13, 25, -118, -18, -50, 104, -44, 38, -6, 13, 118, 5, 22, 122, -72, 98, 12,
59, -37, -74, 76, 73, -118, -68, -127, 97, 31, 30, -65, 126, -65, -39, 105, 88, -73, 30, 95,
109, 88, 45, -80, 96, 38, -58, 126, -122, -36, 4, 11, -23, 54, -60, -80, -74, -16, 14, 85,
-124, 56, 51, 97, -50, -102, -67, -41, 90, 125, -94, 75, -85, 29, -123, 85, -15, 104, 34, -43,
-81, 40, -20, -42, -17, 21, 99, -65, -46, -71, 13, 22, 106, 90, -101, -63, -30, 22, 121,
0, -44, 56, 54, 107, -44, -109, -45, -49, 104, -47, -123, -35, 86, 97, -43, 111, -18, 68, -32, -16,
-93, -24, -25, 100, 66, -73, -49, -45, 76, 88, -46, -124, -36, 7, 11, 53, 45, 126, 85, -51,
-22, -30, -87, 49, -22, 38, 11, -121, 8, 126, 19, -65, 85, -89, 107, -77, -52, -122, 61, 55,
58, -63, 90, 103, 14, -85, 101, 115, 107, 16, 121, -5, -41, -91, -35, -4, -85, -124, 25, 15,
-111, 59, 97, 33, -35, -106, -66, 108, 47, -22, 27, 125, 10, -123, 56, -87, 95, -8, -57, 59,
126, -68, -39, -102, -89, 48, 28, -88, -76, 14, 75, -73, -63, -28, -124, 93, 13, -23, -102, 34,
5, -54, -63, 63, -24, -111, 123, 97, 25, 53, -17, -53, -63, 26, 51, -123, 43, -119, 101, 5,
41, Byte.MAX_VALUE, -98, -66, 116, Byte.MAX_VALUE, 101, 61, 58, 80, 101, 29, 86, -61, -122, 6, -124, -114, -12, -106,
118, 49, 15, 64, 49, -56, 5, -97, -127, 41, 88, -56, -16, 67, -88, -102, -85, 109, 12,
0, 22, -91, 9, 121, 125, -2, 112, 92, 107, 21, 86, -35, 58, -125, -10, -3, 72, -68, -101, -33,
46, -36, -32, 114, 75, 25, Byte.MIN_VALUE, 101, -116, 124, 34, 48, -50, 54, 125, 80, -14, 50, 82, 44,
-22, 27, 26, -15, -7, -15, -14, -69, -9, 27, -102, -116, -82, 88, -117, 57, -84, -106, 11, 75,
-74, 61, 49, -79, -85, 71, 67, 73, -5, -97, 66, -98, 1, 11, 85, -116, 44, -30, -16, -36,
24, -96, -96, 70, -119, 21, 101, -114, 25, -14, -113, 79, -42, 108, -39, 123, -10, -57, 113, -107,
55, -17, 52, -24, 26, -18, -35, -66, 118, 118, -1, -73, -81, 61, -107, -121, -53, -69, -80, -46,
20, -68, 84, -114, 60, 5, 22, -70, -47, 39, -97, -29, -126, 119, -90, -43, 68, 37, 78, -108,
-118, 115, 68, Byte.MAX_VALUE, 18, -116, 126, 107, -12, 51, 67, -97, 25, 61, 108, -44, -33, -25, 98, 50,
-68, -37, 58, 35, -52, -22, 83, -123, 60, 7, 22, -86, 29, -97, -90, 118, -53, 78, 55, 96,
-20, 103, 4, 5, -95, -62, -76, 51, -57, -30, -38, 34, 80, -90, -1, -95, 30, 121, 18, 44,
-92, -33, 20, 91, -30, -82, 35, -100, 54, -97, 18, 44, 29, -78, 81, -113, 60, 11, 22, 50,
-100, 12, -109, 104, 72, -113, 19, -72, 40, -20, 100, 11, -14, 52, 88, 8, 85, 5, 103, 121,
-36, 41, 12, -112, -37, -5, 54, 115, 45, 100, 16, 22, -46, 46, 29, 81, -30, 81, -89, -87,
41, 98, -60, 98, 45, -14, 76, 88, -88, -27, -124, 48, 31, 122, -52, -114, 102, 64, -27, 71,
-100, -48, 35, 79, -123, -123, 30, -42, 76, -117, -10, -108, -109, -119, 20, -120, -103, 87, -61, 104,
-21, 24, -122, -123, 80, -13, -90, 8, -49, -88, -87, 8, -92, -65, -8, 90, -113, 60, 27, 22,
66, -27, 51, -58, 18, 110, 55, -12, 80, -106, 54, -29, 103, -58, -101, -58, 60, 44, 84, Byte.MAX_VALUE,
88, -104, -93, 112, 43, 46, 10, -26, 9, -113, -22, -112, 55, -64, 66, -24, -18, -44, 112, -52,
-115, -45, 34, -123, -3, 114, -86, -106, -115, 118, -79, 2, 11, -95, 83, 125, -78, 8, -32, -98,
-8, -121, -60, 83, -30, -49, -79, -45, 42, -106, 96, 33, -19, -114, 97, -103, 56, -9, -67, 11,
64, 124, -54, -24, -67, 117, -56, -69, 96, 33, -61, -67, 109, -62, -123, 101, 20, -41, -58, 42,
43, -12, -69, 123, 108, 53, -119, 61, 88, -90, -60, -51, 56, -95, -104, 91, 90, -30, -80, -8,
90, 22, 27, -60, 38, 44, -124, 42, -26, 39, -118, 113, -118, 19, -37, 5, 40, 92, -110, 56,
-65, -126, -43, -26, -80, 11, 11, -23, -81, -84, -115, -100, -94, -106, -77, -114, 11, -56, -15, 41,
-31, 107, -81, -24, -111, 55, -61, 50, -30, -86, -2, -22, -119, 12, 10, -78, 108, -42, -55, 12,
-63, 87, -9, -12, 108, -73, -123, 117, 88, -90, 5, -49, -81, -125, -45, 9, 22, 11, 29, -88,
101, Byte.MAX_VALUE, -17, -67, -95, -114, -125, -122, 112, 1, 11, -95, -102, -67, 31, 12, -50, 47, 81, 48,
-97, -111, 0, 16, 98, -103, -119, -13, -113, -44, 113, -46, 12, 110, 96, 33, -44, 120, 109, 87,
88, 116, 1, 84, 49, 58, 59, 82, 42, 50, -65, -33, -81, 119, 94, -41, 113, -44, 8, -82,
96, 25, 29, -81, -90, -97, -26, 9, -110, 75, 21, Byte.MIN_VALUE, 57, -89, 10, 27, -53, -101, 119, -95,
-39, -64, 89, 19, -72, -125, -43, 58, 28, 119, 14, 31, -99, -123, 17, 106, -54, -75, 80, 8,
0, 74, 77, -120, 69, -61, -34, 61, 90, -57, -87, -6, -36, -62, 66, -88, -27, -6, -111, -81,
103, 70, 79, 17, -85, 53, 116, -113, -84, 82, 80, -91, -106, 76, 25, 50, 115, -3, -23, -101,
28, -21, -50, 57, 44, -109, 51, -15, -32, -42, -95, -111, -126, 126, -103, 37, 101, 78, 91, 124,
35, 40, 57, -106, -38, 47, 100, -14, -79, -101, 15, -12, -36, 107, -18, 6, 88, -113, -110, 94,
-25, -105, 7, 9, 18, 114, -99, -54, -86, -86, -107, -30, 89, -65, 11, 14, 90, 119, 73, -25,
38, -91, -35, 5, -53, 36, -43, -25, -74, 44, -98, -6, -50, -92, -119, -39, 69, 82, 12, -57,
31, -83, 40, -73, 30, -13, 109, 21, -54, 36, -90, Byte.MAX_VALUE, 3, -72, 12, -109, -2, 95, -2, -104,
73, 115, -34, 93, -79, -9, 114, -83, 27, 21, 118, 39, 44, -109, 60, -72, 115, -19, -20, -63,
-17, 62, -97, 19, 30, 62, 36, 58, 53, 53, -81, -96, -96, 0, 43, -111, -103, -124, 40, 50,
-2, -100, -97, 58, 49, 102, 96, -65, 30, -65, -97, -13, -27, 15, -5, 47, 95, -69, -33, -32,
102, 101, -35, 13, -85, -43, -87, 104, -42, 55, 53, 54, -36, -8, -7, -40, -79, 109, -85, 86,
125, -6, 27, -63, 35, -7, -44, -8, -13, -9, -57, 14, 85, 84, -35, -42, -23, -102, -12, 45,
6, 15, 80, -44, 19, 96, 121, -115, 4, 96, 5, 96, 5, 96, 5, 96, 5, 96, 5, 96,
5, 36, 0, 43, 0, 43, 0, 43, 0, 43, 0, 43, 0, 43, 32, 1, 88, 1, 88, 1,
88, 1, 88, 1, 88, 1, 88, 1, 9, -64, 10, -64, 10, -64, 10, -64, 10, -64, -14, 81,
-7, Byte.MAX_VALUE, -22, 49, 3, -6, -103, -10, -14, 116, 0, 0, 0, 0, 73, 69, 78, 68, -82, 66,
96, -126 };
}

@ -0,0 +1,82 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package hackvent2018.evil;
import java.awt.Component;
import java.util.Arrays;
import java.util.Iterator;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
public class EvilAction {
private byte[] b = new byte[]{-64, 15, 15, 10, 82, 79, 76, 67, 76};
public EvilAction() {
}
public String[] getMenu() {
/*
Iterator var2 = System.getenv().keySet().iterator();
while(var2.hasNext()) {
String s = (String)var2.next();
if (Arrays.equals(this.b, this.xor(s.getBytes(), NotEvil.b))) {
String[] t = new String[]{"No", "Go away", "Yes"};
return t;
}
}
String[] u = new String[]{"No", "Go away"};
return u;*/
String[] t = new String[]{"No", "Go away", "Yes"};
return t;
}
public ImageIcon respond1(int answer) {
switch(answer) {
case 0:
return EvilImages.getIcon(EvilType.NOTEVIL);
case 1:
return EvilImages.getIcon(EvilType.SAD);
case 2:
// Iterator var3 = System.getenv().keySet().iterator();
return EvilImages.getIcon(EvilType.EVIL);
/*while(var3.hasNext()) {
String s = (String)var3.next();
if (Arrays.equals(this.b, this.xor(s.getBytes(), NotEvil.b))) {
return EvilImages.getIcon(EvilType.EVIL);
}
}
return EvilImages.getIcon(EvilType.NOTEVIL);
*/
default:
return EvilImages.getIcon(EvilType.SAD);
}
}
public void respond2(int answer) {
if (answer == 2) {
String[] buttons2 = new String[]{"Cool"};
JOptionPane.showOptionDialog((Component)null, EvilEvent.eventResult(), "Evilist", -1, 1, (Icon)null, buttons2, buttons2[0]);
}
}
private byte[] xor(byte[] c, byte[] b) {
byte[] x = new byte[c.length];
for(int i = 0; i < c.length; ++i) {
x[i] = (byte)(c[i] ^ b[i]);
}
return x;
}
}

@ -0,0 +1,31 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package hackvent2018.evil;
public class EvilEvent {
private static byte[] b = new byte[]{-83, 8, 119, 19, 73, 17, 2, 83, 126, 17, 33, 119, 115, 6, 38, 16, 26, 23, 10, 127, 20, 85, 81, 47, 13, 88, 43, 0, 70, 27, -122, 8, 83, 17, 125, 46, 78, 64, 89, 78, 41};
public EvilEvent() {
}
static String eventResult() {
byte[] x = xor(b, NotEvil.b, 0);
x = xor(x, Evil.b, 100);
x = xor(x, Sad.b, 200);
x = xor(x, Question.b, 300);
return new String(x);
}
private static byte[] xor(byte[] c, byte[] b, int offset) {
byte[] x = new byte[c.length];
for(int i = 0; i < c.length; ++i) {
x[i] = (byte)(c[i] ^ b[i + offset]);
}
return x;
}
}

@ -0,0 +1,33 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package hackvent2018.evil;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
public class EvilHandler implements MouseListener {
private EvilWindow ew;
public EvilHandler(EvilWindow ew) {
this.ew = ew;
}
public void mouseClicked(MouseEvent e) {
this.ew.ask();
}
public void mousePressed(MouseEvent e) {
}
public void mouseReleased(MouseEvent e) {
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
}

@ -0,0 +1,28 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package hackvent2018.evil;
import java.util.ArrayList;
import java.util.List;
import javax.swing.ImageIcon;
public class EvilImages {
private static List<ImageIcon> iiList = new ArrayList();
public EvilImages() {
}
public static void preloadImages() {
iiList.add(new ImageIcon(NotEvil.b));
iiList.add(new ImageIcon(Sad.b));
iiList.add(new ImageIcon(Question.b));
iiList.add(new ImageIcon(Evil.b));
}
public static ImageIcon getIcon(EvilType evilType) {
return (ImageIcon)iiList.get(evilType.ordinal());
}
}

@ -0,0 +1,48 @@
package hackvent2018.evil;
import java.lang.reflect.Field;
public class EvilLoader
extends ClassLoader
{
public EvilLoader(ClassLoader parent)
{
super(parent);
}
private Class getClass(String name)
throws ClassNotFoundException
{
byte[] b = loadEvilClass(name);
return defineClass(name, b, 0, b.length);
}
public Class<?> loadClass(String name)
throws ClassNotFoundException
{
try
{
return getClass(name);
}
catch (ClassFormatError cfe)
{
return super.loadClass(name);
}
catch (ClassNotFoundException cnfe) {}
return super.loadClass(name);
}
private byte[] loadEvilClass(String name)
throws ClassNotFoundException
{
Class clazz = EvilLoader.class.getClassLoader().loadClass(name);
try
{
return (byte[])clazz.getField("b").get(clazz);
}
catch (IllegalArgumentException|IllegalAccessException|NoSuchFieldException|SecurityException|ClassFormatError e1)
{
throw new ClassNotFoundException(e1.toString());
}
}
}

@ -0,0 +1,16 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package hackvent2018.evil;
public enum EvilType {
NOTEVIL,
SAD,
QUESTION,
EVIL;
private EvilType() {
}
}

@ -0,0 +1,53 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package hackvent2018.evil;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Toolkit;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
public class EvilWindow {
private JFrame frame = new JFrame("Evilist (Click on Image)");
private JLabel label = new JLabel();
private JPanel jp = new JPanel();
public EvilWindow() {
EvilImages.preloadImages();
this.frame.setDefaultCloseOperation(3);
this.frame.setBackground(Color.BLACK);
this.jp.setBackground(Color.BLACK);
this.label.setBackground(Color.BLACK);
this.setIcon(EvilImages.getIcon(EvilType.QUESTION));
this.jp.add(this.label);
this.frame.getContentPane().add(this.jp);
this.frame.pack();
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
this.frame.setLocation(dim.width / 2 - this.frame.getSize().width / 2, dim.height / 2 - this.frame.getSize().height / 2 - 150);
this.frame.setVisible(true);
this.label.addMouseListener(new EvilHandler(this));
}
public void ask() {
EvilAction ea = new EvilAction();
this.setIcon(EvilImages.getIcon(EvilType.QUESTION));
String[] buttons = ea.getMenu();
int answer = JOptionPane.showOptionDialog((Component)null, "Are you evil?", "Evilist", -1, 3, (Icon)null, buttons, buttons[0]);
ImageIcon ii = ea.respond1(answer);
this.setIcon(ii);
ea.respond2(answer);
}
private void setIcon(ImageIcon ii) {
this.label.setIcon(ii);
}
}

@ -0,0 +1,16 @@
package hackvent2018.evil;
public class Evilist
{
public static void main(String[] args)
throws Exception
{
/*EvilLoader evilLoader = new EvilLoader(Evilist.class.getClassLoader());
EvilLoader loader = new EvilLoader(Evilist.class.getClassLoader());
Class<?> clazz = loader.loadClass("hackvent2018.evil.EvilWindow");
clazz.newInstance();*/
new EvilWindow();
}
}

@ -0,0 +1,27 @@
package hackvent2018.evil;
import java.io.File;
import java.io.FileOutputStream;
public class Main extends ClassLoader {
private EvilLoader evilLoader;
public Main() {
this.evilLoader = new EvilLoader(this);
}
public static void main(String[] args) throws Exception {
Main outputter = new Main();
// outputter.outputClassToFile("hackvent2018.evil.EvilAction", "/tmp", EvilAction.b);
}
public void outputClassToFile(String name, String path, byte[] data) throws Exception {
Class regeneratedClass = evilLoader.loadClass(name);
FileOutputStream output = new FileOutputStream(new File(path + "/" + regeneratedClass.getCanonicalName() + ".class"));
output.write(data);
output.close();
}
}

@ -0,0 +1,327 @@
package hackvent2018.evil;
public class NotEvil {
public static byte[] b = {
-119, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72, 68, 82, 0, 0, 1, 44,
0, 0, 1, 44, 8, 3, 0, 0, 0, 78, -93, 126, 71, 0, 0, 3, 0, 80, 76, 84,
69, 0, 1, 0, 3, 0, 6, 7, 0, 0, 0, 3, 6, 3, 5, 1, 11, 3, 2, 7,
9, 5, 18, 8, 0, 12, 11, 0, 10, 11, 21, 20, 11, 2, 16, 15, 4, 12, 16, 28,
25, 15, 0, 15, 17, 13, 21, 18, 0, 16, 17, 25, 20, 19, 11, 17, 21, 23, 30, 20,
0, 25, 22, 8, 27, 23, 1, 24, 22, 25, 24, 23, 16, 22, 24, 22, 35, 24, 0, 21,
25, 36, 24, 25, 32, 27, 27, 25, 33, 28, 3, 31, 29, 17, 33, 29, 12, 40, 29,
0, 28, 30, 27, 39, 32, 3, 31, 33, 30, 38, 34, 19, 47, 34, 1, 40, 35, 15, 31, 35,
47, 35, 36, 34, 38, 36, 27, 44, 37, 2, 43, 37, 9, 38, 37, 41, 37, 39, 37, 38,
39, 47, 52, 40, 2, 41, 42, 44, 50, 43, 13, 46, 43, 27, 44, 43, 34, 36, 43, 60,
39, 43, 55, 58, 44, 0, 50, 44, 24, 44, 46, 44, 59, 49, 5, 46, 48, 55, 63, 48,
6, 44, 48, 62, 56, 49, 18, 55, 49, 28, 49, 49, 52, 60, 50, 14, 54, 50, 34, 66,
50, 1, 51, 53, 50, 55, 53, 42, 70, 53, 0, 53, 54, 62, 66, 56, 13, 64, 56, 28,
60, 56, 40, 74, 56, 1, 55, 57, 55, 63, 57, 36, 72, 60, 11, 78, 60, 0, 78, 61,
6, 60, 62, 59, 68, 63, 46, 82, 64, 1, 62, 64, 61, 73, 64, 29, 62, 63, 72, 71,
64, 37, 76, 65, 22, 61, 65, 67, 71, 65, 43, 67, 65, 69, 65, 67, 64, 68, 67, 60,
79, 68, 18, 70, 67, 55, 87, 68, 0, 86, 68, 5, 69, 71, 68, 69, 70, 78, 74, 71,
59, 76, 71, 54, 73, 71, 75, 69, 73, 75, 74, 73, 66, 94, 74, 4, 92, 74, 12, 72,
74, 71, 89, 75, 20, 97, 77, 0, 103, 76, 0, 77, 79, 76, 76, 80, 82, 102, 81, 1,
78, 80, 89, 102, 81, 12, 108, 81, 0, 107, 84, 6, 84, 83, 87, 86, 85, 78, 114, 85,
0, 85, 87, 84, 85, 86, 96, 111, 88, 0, 90, 87, 75, 116, 93, 6, 122, 92, 0, 119,
94, 0, 94, 93, 85, 92, 93, 102, 96, 93, 97, 91, 95, 108, 94, 96, 93, 99, 96, 83,
124, 99, 2, -127, 98, 0, Byte.MAX_VALUE, 102, 7, 101, 101, 110, 101, 103, 100, 103, 102, 106, 104, 103,
95, -120, 104, 0, -123, 106, 0, 108, 107, 111, 107, 108, 106, -115, 108, 6, -119, 110, 6, 107,
108, 117, -112, 110, 0, 111, 110, 102, 110, 112, 109, -107, 114, 2, -112, 116, 0, 115, 116, 125,
117, 116, 120, 116, 118, 115, -103, 118, 9, -106, 121, 10, -99, 121, 0, 119, 123, 126, 122, 122,
-125, 126, 124, Byte.MIN_VALUE, -93, Byte.MAX_VALUE, 7, 125, Byte.MAX_VALUE, 124, Byte.MIN_VALUE, -127, -118, -87, -125, 0, -123, -126, -122, Byte.MAX_VALUE,
-124, -122, -126, -124, -127, -82, -120, 7, -123, -118, -115, -77, -117, 0, -119, -118, -121, -119, -118, -108,
-114, -116, -112, -73, -113, 2, -112, -112, -114, -116, -111, -108, -68, -109, 13, -66, -108, 0, -109, -108,
-99, -111, -106, -104, -104, -106, -102, -61, -103, 3, -104, -102, -105, -57, -100, 11, -98, -100, -96, -53,
-97, 0, -103, -98, -95, -98, -96, -99, -49, -94, 2, -91, -94, -89, -45, -90, 13, -95, -90, -87,
-92, -90, -93, -42, -88, 0, -38, -84, 1, -87, -85, -88, -84, -86, -82, -89, -84, -82, -33, -80,
13, -31, -79, 0, -29, -77, 0, -77, -80, -76, -83, -78, -76, -80, -78, -81, -26, -74, 1, -79,
-74, -71, -22, -71, 11, -18, -68, 0, -68, -70, -66, -73, -68, -65, -70, -68, -71, -15, -65,
0, -66, -64, -67, -10, -61, 11, -61, -63, -59, -7, -59, 17, -63, -60, -64, -65, -59, -57, -4, -56,
0, -2, -54, 0, -58, -56, -60, -1, -53, 2, -1, -52, 6, -55, -53, -56, -57, -52, -49, -2,
-48, 11, -50, -52, -48, -1, -46, 17, -3, -44, 17, -1, -42, 0, -3, -38, 0, -47, -45, -48,
-43, -45, -41, -48, -43, -40, -42, -41, -44, -39, -37, -40, -35, -37, -33, -39, -34, -31, -34, -33,
-36, -30, -28, -31, -31, -26, -24, -25, -24, -27, -26, -20, -18, -22, -20, -23, -21, -16, -13, -18,
-16, -19, -19, -13, -11, -15, -13, -16, -13, -11, -14, -10, -8, -11, -12, -7, -4, -10, -5, -2,
-7, -5, -8, -5, -3, -6, -2, -1, -4, -80, 116, -84, 91, 0, 0, 0, 1, 98, 75, 71,
68, 0, -120, 5, 29, 72, 0, 0, 0, 9, 112, 72, 89, 115, 0, 0, 29, -121,
0, 0, 29, -121, 1, -113, -27, -15, 101, 0, 0, 0, 7, 116, 73, 77, 69, 7, -30, 9, 19, 18,
22, 57, -124, -37, -64, -24, 0, 0, 21, 35, 73, 68, 65, 84, 120, -38, -19, -35, 123, 92,
20, -43, 30, 0, -16, 84, 34, 13, 5, 76, 73, -51, -9, -85, 76, 19, -45, -118, 107, -103,
-103, -92, -103, 107, 33, 62, -56, -110, 106, 13, -115, -56, 124, 96, -87, 92, 73, -51, -14, -102,
104, -112, 17, -127, -120, 33, -94, -92, -124, -118, 74, -70, 34, -74, 82, -69, 8, -19, -94, 44,
-113, 21, -111, -7, 120, 62, 122, -4, -20, 106, 75, -127, 60, 90, 119, -71, 119, 57, 119, -111,
96, 23, 31, 59, -17, -39, 89, 103, 126, Byte.MAX_VALUE, -44, -76, -42, 52, -13, -99, 115, -50, -100, 57,
-49, 7, -112, 24, -124, -29, 1, -111, 64, -60, 18, -79, 68, 44, 17, 75, -60, 18, -79, 68,
2, 17, 75, -60, 18, -79, 68, 44, 17, 75, -60, 18, 9, 68, 44, 17, 75, -60, 18, -79,
68, 44, 17, 75, 36, 16, -79, 68, 44, 17, 75, -60, 18, -79, 68, 44, 30, 92, -125, -59,
108, -84, -83, -83, 46, -54, -33, -97, -12, -3, 123, -17, 45, 28, -25, -43, 26, -61, 22, -66,
-9, -31, -9, 73, 39, 126, -67, 90, 91, -5, -9, 77, -117, -120, -123, 26, 74, 78, 39, 126,
-71, 120, -47, 60, -119, 100, 73, 68, 92, 114, -102, 76, 38, 43, -48, -76, -122, 42, 91, -106,
-107, -102, -4, 85, -124, 68, 50, -17, -19, 15, 87, 36, 30, 42, 50, 52, 9, 23, -85, -22,
88, 80, -33, 46, -45, 62, 73, -51, 81, -87, -118, -75, 21, 24, -80, 6, 118, 123, 52, -1,
88, 81, -82, -43, -88, 20, -87, -111, 111, 120, 122, 7, -3, 88, 41, 56, -84, -58, -6, -22,
19, -85, 61, 30, -108, 38, -28, -22, 33, -68, 83, -24, -82, 1, 32, -44, -87, 82, -105, 116,
-21, -4, -50, -31, 63, -22, -51, 66, -63, 50, -107, -92, -84, 122, 51, 96, 93, -102, 2, 18,
-122, 106, 7, -106, 25, 61, 123, -18, 7, 41, -123, 38, 1, 96, -99, -3, -96, -21, 27, -79,
10, 77, 57, 32, -23, 100, 79, -122, 105, 20, -37, -33, -24, 18, 82, 120, 95, 99, -35, -84,
77, -14, 24, 20, -85, -127, -44, -99, -20, -46, 24, -106, 60, -58, 35, -2, -22, -51, -90, -5,
19, -85, 48, 113, -111, 36, -50, 90, 72, 49, 64, 117, 43, -96, 94, 25, -25, 63, 107, -125,
-70, -15, -66, -61, 106, 58, -12, -40, -53, 105, -25, -54, -103, -126, 106, 77, 95, -27, -25, -46,
-33, -24, -70, -85, -23, 126, -62, 50, 27, -74, 117, 12, 80, 64, -122, -91, 90, -13, -93, 114,
118, -57, 109, 6, -13, 125, -126, 101, 58, -2, -127, Byte.MAX_VALUE, -100, 74, -49, 10, -43, 45, 46, -67,
42, -50, 63, -12, -48, -51, -5, 1, 107, 71, -33, 5, -14, 114, -42, -92, 90, -77, -93, 60,
-36, 123, -121, -85, 99, -3, 125, -62, 67, -86, -124, 24, 7, 1, 85, 82, -73, 61, 117, 46,
-116, 85, -69, 119, -6, 82, -123, 14, 96, -100, 4, -48, 41, -105, 14, -37, 91, -21, -86, 88,
59, 122, 111, 86, 97, -100, -122, 106, 115, -17, 29, -82, -120, 101, -50, 115, -105, 22, 67, -116,
-29, Byte.MIN_VALUE, -59, 82, -49, 60, -77, -85, 97, 21, -123, 78, -51, -31, 42, 3, -74, -49, -116, -71,
-110, -73, -44, 46, -123, -43, 16, 52, 86, 94, -31, 4, -86, 91, 92, 21, -14, 9, 65, 13,
46, -125, -43, 116, -92, 99, -84, -109, -92, -2, -15, -118, -19, 120, -60, -30, 26, 88, 37, 111,
73, -107, 58, -52, -87, -95, 83, 73, 3, 75, 93, 1, 107, -61, -64, 44, -116, 7, -111, 53,
112, 67, 35, -33, -79, -86, -6, -123, 97, Byte.MIN_VALUE, 15, 88, 0, 11, -21, 87, -59, 107, -84, -58,
-108, -111, 25, 16, -29, 73, -64, -116, -111, 41, -115, -4, -59, -86, -13, 93, -87, 1, 24, 111,
2, 104, 86, -6, -42, -15, 21, 43, -65, -13, 78, -120, -15, 42, -32, -50, -50, -89, 120, -119,
-43, -72, -43, 79, -82, -61, 120, 22, 58, -7, -44, -83, 70, -2, 97, -43, 60, -75, 82, 11,
48, -34, 5, -48, -82, 125, -86, -122, 111, 88, 23, -35, -109, 117, 24, 47, 67, -105, -20, 126,
-111, 87, 88, 77, 71, 70, -54, 32, -58, -45, Byte.MIN_VALUE, -78, 33, 71, -102, 120, -124, -75, -62, 95,
3, 48, -2, -122, -58, Byte.MAX_VALUE, 5, 111, -80, 76, -95, 1, 58, -116, -41, -95, 11, 8, 53, -15,
3, -85, 42, 56, 2, 96, 60, 15, 16, 17, 92, -59, 7, -84, -53, 125, -45, 49, 23, -120,
-12, -66, 87, -100, -113, 85, -27, -98, 1, 92, 1, 11, 28, -19, 89, -27, 108, -84, -46, -98,
89, 16, 115, -119, Byte.MIN_VALUE, 89, 61, 75, -99, -117, 85, -38, 43, 23, 96, 46, 18, 32, -73, 87,
-119, 51, -79, -118, 122, 42, 48, 23, 10, 5, -51, -100, -8, 0, -51, 60, 8, 92, 9, 11,
-48, -52, -119, 116, -80, 74, 92, 40, 15, 50, -110, 19, 105, 96, 25, 92, 43, 15, -74, -26,
68, -125, 51, -80, -82, -69, 103, 1, -41, -61, 2, 89, 30, -107, -36, 99, 85, -11, 77, -65,
103, -99, 1, -112, 9, -50, 27, -101, -67, 13, 92, 99, -103, -34, -70, 119, 93, 84, -107, -111,
73, 60, -28, 92, 107, -127, -116, -73, 76, 28, 99, -123, 126, 122, -17, -53, -39, -18, 70, 34,
36, -92, -22, -76, -112, 112, 56, 120, 6, -97, -122, 114, -117, -75, 66, -30, -32, -114, 126, 32,
-125, -75, Byte.MIN_VALUE, 12, -106, 106, 109, 36, -63, 88, -21, -24, -27, 35, 89, -63, 37, -42, 79, -2,
58, -89, 96, -55, 59, 19, 62, 111, -90, -93, 22, 27, -1, 35, -36, 97, -107, -114, -44, 96,
60, -57, 114, -49, 116, -40, 26, 56, -74, -110, 43, -84, 27, -18, 50, -32, -38, 88, 64, -26,
89, -61, 13, -106, -23, -87, 31, 28, -33, 32, -1, -79, 48, -8, -125, -81, -123, 19, -84, -83,
-111, 56, -115, -56, 46, Byte.MIN_VALUE, -123, -23, -61, -73, 114, -127, -11, -117, 68, -117, -71, 62, 22, -90,
-99, -112, -49, 62, 86, -115, -121, 28, -17, -106, -110, 93, 1, -53, 122, -82, 6, -74, -79, 26,
125, -15, 59, 83, -75, 42, 18, -95, -63, -72, -81, 58, -76, -44, 31, 18, 72, 23, 91, 100,
-79, 18, 35, 9, -92, 4, -42, 62, 13, 21, -61, -5, 19, -116, 33, -8, 35, -22, 96, 120,
10, -69, 88, -122, -31, -92, 82, 2, -13, 31, 118, 76, 62, 4, -51, 112, 3, -101, 88, -106,
-63, 25, 46, -40, 44, 115, -17, 79, -22, -63, 108, 98, 125, -79, 4, 98, -9, 81, 64, -23,
86, -10, -80, 74, 6, 96, -9, 89, 12, 40, 97, 11, -53, 18, 72, -93, 109, -44, 9, -19,
124, 68, -38, 77, -25, 88, 88, -62, 58, 38, -91, 118, 69, 80, -89, -65, 86, -82, 44, 40,
80, 98, 122, -67, 14, 50, -105, -111, 1, -124, 80, 103, 13, -14, 75, 30, -40, 66, 122, -116,
29, 44, 99, 71, 74, 115, -68, 42, 50, 99, -98, 31, -46, -95, -45, -83, -24, -32, 53, 97,
115, -70, -106, 33, 43, 109, 86, -22, -90, -80, 9, 19, 38, 60, 31, -74, 41, 38, -109, -22,
75, 90, -43, -47, -56, 10, 86, 80, 52, -39, -127, 69, 80, -109, -71, 110, -34, 11, 33, -119,
-22, 11, 55, 90, 82, -5, 13, 67, 97, 74, -56, 11, 115, 35, -45, -49, -47, -103, 48, 13,
-32, -17, -103, 95, 125, 52, -27, -59, -112, 13, 41, -57, 11, -83, 113, 50, 37, 113, -59, -117,
-29, -25, 69, -92, 41, 0, -23, 100, -85, -117, 9, 98, 3, -85, 112, 12, 89, 42, 109, -28,
-16, 101, -89, 13, 119, -52, 93, 54, 25, -44, 27, 71, 74, 11, -88, 102, 71, -96, -49, -106,
12, -7, -4, -28, -107, -22, 118, 45, -23, -106, 90, 67, -55, 55, 47, -115, -39, 73, -70, 96,
4, 35, -117, -104, -57, 50, -49, -105, -109, -68, -116, -72, 14, 14, 6, 10, 39, 117, -40, 76,
17, 43, -73, -1, 35, -65, -36, -21, -84, 101, -95, 29, 73, 87, 4, -27, -13, -51, -116, 99,
21, 74, 42, 72, 37, 43, -27, -52, 16, -121, -19, 107, 55, -42, 76, -52, 38, -97, -72, -96,
106, -19, 83, 14, -117, -28, -54, -96, -25, 115, -56, 113, -107, -5, 23, 50, -114, -43, -99, 84,
-97, 21, -52, -24, Byte.MAX_VALUE, 28, -17, -91, -84, 126, -14, 7, -46, -123, -96, -84, -1, 46, -68, 37,
9, 10, -97, -116, -42, -109, -54, -121, -14, -18, 76, 99, -19, -102, 77, -22, -58, 20, 62, -10,
-29, 85, 44, 101, 7, 54, 6, -50, -103, -109, -108, -41, 62, 91, 54, 120, -110, -83, -73, 41,
-68, 46, -33, 118, 93, -105, -54, -50, -33, -2, -109, -23, -47, 24, 82, 73, 86, 55, 123, 23,
-77, 88, -11, -98, -28, -122, 35, -49, 62, 110, -85, 113, -4, -14, -66, -83, -31, 100, -4, 1,
-5, -68, 89, 57, -100, 100, 53, -30, -7, 51, -10, 125, -30, 39, -106, 121, -74, -100, -75, -33,
-58, 60, -5, 57, 58, -90, 39, 73, 77, -30, 3, 26, -49, 122, 70, -79, -10, 110, 34, -11,
-80, 10, 94, 104, -53, 44, 53, -29, -37, -73, 51, -115, -8, -51, -2, 91, 51, -109, 84, 38,
-116, -75, -17, -17, 75, -22, 109, Byte.MAX_VALUE, -38, -47, 39, -20, 123, -97, 102, -110, 43, 95, 55, -19,
101, 18, -53, 56, -99, 84, 125, 20, 38, 68, -75, -3, -89, -29, 111, 111, -107, -21, -9, -89,
-19, -68, 103, -42, -109, 57, -83, -34, 126, 76, -57, -65, 111, 63, -81, -35, 43, -14, -17, 87,
-55, -91, 88, -43, 116, 35, -125, 88, -121, -105, -112, 43, -121, -41, 30, 108, 27, 107, -45, -5,
-114, 54, -52, -13, -74, -13, 94, -8, -120, -52, 105, 53, 110, 118, 99, 120, -18, 56, -19, 43,
118, 47, -108, 53, 71, -55, 21, -122, 75, 14, 51, -120, -27, -111, 75, 14, 107, 123, 98, 91,
51, -12, 29, 41, -53, -45, -82, -24, 87, -81, -91, -118, 117, -2, 14, -84, -95, -115, -44, -79,
114, 61, -104, -61, -38, 61, -101, -28, 59, 94, -11, 98, 91, -70, -82, 115, -65, 119, 118, 105,
-38, -112, 73, 57, 27, -114, -66, 29, -53, 46, 113, 24, 73, 102, 67, -21, 11, 113, 55, 83,
88, -26, -66, -92, -121, 67, 74, -20, 42, 122, -15, -29, -37, -68, -36, -121, 46, -77, -81, 82,
84, -11, 81, 81, 46, -32, 27, -34, 111, -9, 20, 60, -73, -103, 41, 23, -16, -51, -61, 39,
-5, -102, 25, -62, 58, 25, 70, -70, -86, 45, -17, -11, -121, -35, 125, 93, -6, -19, -64, 50,
107, -20, 57, 113, -79, 93, -91, -66, -50, 59, -109, -28, 67, 24, 107, -73, 22, -120, -27, -4,
-74, 126, 109, 53, -110, -3, -41, -37, 85, 29, -114, -110, -2, 50, 8, 59, -55, 12, -106, 57,
-108, -20, 87, 97, -13, 124, -122, 14, 103, 113, -57, 14, 122, -89, -110, 125, 8, -73, 87, 74,
107, -50, -17, -39, -77, -25, 112, 89, -5, 111, 5, 35, -55, 74, 105, -53, -45, 13, 53, 51,
-126, -11, -121, Byte.MAX_VALUE, 57, -123, -26, 109, -59, -56, 93, 14, -65, 13, -21, 15, -7, -112, -97, -94,
104, -3, -36, -39, -117, 55, 108, -81, -24, 25, 114, -97, 59, -83, 95, -120, Byte.MAX_VALUE, 48, -126, 21,
-1, 45, -107, -74, 39, 80, -4, -43, -48, -88, 123, -50, 125, 111, -36, -31, 27, 89, 64, -31,
-76, 80, 21, -2, -76, -61, 110, -9, -21, 65, 19, 40, -75, 125, -125, 111, -29, 25, -63, -22,
88, 64, -79, 49, -91, 98, -91, -37, -5, -91, 119, -5, -100, -66, 20, -38, 105, 1, -43, -90,
77, -112, -19, -96, -119, -26, 82, -88, 91, 2, -59, 86, -59, -126, -114, 76, 96, -19, 11, -48,
83, -68, 47, 76, 87, 17, -19, 55, 106, -11, 62, -11, 21, -61, 95, Byte.MAX_VALUE, -101, 77, 38, 115,
67, -11, 95, 87, -44, -121, 62, 31, 59, 38, -70, -104, -14, 57, 49, -96, 63, 58, 117, -56,
-58, -45, 87, 107, -37, 21, 50, -106, 122, 67, -47, -114, -105, -122, -17, 4, 84, -37, 20, -11,
1, -5, -24, 99, 89, -70, -46, -103, 70, 1, -127, 42, 43, 53, -30, -29, -71, -81, -49, 120,
-10, -71, -25, -98, -99, -12, -6, -36, -113, -105, 38, 103, 21, 96, -12, 58, 45, 0, -8, 61,
99, 93, 75, -77, -14, 73, -75, 90, 93, 120, -90, -71, 89, -7, -107, 121, 75, -45, 114, 1,
-11, 19, -125, -36, -57, -24, 99, 21, 77, -29, 107, -65, -86, 38, 107, -5, -26, 91, 29, 22,
51, 105, 116, 88, -40, 61, -41, 105, 69, 116, -79, -102, -94, 82, 121, -37, 97, -33, -38, 21,
-90, -125, -116, -84, -42, -100, -98, 72, 23, -21, -26, 44, 13, 38, -112, -48, -52, 50, -47, -60,
-94, 84, -55, 114, -51, -64, -81, 106, -31, 97, 37, -59, 1, -95, 96, -127, -72, 36, -102, 88,
-35, -27, -104, 96, 2, -73, -25, 2, 7, -85, -84, -113, 78, 56, 88, -70, 62, 101, -76, -80,
86, -59, 66, -31, 96, -63, -40, 85, 116, -80, -52, 93, 53, 64, 56, 88, 64, -45, -43, 76,
3, -85, 116, -102, Byte.MIN_VALUE, 18, 86, 115, -67, -76, -108, 6, -42, -34, 24, 32, 36, 44, 16, -77,
-105, 58, -106, 101, -107, 28, 19, 84, -56, 87, 89, 40, 99, -43, -65, -87, 17, 22, -106, -26,
-51, 122, -54, 88, Byte.MAX_VALUE, 77, 45, 23, 22, 86, -71, -60, 64, 25, -21, -105, 117, -104, -64, 98,
-35, 17, -54, 88, -85, -45, -127, -80, -84, 64, -6, 106, -54, 88, 94, 5, 66, 75, 89, -118,
-18, 84, -79, 106, 30, -124, 66, -61, -126, 110, 53, 20, -79, -114, 5, -24, -124, -122, -91, 11,
56, 70, 17, 43, 36, 89, 120, 41, 43, 57, -124, 34, 86, 95, 57, 16, 26, 22, -112, -9,
-91, -122, 101, -20, 34, -72, 92, 104, -51, -121, 93, -22, 40, 97, -107, 76, -125, -62, -61, 114,
-8, 45, -19, 0, -21, -52, 39, 66, -60, 114, 52, -100, -58, 1, 86, 74, 50, 16, 30, 22,
72, 78, -95, -126, -43, -76, 33, 27, 19, 96, 100, 111, 104, -94, Byte.MIN_VALUE, 101, 94, -84, 18, 34,
-106, 106, -79, -103, 2, -42, -51, -123, -62, -60, 90, 120, -109, 2, 86, -19, -53, -59, 66, -60,
-46, -50, -85, -91, -126, 53, 83, 43, 72, -84, -103, 84, -80, -86, 37, 21, 66, -60, -86, -112,
-4, 69, 1, -85, 100, 41, 38, -56, -120, 40, -92, Byte.MIN_VALUE, -107, 31, 1, -124, 104, 5, 34, -50,
80, -64, -38, 31, 39, 76, -84, -28, 3, 20, -80, -110, -110, 5, -118, -107, 68, 1, 43, 94,
-96, 88, 105, 95, 83, -64, 90, 40, 19, 102, 1, 47, 91, 72, 1, -21, 61, -95, 98, -67,
39, 98, -79, -101, -78, -124, -102, 13, 11, -122, 81, -64, -14, 81, 9, 19, 75, -29, 69, 1,
-53, 75, 35, 98, -119, 88, 34, -106, -120, 37, 98, -119, 88, 34, -106, -120, 69, 24, 107, -100,
64, -21, 89, -54, 41, 98, 13, 94, -4, 54, 20, -79, -100, 28, -39, 84, -80, 62, 79, 19,
102, -29, 95, -22, -9, 98, -77, 50, 97, 44, 74, -51, -54, 123, 18, -124, -119, -107, 64, -91,
-61, 66, -80, 93, 97, -7, 20, -80, -44, -97, 10, -77, Byte.MIN_VALUE, 95, -86, -90, -46, 125, 31, 32,
-48, -18, -5, 106, 74, 3, 67, -54, -123, -120, 69, 109, 96, 72, -19, 92, 65, 14, 57, 42,
-98, 91, 79, 1, -53, -72, -24, -100, 16, -79, -50, 45, 50, 82, -64, 50, 125, 40, -56, 47,
-23, -33, 67, -87, 12, -109, -76, -84, -111, 11, 17, 43, -121, -46, 0, 92, -108, 40, -60, -17,
29, -80, 51, -111, -46, 56, -8, -45, 43, -123, 56, 105, -32, -109, -45, -108, -80, 74, 5, 57,
29, 101, 98, 9, 37, -84, -38, 46, 122, -31, 97, -23, -69, -44, 82, -100, 66, -89, 20, -34,
20, -70, 28, -118, 83, -24, -60, -55, -103, 100, -80, 126, 10, 19, 28, -106, 46, -32, 39, -118,
88, Byte.MAX_VALUE, 62, 36, -68, 57, -46, 15, -3, 73, 121, -87, 2, -91, -48, -80, -108, 94, -108, -41,
117, -8, 80, 92, 4, -125, 56, -42, -31, 117, 66, -61, 90, 119, -118, 50, -106, 65, 104, -19,
Byte.MAX_VALUE, 116, 22, -18, 105, 16, -36, -110, 80, -81, 81, 95, 18, -86, 49, 68, 96, 37, -68, 114,
5, -11, -59, -58, -48, -34, -19, -30, 50, 118, -124, -79, -118, -58, 10, -86, 90, -86, -101, 72,
103, -127, 68, 75, 87, 33, -107, -16, 64, -45, -75, -111, -50, -94, -82, 31, -60, 9, 105, 81,
-41, -72, 21, -76, 86, -64, 45, -22, 65, 16, 11, -16, 29, -107, -64, 5, -62, 30, 103, -71,
89, -120, 58, -5, 91, 126, -65, 10, 96, 26, -2, -62, -57, 116, 23, -94, 70, -15, -47, -60,
16, 52, 62, 71, 121, -99, -74, -96, 79, 58, -34, -11, -127, -24, 120, -102, 88, Byte.MAX_VALUE, 16, 92,
125, 19, -28, -72, -15, -71, 2, 11, 100, 62, -72, -49, -78, 124, 42, -35, -59, -13, -115, -77,
8, -10, 30, -62, -51, 97, 124, -58, 10, -33, -119, -101, 67, 84, -77, -116, 52, -79, -102, -66,
36, -70, 49, 115, -123, 87, 66, 90, 107, 100, -56, -27, 57, -83, 113, -73, 35, -5, -61, 123,
-3, -100, 35, 87, 22, 51, 16, -38, 91, 123, -126, -108, 63, -113, -101, -18, 65, -58, -105, 77,
52, -79, 80, -31, -53, 4, 91, 0, -117, -69, 126, -35, 22, -97, 79, -17, 57, 121, 122, 75,
76, -10, -102, -34, 26, 3, 38, -73, 29, 122, -39, 14, -57, 13, 108, 59, -100, -34, -45, 118,
104, -3, -35, -25, -95, Byte.MAX_VALUE, -94, 91, -73, Byte.MAX_VALUE, 14, 124, 30, 110, -3, -87, -19, -49, -20, Byte.MAX_VALUE,
124, -56, -89, -101, -19, -25, -121, -5, -73, -4, -83, 71, 31, 107, -12, 88, Byte.MIN_VALUE, 91, 97, -44,
-67, -116, -69, -97, 52, -2, -114, 78, -113, 41, 8, 22, -15, 65, -10, 15, 102, 116, -21, 30,
122, 55, 108, -37, 93, -66, 111, 91, 33, -50, -83, -95, -19, 48, 47, -40, 86, 7, 30, 106,
119, -122, -77, -74, -33, -9, -25, -3, 115, 48, -89, 109, 97, -52, -15, -74, Byte.MAX_VALUE, -47, -10, 35,
90, 108, -73, 59, -18, -11, -47, 45, Byte.MAX_VALUE, -81, -70, 108, -115, 29, -47, -72, 9, 75, -63, -64,
38, 69, 104, -73, -124, -40, 107, -82, -8, 67, -5, -27, -127, 70, -73, -18, -83, -9, 103, 27,
86, 99, -16, 13, 27, -106, -19, -16, 55, 27, -118, -55, 30, 43, 111, -114, 109, -60, 102, -85,
-63, -100, -42, -83, 36, -51, -29, 109, 117, -19, 64, -37, -34, -122, -17, -37, -19, 34, 118, 121,
-124, -35, -55, 14, 36, -29, -106, -71, -110, -35, 12, 96, -95, -50, -60, -118, 120, -19, -84, 122,
-2, 98, 125, -99, -122, 91, -68, 119, 70, 76, 96, 109, 33, 54, 18, -73, 124, 94, 53, Byte.MAX_VALUE,
-79, -90, -32, -83, 50, 7, 98, -74, 48, -126, 117, 85, 66, -88, -86, 85, -79, -64, -64, 95,
-84, -57, -107, -72, -107, -84, 106, 70, -80, -52, 111, 41, 8, -27, -61, 117, 103, 40, 97, -27,
5, -78, -113, 85, -41, 13, 47, 115, -28, -52, 103, 102, -101, 81, 116, -100, 88, 103, 107, -14,
46, 74, 88, -37, -10, -77, -125, 117, 105, -76, -19, -8, 87, Byte.MAX_VALUE, -100, -6, 15, 12, 59, -114,
-104, -63, 50, 121, -85, -120, -108, 90, -39, 83, 40, 97, -59, -37, -80, -22, -58, -37, 99, 5,
-45, -61, -38, 111, 87, 8, 125, -80, -45, -15, -29, 6, 5, -34, 38, -122, -80, -48, 46, 66,
-101, 103, -106, 119, -85, -93, -119, 85, 53, -57, 126, -122, 71, 18, 61, -84, 3, 27, 109, -11,
-73, 46, 56, -37, 7, -23, 37, -69, 16, 83, 88, -88, 35, -111, -19, -36, -95, 116, 31, 77,
-84, 63, -19, -79, -110, -10, 48, -122, -107, 63, 22, 39, 23, -54, 25, -36, -50, 29, -19, -113,
32, -14, -79, 42, -9, 118, -120, 101, 9, -82, 113, 18, 22, -18, -122, -106, 75, -10, 49, -120,
85, -9, 36, -111, -10, 23, -8, 120, -87, 67, -84, Byte.MAX_VALUE, 95, 119, 14, 86, -3, 20, -100, -85,
-41, 76, -87, 103, 16, 11, -19, -35, 68, -32, -123, 8, 119, 110, -32, 37, 86, -87, -44, -15,
87, 52, -36, -76, 23, 49, -119, 85, -5, 104, 49, -111, 23, -30, -28, 90, 62, 98, -67, -109,
-31, -72, -8, 40, 126, -76, -106, 81, 44, -126, 47, -60, -11, -57, 120, -120, 117, -74, -113, -29,
-117, -42, 7, -20, 66, -52, 98, 33, 15, 34, 107, 120, 43, 60, 76, -4, -61, 122, 52, -51,
113, 17, -110, -19, -127, -104, -58, -54, 15, 32, 82, -60, 71, -82, -30, 29, -42, 113, -1, 107,
-114, 47, 58, 32, -97, 113, 44, -53, 124, 66, -99, 98, -3, -117, 72, 99, -19, 97, 21, -85,
-2, 25, -100, -99, -106, 100, -13, 45, -116, 99, -95, -4, 81, 4, 94, -120, 32, -5, 85, 19,
73, -84, 87, 46, -78, -118, -75, 27, 103, -65, 51, 56, 74, -115, -104, -57, 66, -81, 38, 16,
-7, -98, 94, -14, 19, -81, -80, 42, 123, 56, -82, 99, -23, -94, -125, 16, 27, 88, 117, 15,
18, 25, -83, -91, -22, Byte.MAX_VALUE, -98, 99, -84, 25, 85, 119, -59, 74, 106, -2, -74, -84, 121, 4,
103, -17, 32, -27, -125, 13, -84, 96, -95, 95, -106, 16, -22, -50, -20, -44, -64, 45, 86, 111,
-45, 93, -79, -102, -113, 45, 33, 63, 56, -50, 13, 21, 1, 39, 17, 59, 88, -1, -99, -111,
69, -96, 102, -86, 75, -104, -12, 95, -74, -80, 94, 105, -3, -70, 108, -104, 97, 33, -126, -11,
35, -50, 43, 28, 100, 5, 91, 88, -62, 66, -91, 3, 9, -75, 2, 70, 110, -91, -120, 85,
19, -120, -125, 53, -72, -43, -91, 38, -104, 8, -42, -15, 65, 120, -101, 37, 12, 44, 69, 108,
97, -95, 47, 8, -75, -103, -106, -113, -39, 74, 13, -21, -4, 70, -5, 126, -110, -61, -74, -38,
69, -21, 80, -96, 126, -83, 46, 55, -120, 96, -3, -22, -127, -45, -116, 5, 3, -66, 64, -20,
97, 89, -6, 101, 18, -56, -120, 0, 27, 114, 122, 4, 109, -84, 64, -37, -17, 27, -49, 83,
-64, 90, -68, -11, -103, 2, -100, -117, -51, -24, 103, 97, 17, 11, 93, 25, 66, 100, 23, 16,
-96, -102, -26, 118, -99, 46, -42, -100, -13, -12, -80, -106, -69, 103, -31, -11, 116, -114, -68, -114,
-40, -60, 66, 41, 43, 9, 117, 34, -86, 124, -74, 56, 25, 43, -65, 63, -34, -122, -125, 32,
108, 55, 98, 23, -53, -12, 68, 26, -111, 98, 11, 104, -4, -65, -5, -97, 51, -79, -14, 71,
41, 32, -34, 88, -64, 39, 44, 44, 99, -95, 106, -81, 92, 34, 105, 11, 104, -61, -26, 19,
-60, -70, -52, 2, -42, 55, -93, -16, -122, -77, Byte.MIN_VALUE, 92, -81, 106, -60, 54, 22, -54, -9, 35,
-74, 121, 17, 8, -21, -35, 64, 0, -53, 52, 24, 49, -114, -43, -72, -54, 15, -9, -127, 106,
-57, -28, 35, -10, -79, -48, -122, -11, -60, -122, -43, 92, -37, 62, 44, -33, 41, 88, 87, -25,
44, -63, -67, 66, -72, 62, 10, 113, -127, 117, 115, 82, 28, -79, -15, 109, 64, -2, -14, 23,
-88, -90, 13, -85, 105, -29, 69, 78, -80, 14, 13, 72, -57, -1, -52, -120, -101, 116, -109, 19,
44, 84, -25, 65, 120, -25, 67, -23, -45, -25, 109, 88, -37, -54, -72, -64, 10, -11, -61, -17,
-119, 2, 89, 30, 117, -120, 27, 44, 84, 52, -106, -24, -56, 100, -104, -22, -45, -63, -52, 33,
-42, -119, 51, 79, 70, 18, -87, -39, -116, -67, Byte.MIN_VALUE, -72, -62, 66, 63, 74, -120, 14, 122, 7,
-86, -16, -89, 11, 57, -61, 90, -26, -67, 32, -121, 72, -97, -99, -1, 62, -60, 29, 22, 90,
-18, 79, 124, 98, -66, -36, -85, 101, 48, 41, -21, 88, -26, -92, 14, -87, -124, 38, Byte.MAX_VALUE, -7,
47, 71, 92, 98, -95, -64, -11, 36, 102, -51, 68, 12, 57, 84, -51, 58, -106, -15, -28, 51,
82, 45, -95, 4, -65, 46, 16, 113, -117, 101, -100, -111, 74, 124, -6, 9, 84, -59, -116, -120,
50, 33, 86, -79, 14, -7, 46, 33, 54, -84, 26, -90, -50, -7, -101, 99, 44, 84, -29, -99,
78, 106, -78, -50, 74, -9, -3, 91, 88, -61, -78, -28, 121, 78, 32, 58, 19, 36, -35, -69,
6, 113, -115, -123, -54, 122, -55, -56, 76, 4, -45, 21, 72, 31, -2, -26, -86, -59, 33, 86,
-103, -3, 32, -40, -64, 75, 68, -79, -82, 28, -97, -20, 47, -69, 70, -20, 98, Byte.MIN_VALUE, -84, -41,
37, -60, 61, 22, -86, 28, -106, 67, 70, 11, 64, 85, -62, -76, 23, 79, -35, -114, 101, -76,
27, 26, -7, -101, -83, 113, 20, -103, 71, -101, -119, 97, 93, 112, 27, 23, -109, -117, 17, -68,
18, -112, 51, -84, 18, 57, 3, 11, -107, 122, -110, 94, 51, 42, 103, -116, 91, -110, -79, 29,
-106, -3, 104, -65, 60, 59, 44, -109, -35, -8, 89, 7, 88, 7, 30, -11, 73, 39, -15, -64,
-108, -98, -91, -56, 57, 88, -88, -48, 35, -101, -92, 22, -48, 23, 68, 14, -6, -20, -25, 106,
55, 35, 93, -84, 38, 100, 49, -100, 94, 61, 72, 42, -45, 19, 47, 58, 65, 118, -81, 66,
-28, 44, 44, 116, -106, 92, 78, 108, -55, -115, -38, -100, -72, 119, -35, 54, -88, 105, 97, 53,
4, 87, 38, 62, -5, -38, -6, -84, 115, -112, -60, -1, -97, 94, 30, -92, -115, 69, 37, 39,
-74, -116, -75, -117, -23, -17, -74, 56, -113, 50, -42, -59, 45, -99, 58, -81, -51, 37, -5, -104,
-24, -27, 65, -6, 88, -24, 108, -9, 108, 74, 90, 80, -81, 73, -112, -12, 89, -76, -29, -12,
-87, 25, 102, -30, 88, -125, 27, 106, -81, -100, 73, -4, 108, -112, 95, -116, 66, 15, -55, -106,
0, -78, -18, 103, -111, 115, -79, 80, -27, Byte.MIN_VALUE, 52, -118, -109, -93, 33, -44, -54, 51, 98, 36,
29, -98, 11, -7, 46, -33, 96, 113, -120, 117, -21, 109, 111, 40, 74, -23, -16, -20, -108, 119,
-41, -89, -27, 104, 32, 36, -3, -124, 96, -38, Byte.MIN_VALUE, 74, -28, 108, 44, 84, -43, 37, -99, -50,
84, -14, -118, 2, 44, 99, -77, -65, 71, -89, 78, -63, -15, -5, -109, -74, -36, 21, -21, 122,
-16, -58, 125, -127, -113, 116, 114, 27, -77, 50, -115, -14, 60, 108, -104, -34, -91, 10, 57, 31,
11, -43, -8, -82, -93, 53, 125, -39, 90, -26, -21, -12, -27, 5, 105, 95, 69, 78, -11, -17,
-47, 103, -30, 107, -81, -65, -7, -71, 53, 86, 119, -73, -2, -27, -11, -41, 94, 123, 125, 80,
15, 63, 73, 120, -92, 53, 57, 93, -45, 67, -22, 79, 101, -99, 111, 13, -30, 3, 22, 50,
45, -101, 13, 105, -81, -22, 0, 0, -76, -122, 86, -5, -69, 82, -87, -108, 53, 71, -74, 76,
-106, 101, 61, 86, 106, -75, -51, Byte.MAX_VALUE, 0, -24, -4, 15, 0, -100, -67, -52, -124, -8, -127, -123,
-48, -14, -31, 90, -116, -57, -95, 29, -66, -100, -111, -37, 100, 6, 11, -3, 56, 74, -58, -37,
53, 48, 96, -10, -40, 31, 17, -97, -80, -112, 122, 64, 44, 79, -41, -23, -44, -59, 14, 80,
35, 126, 97, 33, -29, -120, 112, 126, 98, -123, -113, 48, 34, -66, 97, 33, -53, -102, -103, 10,
-34, 101, 69, -88, -104, -71, -58, -126, -8, -121, -123, -48, -55, -127, 124, 91, 109, 11, -58, 13,
60, -55, -32, 13, 50, -119, -123, 76, -109, 102, -13, 74, 11, -50, -98, 100, 66, 124, -59, 66,
40, -22, -15, 44, -34, -84, -93, 5, -78, 30, -113, 98, -10, -18, 24, -58, 66, 37, 83, 8,
118, -79, -80, -98, -86, -76, -46, 119, 74, 17, -65, -79, 80, 83, -68, -37, 81, 62, 36, 43,
-103, 91, 60, -45, -73, -58, 60, 22, 66, -105, 94, 88, -87, 116, 114, -30, -126, -86, -107, 47,
92, 66, -82, Byte.MIN_VALUE, -123, 76, 7, 31, -33, 4, -100, 88, 116, 1, -80, -87, -1, 65, 19, 114,
13, 44, 43, -41, 114, 15, -71, -45, 18, 23, -108, 123, 44, 55, -79, 114, 91, -20, 96, 33,
84, -26, -69, 64, -18, -116, -44, 5, Byte.MIN_VALUE, 124, -127, 111, 25, 75, 55, -59, 22, 22, -78, -100,
28, 39, -27, -66, -24, -126, 74, -23, -72, -29, -1, 67, -82, -122, 101, -115, -61, -18, -31, 21,
-100, 38, 46, 80, 17, -18, 126, -104, -59, 27, 98, 19, 11, 53, 110, 29, -70, 73, -55, 85,
102, 4, 64, -71, 105, -24, -42, 70, -28, -86, 88, 8, 85, 31, -6, 87, 64, -74, -114, 3,
46, -96, -109, 73, -1, 117, -88, -102, -35, -69, 97, 25, -53, 26, 71, -6, -7, -27, -80, 94,
118, -63, 28, -65, 126, -121, 89, -65, 21, -10, -79, 16, 58, -11, -60, -76, 12, 37, 6, -40,
-53, Byte.MAX_VALUE, -86, -116, -87, -66, -57, 56, -72, 17, 46, -80, -112, -91, -28, -69, -105, 2, 50, 33,
43, -23, 11, -62, -93, -46, 81, 81, 106, 11, -70, 95, -80, -84, 95, -116, -115, 103, 7, 123,
-59, -108, 51, -98, -70, 0, -74, -35, 107, -80, -38, -36, -60, -51, 93, 112, -124, -43, 28, -91,
107, -6, -66, -101, -82, -60, 32, 67, 98, 0, 98, -54, -12, -113, -98, 90, 83, -54, -35, 29,
112, -120, -123, 80, 67, 105, -54, 34, -65, -81, 114, -12, 12, -12, 50, 66, 125, 78, -76, -33,
-28, -17, -44, -11, 92, 94, 63, -89, 88, -51, -59, 87, 117, -110, -89, 91, 100, 54, -35, 78,
-45, -36, 72, 47, -49, 120, -125, -91, -119, -37, -117, -25, 26, -85, 57, 46, -17, 120, 110, -16,
71, -79, 57, 74, 45, 105, 50, 0, -96, -74, 32, 39, -7, -93, 103, -98, -5, -26, -118, 19,
46, -36, 25, 88, -51, -107, -43, -110, -125, -85, -34, 30, 35, -115, 78, 63, -89, -45, 19, 26,
18, 3, 32, -44, 93, 59, -105, 25, 45, 29, -13, -26, -58, -125, -22, 106, -25, 92, -75, -109,
-80, -102, 51, 100, 99, 99, -31, -74, 25, 110, 110, 126, -21, -45, 10, -102, -57, 50, -36, 43,
-107, 53, -1, 9, -124, -102, -116, 88, -65, -50, 110, -93, -73, 20, 54, 52, 90, -100, 118, -55,
-50, -61, -6, 39, -82, -28, 71, -123, 60, -15, -40, 75, -13, 62, 89, 31, -105, -106, 45, 83,
88, -93, 64, -45, 18, -25, -84, -57, -14, -20, -20, 111, -93, 63, -7, 120, -30, 99, 79, 4,
69, -99, -70, -20, -20, 107, 117, 58, -42, -83, 48, 26, 46, -88, 79, -1, 124, 48, -22, -69,
-1, 124, -10, -39, 103, 111, 15, 31, -39, 28, -61, 39, 90, -1, 97, 75, 84, -30, -49, 63,
-85, 47, 92, 53, 54, -15, -31, 50, -7, -127, -27, 34, 33, 98, -119, 88, 34, -106, -120, 37,
98, -119, 88, 98, -120, 88, 34, -106, -120, 37, 98, -119, 88, 34, -106, 24, 34, -106, -120, 37,
98, -119, 88, 34, -106, -120, 37, -122, -120, 37, 98, -119, 88, 34, -106, -120, 37, 98, -119, -15,
Byte.MAX_VALUE, 81, -18, 72, -58, -14, 91, -36, 92, 0, 0, 0, 0, 73, 69, 78, 68, -82, 66, 96,
-126 };
}
/* Location: /home/roman/data/HACKvent/2018/Day 18/evil.jar!/hackvent2018/evil/NotEvil.class
* Java compiler version: 8 (52.0)
* JD-Core Version: 0.7.1
*/

@ -0,0 +1,333 @@
package hackvent2018.evil;
public class Question
{
public static byte[] b = {
-119, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72, 68, 82, 0, 0, 1, 44,
0, 0, 1, 44, 8, 3, 0, 0, 0, 78, -93, 126, 71, 0, 0, 3, 0, 80, 76, 84,
69, 0, 1, 0, 4, 1, 7, 3, 5, 1, 6, 7, 18, 6, 9, 5, 11, 7, 13, 5,
9, 24, 11, 10, 0, 16, 15, 4, 14, 14, 23, 15, 15, 19, 19, 16, 0, 15, 16, 30,
16, 18, 14, 22, 18, 1, 18, 21, 3, 21, 21, 0, 22, 21, 24, 23, 24, 0, 22, 23,
21, 26, 25, 11, 28, 26, 0, 26, 25, 18, 26, 27, 6, 27, 26, 30, 30, 29, 2, 25,
27, 44, 27, 27, 39, 31, 31, 5, 31, 31, 13, 34, 32, 0, 31, 31, 24, 31, 32, 30,
39, 36, 0, 37, 37, 15, 35, 36, 34, 36, 36, 44, 38, 37, 31, 35, 36, 54, 37, 36,
49, 40, 39, 11, 39, 37, 40, 39, 40, 23, 44, 41, 0, 44, 42, 8, 44, 42, 31, 41,
42, 40, 49, 45, 5, 42, 43, 51, 45, 45, 23, 40, 44, 56, 48, 46, 14, 45, 46, 29,
46, 45, 38, 45, 45, 48, 52, 48, 1, 49, 48, 21, 55, 51, 0, 49, 51, 49, 48, 50,
62, 55, 53, 20, 59, 54, 2, 50, 51, 59, 49, 51, 71, 56, 56, 3, 53, 53, 46, 58,
57, 0, 56, 56, 32, 64, 57, 0, 57, 55, 43, 56, 57, 39, 52, 56, 68, 62, 58, 20,
58, 56, 59, 62, 61, 1, 57, 58, 56, 57, 58, 66, 65, 63, 3, 66, 64, 0, 65, 64,
12, 59, 61, 77, 62, 63, 61, 66, 66, 21, 67, 65, 33, 70, 68, 0, 65, 63, 67, 66,
65, 57, 73, 70, 2, 65, 66, 74, 69, 69, 46, 73, 72, 12, 74, 71, 23, 76, 73,
0, 72, 70, 57, 67, 69, 84, 70, 71, 69, 72, 70, 74, 76, 74, 42, 71, 72, 80, 73, 73,
65, 82, 78, 2, 74, 75, 57, 77, 77, 53, 85, 81, 0, 83, 80, 16, 77, 79, 76, 75,
78, 92, 89, 84, 0, 78, 79, 87, 82, 80, 69, 89, 85, 10, 80, 81, 84, 92, 87, 2,
95, 89, 0, 81, 84, 98, 85, 87, 84, 85, 86, 94, 87, 86, 90, 99, 93, 0, 89, 89,
78, 103, 96, 3, 106, 98, 0, 90, 94, 108, 96, 95, 87, 96, 94, 97, 94, 95, 93, 94,
94, 103, 91, 96, 98, 110, 102, 0, 108, 105, 0, 114, 106, 3, 101, 102, 100, 101, 101, 110,
103, 101, 105, 113, 110, 0, 118, 109, 0, 100, 105, 107, 118, 114, 0, 110, 108, 112, 111, 110,
102, 109, 109, 118, 109, 111, 108, 123, 118, 0, 109, 113, 116, Byte.MAX_VALUE, 122, 0, 116, 115, 107, 112,
117, 119, 115, 116, 125, 119, 116, 120, 113, 117, -125, -125, 125, 2, 117, 119, 116, -121, -127,
0, 122, 124, 121, 122, 123, -124, 125, 125, Byte.MIN_VALUE, -115, -122, 0, 126, Byte.MIN_VALUE, 125, Byte.MIN_VALUE, -127, -118, -127, -125,
Byte.MIN_VALUE, -109, -117, 0, -126, -125, -122, -123, -121, -124, -105, -113, 0, -117, -119, -115, -99, -109, 0, -118,
-117, -107, -117, -115, -118, -96, -105, 0, -118, -113, -111, -111, -113, -109, -92, -103, 1, -86, -98,
0, -108, -106, -109, -91, -96, 0, -104, -107, -102, -110, -105, -102, -106, -105, -95, -81, -93, 0, -85, -90,
2, -100, -100, -90, -77, -90, 0, -97, -100, -95, -100, -98, -101, -102, -97, -95, -79, -86, 0, -75,
-82, 0, -94, -92, -95, -91, -93, -89, -72, -80, 3, -68, -76, 0, -90, -85, -83, -87, -85, -88,
-84, -86, -82, -63, -72, 0, -82, -80, -83, -60, -69, 4, -78, -80, -76, -83, -78, -76, -56, -66,
0, -76, -74, -78, -50, -61, 0, -69, -71, -67, -74, -69, -66, -71, -69, -72, -44, -56, 0, -62,
-64, -60, -38, -51, 0, -64, -62, -65, -36, -48, 6, -63, -58, -56, -33, -46, 0, -57, -59, -55,
-59, -57, -60, -29, -43, 0, -55, -53, -56, -31, -39, 0, -26, -40, 0, -51, -53, -49, -56, -51,
-48, -22, -38, 0, -20, -36, 0, -24, -33, 0, -46, -44, -47, -21, -30, 0, -49, -43, -41, -42,
-45, -40, -17, -27, 0, -15, -25, 0, -40, -37, -41, -12, -23, 0, -34, -37, -32, -40, -35, -33,
-9, -20, 0, -35, -33, -36, -6, -17, 0, -2, -14, 0, -1, -13, 0, -26, -28, -24, -1, -12,
0, -31, -26, -24, -27, -25, -28, -3, -9, 0, -1, -7, 0, -1, -6, 0, -3, -3, 0, -26,
-20, -18, -1, -1, 1, -20, -18, -22, -21, -16, -13, -14, -12, -16, -17, -11, -9, -10, -8, -11,
-6, -4, -8, -8, -3, -1, -2, -1, -4, 20, 118, 37, -88, 0, 0, 0, 1, 98, 75, 71,
68, 0, -120, 5, 29, 72, 0, 0, 0, 9, 112, 72, 89, 115, 0, 0, 29, -121,
0, 0, 29, -121, 1, -113, -27, -15, 101, 0, 0, 0, 7, 116, 73, 77, 69, 7, -30, 9, 19, 18,
23, 10, 34, 16, -112, -65, 0, 0, 22, 3, 73, 68, 65, 84, 120, -38, -19, -35, 123, 124,
19, 85, -66, 0, 112, 59, 2, 45, 86, -22, 82, 41, 47, -41, 96, 65, 20, -84, 80, 20,
-75, Byte.MIN_VALUE, -30, -78, 8, 42, -108, Byte.MIN_VALUE, 43, -107, -78, -46, 5, 100, 123, 23, 33, -70, -68, 67,
65, -47, -108, -105, -58, 11, -40, 43, 108, 8, 53, -108, 64, 5, 35, 45, -80, 82, -19, -75,
-75, -115, 54, 107, -115, 41, -90, 65, 47, -124, 0, 53, -124, 22, 74, -89, -103, -29, 7, 102,
62, -45, 79, 40, -119, -25, -90, 105, 43, -48, -92, 77, 58, -113, -52, 36, -103, -33, 95, -120,
-102, -52, 124, 115, -50, -103, -33, 57, 115, 30, 119, 64, 33, 2, -114, 59, 4, 2, 1, 75,
-64, 18, -80, 4, 44, 1, 75, -64, 18, 8, 4, 44, 1, 75, -64, 18, -80, 4, 44, 1,
75, 32, 16, -80, 4, 44, 1, 75, -64, 18, -80, 4, 44, -127, 64, -64, 18, -80, 4, 44,
1, 75, -64, 18, -80, -72, -65, 4, -105, -77, -7, 122, 83, -61, -119, -54, -35, 123, -42, -50,
-103, 51, 53, 58, -90, 45, -94, -89, -50, -103, 51, 103, -49, -18, -81, -65, -1, -71, -87, -23,
70, -77, 75, -64, -126, 87, 107, -85, 62, -49, 125, -21, -65, 102, 39, 38, 77, 17, -17, -112,
23, 22, 29, -41, -103, -37, -29, 108, 105, 81, -47, 113, -71, 124, -123, 120, 98, 98, -54, -20,
-75, -101, -14, 42, -86, 107, 29, -111, -117, 117, -79, 120, -13, -4, -44, -41, 50, -91, -86, -29,
90, 67, 93, 61, 65, 18, 45, -127, -125, -33, 3, -9, -4, 5, 73, -126, 58, -77, -66, 84,
-93, 92, -2, -6, -13, 51, 86, -18, -84, 104, -120, 60, -84, -53, -57, -34, -72, -5, -34, 76,
-91, -42, 92, 83, -121, -74, -46, 96, -99, 71, -21, Byte.MAX_VALUE, Byte.MIN_VALUE, -38, 44, -26, -62, -100, 89, -67,
-17, -37, -14, -115, 35, 98, -80, 92, -50, 11, -37, -121, 32, -45, 119, 24, 90, 74, 17, -42,
-67, 112, 23, 55, 84, 39, 19, -35, 49, -6, 64, -93, -53, 21, -10, 88, -41, 107, -65, 120,
107, 92, -94, 84, 11, 72, 2, -57, 40, 5, -64, 73, -46, 86, -104, -111, -16, -36, -121, 85,
87, 92, -31, -116, 117, 62, 111, -18, -53, -110, 124, -67, 91, 10, 96, 116, 2, 16, 100, -99,
78, -111, 49, 123, -27, -25, -75, 97, -118, -43, 124, -8, -31, 33, 89, 58, 11, -38, -3, -54,
-41, 73, -123, -84, 55, 21, 46, 31, -8, 116, 113, 24, 98, 93, 123, -73, -57, -108, 66, 28,
99, 60, -14, -109, -18, -38, -19, 8, 43, -84, 95, 43, -34, -116, -109, -103, 72, 22, -84, 48,
-126, -44, 101, -58, 109, 56, -47, 20, 46, 88, 23, -1, -11, -41, -76, -125, 117, -84, 80, -75,
4, 78, -102, -107, -45, -25, 28, 106, 8, 7, -84, 83, -117, -122, -53, -11, 40, 1, 48, -10,
2, 16, 117, 90, -23, -56, 119, 26, 66, 29, -21, -14, -62, 24, 37, 106, -57, -40, 15, -69,
57, 59, -22, -35, -26, 16, -58, 114, -43, -82, -118, -106, -93, 4, 22, -108, 112, 23, -81, 21,
49, -97, 94, 117, -123, 40, -42, -87, -51, 41, 114, 11, 9, -80, 96, 5, 32, -115, -117, -57,
-18, -84, 13, 69, 44, -57, -54, 103, 84, 102, 34, 120, 84, -98, -74, 30, 51, -26, 60, -111,
27, 122, 88, -5, 123, 102, -97, -59, -126, 75, -27, 41, 93, 118, 83, 102, -17, -81, 67, 10,
-53, 117, 122, -126, -56, 76, 96, -100, 4, 32, -11, 113, 11, 26, 66, 7, -21, -54, 7, -125,
-14, 73, Byte.MIN_VALUE, 113, 21, 56, -74, 35, 33, -9, 106, -120, 96, 29, 26, -75, -125, -85, 98, -43,
-2, 96, 52, 74, -97, -6, 38, 20, -80, 26, -97, -99, 104, -80, 3, -116, -37, 0, 104, -7,
-120, 69, 14, -66, 99, -71, -114, 68, -87, 48, -82, -87, 90, -71, -74, -10, 62, -61, 111, -84,
-85, 31, 36, -102, 8, -116, 23, 1, -120, -94, -8, -3, 14, 30, 99, 85, 60, -71, -18, 23,
28, -29, 75, -112, 102, -55, -76, 106, -34, 98, -83, 30, -85, -77, 3, -116, 63, 1, -48, -29,
-3, 118, -15, 19, -53, 49, 50, -61, -122, -15, 44, Byte.MIN_VALUE, 37, 101, -95, -109, -121, 88, -43, 67,
-28, 4, -64, 120, -89, 5, 36, 19, 26, 120, -121, 117, -8, -47, 66, 2, -29, 97, 0, -96,
122, -92, -116, 95, 88, -50, -91, -45, -115, 0, -61, -8, -87, -91, 75, -34, -58, 39, 44, -41,
-29, -39, 40, 79, -83, 90, -62, -102, -74, -112, 63, 88, 77, -61, 101, 60, -90, 114, 23, 46,
76, -100, 122, -125, 39, 88, 85, -93, 114, 120, -40, -76, -29, -32, -42, 4, 85, -106, 122, -114,
23, 88, -33, 63, 86, -60, 63, 43, 64, 26, 107, 110, -43, 2, -22, -31, -25, 121, Byte.MIN_VALUE, -11,
85, -116, -98, -121, 25, 3, -98, 19, -81, -67, -83, 47, 1, -118, 122, -2, -56, 57, -42, -79,
56, 35, -50, -65, 86, 74, 43, 66, 16, -21, -19, -65, 33, -95, -115, 57, -63, 49, 86, -15,
8, 11, -33, -46, 43, -36, -82, -49, 64, -36, -111, 73, 118, 120, 119, -83, 123, -92, -118, 83,
-84, -3, 73, 124, 75, -81, 0, 105, -110, -58, -74, 88, 33, -47, 29, 47, 13, -108, 15, 40,
-26, 16, -21, 99, 81, 13, -49, -84, 8, 116, 107, 2, -46, 22, -39, 29, -81, 13, 55, -11,
43, -29, 12, -85, 108, -48, 37, -98, 89, -31, -91, -56, -51, 16, -103, -67, -118, -99, -87, -33,
121, -114, -80, 78, -120, 76, -68, -78, -62, 81, -3, 20, -28, -42, -56, -9, -70, 60, 80, -46,
-17, 34, 39, 88, 21, 3, 116, 124, 122, 14, 2, 92, 47, -117, -66, -51, 10, -119, -13, 30,
93, 35, 10, -5, -1, -52, 1, 86, 85, Byte.MAX_VALUE, 61, -97, -98, -125, 36, 42, -117, 67, 58, -122,
-118, -12, 110, -44, 74, -121, 93, 12, 58, 86, -45, -125, 124, -54, 69, 1, -82, 70, 124, 68,
-76, -81, -127, 91, -11, -76, 96, 99, 57, 39, -28, -16, -120, -86, 94, 63, 17, -15, 25, 74,
95, -123, Byte.MAX_VALUE, -15, -126, -32, 98, -71, 22, 73, 113, -66, 20, 44, 64, -24, 37, 72, 39, -111,
108, -13, 53, -64, -107, -79, 62, -104, 88, -82, -11, 18, -66, -116, 95, 1, -46, -70, -4, 30,
-92, -45, 40, -14, -11, -65, 92, 18, 31, 10, 34, 86, -39, -28, 58, -66, 88, 97, -118, 56,
-92, -117, -104, -114, -6, -6, -65, 76, -94, -13, 65, -61, 106, 76, -32, 73, 39, 7, -96, -122,
-8, -82, -88, -112, -104, 88, -97, 88, 68, 81, -52, -115, 32, 97, 57, -18, 58, -56, -117, -92,
1, 7, -33, 73, -70, -92, 66, -90, 107, 59, -103, -52, 67, -18, 120, -48, 25, 20, 44, -41,
75, 57, 36, 47, 26, 43, -125, -76, -53, 26, -120, -120, 52, 117, -99, -2, -88, 68, -42, -74,
-96, 96, 29, -110, -96, 124, 40, 86, -8, 123, 93, 83, 33, -14, -70, -82, 102, -88, 88, -57,
87, 5, 1, -85, -63, -69, Byte.MAX_VALUE, -54, 69, -71, 42, -116, -23, -102, 42, -59, -36, 117, -77, 10,
116, 3, -102, 89, -57, 114, -114, -50, -25, -68, 71, -120, -93, -70, -116, -82, -87, 18, 85, 126,
-45, 64, 82, 62, -115, 117, -84, -43, -53, -71, -50, 70, -35, -115, -43, -14, -82, -87, -94, -27,
102, -1, -77, 52, 1, -106, -98, -53, 50, 86, 89, 50, -41, -39, 40, -127, 73, -69, 78, 23,
-112, -103, -58, Byte.MIN_VALUE, -26, -14, 0, -53, -120, 115, -84, 98, 93, 29, 101, -32, 58, -61, -46, -8,
105, -84, 98, -113, 6, -4, 81, 5, Byte.MAX_VALUE, 102, 21, -21, 67, 25, -73, -115, 85, -67, 33, -39,
15, -107, -92, 59, -53, 95, 38, 126, -58, 34, -42, -119, 120, 27, -121, 5, 11, 16, -33, -83,
-24, -102, 10, -55, -48, 118, 103, 74, 57, 110, -114, 62, -49, 26, -106, -13, -18, 114, 14, 83,
119, -46, -110, -27, 39, -77, -118, 47, -71, -44, -67, 39, 53, 89, -16, 39, 39, 91, 88, -101,
-41, 113, 103, 5, Byte.MIN_VALUE, 34, -38, 79, -79, -110, 95, -22, -10, -89, -38, 51, -118, 89, -62, 58,
63, -126, -77, -44, 29, -96, -70, 68, 63, 84, 73, 122, 42, -99, 48, -29, 35, 14, 118, -80,
86, -27, 115, -42, 99, -42, 73, -3, 80, 37, -86, 9, 74, -91, 30, 72, 119, -77, -126, -11,
67, 98, 61, 71, 73, -24, -1, 45, -114, -11, 99, -107, 67, 117, -79, 30, -80, 70, -97, 102,
3, 107, -32, -105, -100, -12, 115, Byte.MIN_VALUE, 93, -26, -89, 93, 71, -60, 102, -22, -103, 50, -111, -1,
48, 11, 88, 31, -92, 115, 50, 48, 99, 47, 23, -7, -95, 66, 10, 104, 117, -64, -56, -108,
98, -58, -79, 26, -122, 91, 56, 72, -79, 80, -19, 76, 63, 82, -79, -46, 58, 122, -113, 104,
-96, 75, 109, 102, 26, 43, 79, -63, -127, 21, -111, -29, -81, 88, 45, -42, -47, -34, -84, 5,
-51, -84, 100, 24, -21, -6, 8, 35, 23, -19, -107, -39, 52, -67, 43, -86, -72, -94, 75, -12,
-37, 81, 80, 50, -118, 97, -84, -35, 18, 110, 70, -79, Byte.MIN_VALUE, -95, -117, 84, 116, 57, 51, 35,
32, 68, -30, 103, -116, 98, 57, -94, -51, 28, 117, 10, -55, -126, 78, -97, -127, 122, -122, -106,
22, -29, -58, -69, 110, 48, -119, -11, -122, -108, -77, 119, 20, -92, -36, -9, -69, -26, 124, -26,
118, -41, 32, 51, -14, 24, -60, -70, -40, -105, -61, 33, -65, 122, -79, -49, 44, 20, 48, 119,
69, -64, 52, -58, -63, 28, 86, -98, -100, -53, -111, 25, -93, 87, -2, 62, -111, -31, -105, -68,
104, 102, 21, 99, 88, 77, 83, 59, -66, -48, -79, 90, -104, 9, -77, 37, -112, 90, -110, Byte.MAX_VALUE,
59, -43, 32, 53, -45, -5, 32, Byte.MIN_VALUE, -29, Byte.MAX_VALUE, 103, 12, -85, 34, -77, -61, 112, 3, 42, -119,
103, 40, 82, 2, 25, -56, 32, 55, -34, -102, 46, 100, -1, -60, -4, 64, 17, 42, 58, -51,
20, -42, -97, 59, -18, 63, -25, -77, 25, -95, 20, 9, 1, -115, -6, -96, 55, -13, -8, 116,
29, -58, 66, 18, 67, -26, 76, 99, 8, -21, -57, 65, 29, 75, 125, -3, 76, -90, -80, 6,
5, -124, 5, -38, -25, Byte.MAX_VALUE, 68, -105, -80, -77, 23, 23, -80, 7, 52, -64, 28, 0, -42, -77,
106, -126, 99, 44, -116, 60, -24, -95, 90, -50, -38, -106, 17, -60, -114, 119, 24, -63, -70, -40,
7, 112, 93, -78, -36, 90, 50, 119, 22, 90, -54, -34, 6, 55, -64, 54, -46, -63, 4, 86,
-82, -36, -85, 65, 13, 62, 22, 81, 16, -89, -87, 103, -11, 13, 64, 102, 5, 3, 88, -41,
-89, 121, 79, 4, 9, 62, 22, -88, -77, -78, -68, 107, -53, -105, 111, -69, -24, 99, -99, 74,
67, 121, Byte.MIN_VALUE, -59, 126, -104, -109, -102, -23, 99, -19, 82, 98, 17, -127, 69, 72, -2, -105, 62,
-42, 99, 62, 102, 55, -124, 35, 22, 126, 124, 52, 109, -84, -45, 73, 88, 100, -108, 44, Byte.MIN_VALUE,
70, 55, -46, -59, 90, -90, 32, 34, 3, 11, 35, -41, 109, -93, -119, -27, 66, 124, -115, -6,
-123, 37, 22, 110, -72, -113, 38, 86, -59, 120, 50, 66, -86, -95, -69, 104, 61, 115, -118, 30,
-42, 82, -97, -37, -15, -124, 39, 22, -112, -25, -47, -62, -70, -10, -96, -49, -101, 9, 79, 44,
76, -65, -38, 73, 7, -21, -44, -21, -10, Byte.MIN_VALUE, 71, 122, 89, 28, -94, 9, 86, 94, 58, -69,
-119, 14, -42, 23, 114, -33, -29, 75, 42, 41, 67, 33, -73, -13, 8, 11, 77, -85, -91, -127,
-27, 90, 83, -46, 73, -70, 75, 50, 20, -68, -38, 65, 3, -105, -17, -95, -125, -11, -94, 25,
-117, -96, 0, -70, -87, 52, -80, 46, -92, -96, 17, -123, -123, 70, 59, -87, 99, -19, -109, 18,
-111, -124, -123, -111, -29, -65, -94, -114, 53, -95, 16, -113, 40, 44, 66, -71, -120, 50, -106, 11,
57, -53, -17, -19, -23, -16, -74, 67, -2, 24, 107, -31, -115, -67, 41, 99, -99, 70, 72, -2,
74, -39, 81, -44, 88, -94, -108, -17, 120, -81, 84, 107, 69, -103, 58, Byte.MIN_VALUE, -123, -68, -13, 50,
85, -84, -3, 18, -98, 98, -31, -104, -71, 84, 54, -17, -66, -121, 94, -40, -68, 109, -13, -74,
-91, -113, 15, 126, -18, -97, 74, -99, -115, -119, -43, 106, -60, -85, -107, 84, -79, -26, 106, 120,
-39, -66, -29, 68, -119, -12, -59, 55, 14, 85, -3, 126, -104, Byte.MIN_VALUE, -13, 92, -39, -74, -65, 76,
103, -30, 36, 22, 92, -71, -109, 34, -106, 107, -16, 79, 124, 108, -78, 8, -29, -8, 39, -118,
-81, 116, -100, 81, -43, 116, -2, -3, 4, 57, -96, -5, -29, 2, -19, 82, -118, 88, -115, 3,
-7, 88, -80, 72, 121, -49, 35, -66, -33, -61, 52, 46, -120, -47, -47, -3, -12, -77, 51, 28,
-44, -80, 78, -67, -52, -65, -60, 1, -104, 38, 61, -37, -7, -24, 111, -59, 3, 106, -102, 19,
-55, 108, -81, -3, 74, 13, -21, 11, -2, -19, 107, 75, -22, -58, -18, -17, -86, -98, -44, -50,
-51, -76, -47, -6, -123, -47, -52, 115, -44, -80, -14, -44, 124, -61, 34, -113, -2, -47, -49, -90,
125, -51, 91, -90, -48, -38, -108, 30, -107, 84, 83, -62, 114, -83, -41, -13, -83, 14, -102, 17,
-65, -37, -86, 57, 63, 88, 71, -25, 39, 6, -118, -61, -108, -80, -100, -85, -116, 60, -61, -78,
-115, 15, 96, -27, -120, -29, 33, 58, 9, 15, 80, Byte.MAX_VALUE, 68, 9, -21, -6, 107, 116, -58, 103,
-4, -98, -92, 77, 33, 103, -56, 9, 100, 90, 16, -68, -48, -57, 64, -67, -39, 2, -91, 107,
41, 97, 53, -51, 59, 75, 49, 103, 108, 25, -43, -85, 105, 57, -66, -34, -22, 25, -33, 99,
104, 35, 8, 96, -23, 27, -40, -103, 86, 95, -45, 24, 88, 2, -6, -65, 82, -62, -70, 58,
-77, -114, -110, -108, 65, -109, 37, -119, -67, 39, -38, 19, 113, 113, 83, -78, 84, -12, -49, -115,
110, 27, 63, 9, 112, 33, -124, -21, -17, -91, Byte.MIN_VALUE, 122, -77, 40, -94, -124, -43, 32, -18, -26,
15, 4, -20, -88, 69, -103, 30, 21, -43, 119, -38, 43, -101, 54, -19, 107, -119, -67, -101, 54,
45, -101, 54, 50, 42, 106, -46, 14, 19, 74, 119, 38, 61, 48, 34, -127, 46, -79, -87, -92,
-79, -75, -112, 45, -114, 18, 86, -27, -118, 110, 85, 125, -36, 110, 84, -91, -12, 122, 120, -47,
-10, 3, 7, 60, 78, -98, 104, -7, -45, -127, 3, 31, 45, 27, 115, -9, -40, -106, 83, 108,
105, -75, 88, 27, 3, 94, -96, 123, -27, 121, -22, 107, 110, 113, -47, 101, 42, 88, 21, 89,
-35, -72, 57, 64, 106, 37, -29, -98, 94, -77, -5, 64, 59, -45, 109, -79, -17, -64, -98, -73,
103, -116, 74, 47, -96, 115, 60, 114, 125, -14, -27, Byte.MIN_VALUE, 23, 81, -50, 47, -89, -4, 69, 100,
87, -109, -68, 59, -57, -38, -85, 12, -4, 27, 113, 116, 121, -52, -62, 15, -9, -8, -126, -6,
61, 118, -81, -23, 39, -90, 113, -108, -97, -23, -103, -64, -49, -90, -35, -103, 77, -7, 123, 72,
-55, 103, 84, -80, 118, -85, 3, -58, 2, -122, -72, -47, 123, -10, -6, -115, 125, -81, 68, 83,
111, 122, 117, 107, 3, -57, -86, -100, 72, 121, 32, -114, -108, -18, -89, -126, -11, -33, 5, -127,
98, -31, -91, 125, -106, 29, -40, 27, 64, -20, 123, -73, -73, -126, -22, -44, -48, -14, -19, -34,
88, -50, -53, -105, 27, 125, 17, 54, -60, 81, -58, 34, 100, 31, 83, -63, -6, -101, 54, -64,
-37, 34, -114, -10, 121, 123, -33, -34, Byte.MIN_VALUE, 98, -33, -121, 3, 21, 20, 71, Byte.MIN_VALUE, 11, -67, -121,
-27, 78, 110, 120, -96, -49, -24, 77, 62, -102, -78, 107, 81, -44, -79, 14, 46, 100, 19, 11,
24, -2, -16, 126, Byte.MIN_VALUE, 86, 45, 90, 67, 116, 76, 97, -3, -48, -57, 51, 93, -94, 71, 35,
-93, 88, -102, 87, 88, 45, 89, -46, 101, 1, 91, -71, 99, 77, 18, -75, 122, -88, 125, -85,
67, -123, 115, 12, -13, 88, 29, -127, -61, -68, 46, -3, 92, 50, 13, 44, 74, 37, -21, -111,
0, 87, -6, -102, -121, -66, -65, -3, -9, -40, -35, 89, -20, 105, -113, -35, -67, -88, 109, 35,
-81, -1, 91, 7, -84, 31, 122, 120, -80, -10, 93, 67, 46, 120, 101, 61, 98, -22, 88, -123,
-108, 74, 86, -100, 53, 32, 44, -96, -67, 59, -11, 102, -116, -98, -32, -119, 97, 15, -76, 71,
-21, 63, 79, 24, 125, 51, 122, 78, -90, 116, 98, -92, 57, -71, -61, 60, -11, 111, 123, -76,
77, 91, -22, -29, -107, 25, 109, 86, 81, 78, 29, Byte.MIN_VALUE, -71, 47, -101, 88, -7, -37, 26, 111,
-58, -103, -45, -98, 104, -65, -115, 123, 31, -72, -48, -6, 23, 63, -2, -89, 61, 126, -40, -107,
68, 105, 52, 2, 76, 57, 121, -5, -11, -99, -23, -45, -2, 45, 29, -121, -51, 93, Byte.MAX_VALUE, -94,
-66, -4, 29, -104, -94, -40, -60, -46, -8, -40, -108, -79, -19, 54, 14, 92, -16, -47, 69, 57,
-106, 73, -87, -114, 16, -86, 5, 29, 62, 104, 67, -37, -73, -20, -11, 26, 92, 126, -103, -58,
-80, 3, -85, 88, -104, 113, 97, 115, 103, 88, 27, 62, -11, 113, 58, -15, 27, -44, -22, 8,
-80, 34, -41, 58, 124, -46, 18, -49, -105, 120, -1, 30, -97, -48, -104, 34, -57, 50, -106, 109,
-94, -9, 124, -71, -44, 54, -83, 37, 62, 70, 126, 6, 90, -87, -43, 17, 82, 62, -33, 43,
121, -40, -76, 106, -5, 73, -17, -79, -46, -95, 52, -42, -101, -77, -116, 5, -68, -22, -121, 59,
93, 108, 107, 77, 124, 36, -116, -37, -88, -82, -28, 7, -24, -40, -64, -42, -56, -81, -95, -13,
86, -118, 109, 44, 116, -4, -37, 94, -29, 111, -97, 122, -80, 126, -16, -2, -44, -81, -110, -50,
82, -66, -113, -46, 9, -127, 108, 103, 120, 56, 17, -27, 47, 22, 6, 64, -46, 46, -81, 30,
-102, 51, 21, 25, -26, -93, 92, 125, -125, -48, 56, -40, -56, 46, 93, -32, -33, -22, -44, -67,
-76, -114, 78, -94, -120, 117, 79, -64, 109, 11, -72, -108, -78, -59, -5, 48, -101, -109, 62, -6,
108, -69, 68, 70, 58, -81, 94, -48, -108, 92, Byte.MAX_VALUE, 101, -21, 98, -86, -122, -42, 91, 86, -36,
120, 23, 21, -84, -87, -127, -17, 12, 12, 46, -55, 71, -27, -7, -33, -4, -90, 120, -102, -44,
74, -17, 78, -84, 25, -85, -69, -2, -102, -22, 97, 74, -102, -81, -112, 10, -39, -19, 27, -74,
104, 97, -58, Byte.MAX_VALUE, -10, -34, -43, -11, 82, -48, 99, -125, -59, 58, -38, 3, -15, 117, -21, -98,
-22, 106, -26, -58, -31, -66, 37, 52, 87, 7, 83, -20, 27, 118, 7, -53, -13, 66, 65, 18,
-75, -32, 100, -89, 47, -13, 54, 33, 19, 105, 79, 113, 105, 125, 101, 28, -43, -23, -118, -45,
-26, 101, 34, -38, 59, 87, 81, -60, 122, -77, -92, 123, 95, 12, 72, -117, 92, -108, -80, -10,
-109, 115, -75, 87, -101, -100, 109, 77, -117, -53, 121, -3, -41, 43, -25, -54, -34, 26, -102, -80,
-50, 64, 50, 51, 39, -121, 52, 38, -50, 57, -31, 107, -39, -56, -107, 79, 18, 86, -40, 105,
-65, 114, 35, -44, 111, 83, -63, -38, -93, -22, -18, -35, 1, -110, 52, 104, 100, 51, -25, -3,
-29, -51, -107, 43, 115, 61, -79, 126, -27, -110, Byte.MAX_VALUE, -52, 75, -109, -86, -66, 3, 36, 99, -45,
-105, 112, -96, -103, -66, 32, -81, -6, -10, -25, 111, 83, -59, -26, -25, -92, 6, 6, -10, 125,
-96, 56, -84, -4, 63, 106, 10, -9, 7, 112, -68, -34, 98, -44, -105, 107, -107, 10, 119, 40,
-117, -54, 117, 6, -13, 37, 64, 48, -6, 34, 31, 16, -65, 104, 101, -29, 30, 90, 93, 92,
-19, -23, -1, -72, 46, -97, -56, 125, 105, -28, 44, -75, -111, -111, -67, 12, -56, -84, -61, 84,
-80, -66, -55, -94, 81, 24, Byte.MIN_VALUE, -35, 19, 24, 91, 97, 71, 13, -86, -76, 1, 81, -83, 33,
-110, 106, -84, 76, 45, 5, 33, -109, 40, -67, 10, -85, -112, -14, 122, -59, 0, 32, 72, -110,
48, 25, -115, 70, 27, 115, -45, 41, 90, -80, 18, 41, 97, -43, -90, -13, 126, -31, -114, -69,
-46, -29, 12, -97, 63, -126, -2, -95, -103, -46, -60, 16, 113, 29, 22, 113, 1, 44, -44, 38,
-122, 52, -51, -85, -119, 64, 44, -61, 115, -108, -80, 28, -81, -103, 35, 16, -85, -4, 77, 74,
88, 55, -34, 52, 70, 32, -106, 102, 59, -75, 9, -72, 43, 117, 17, -120, -107, 115, -120, -38,
-44, -18, -36, 124, 16, 113, 88, 118, 41, -75, -87, -35, -16, 115, 89, -28, 97, -43, -65, 94,
75, 13, -85, -22, 117, 60, -30, -80, -22, -26, 93, -95, -122, -43, 48, -124, -120, 56, 44, -21,
95, 40, 46, 116, 114, 14, -74, 68, 90, 61, 4, 58, -86, 75, -24, -32, 11, -123, -111, 86,
-76, 112, 21, -43, -59, -103, 48, 87, 70, 70, 24, 22, -111, 94, 70, 21, -21, 68, 66, -60,
97, -11, -85, -91, -68, -81, 3, 82, 23, 89, -115, 22, 48, -33, 73, 125, 19, -116, 84, 97,
19, -116, -64, -79, -10, 101, 69, -40, -10, 42, -109, -118, -87, 99, 93, 72, -79, 71, 84, 45,
68, 17, 7, 117, 44, -41, -40, -97, 34, 10, 75, -21, -25, -72, -94, -82, -79, 54, 104, 35,
42, -53, 82, -20, -91, -127, 5, 15, -27, 68, 18, 22, -102, 126, -118, 14, -42, -87, 87, 35,
-87, -47, -94, -71, 65, 98, -45, -104, 72, -38, -102, 77, -73, -26, 6, 29, 44, 56, -1, 120,
-28, 100, 90, 64, 65, 111, 83, 87, 120, 44, 61, 114, 122, 60, -8, -84, 42, 122, 88, -82,
-88, -6, 72, -23, -15, 0, -45, 96, 39, 61, 44, -72, 80, 17, 41, 73, 60, -103, -75, 5,
-46, -60, -6, 49, 41, 66, 26, 45, 64, 68, 95, -96, -117, 5, -57, 25, 34, -93, 30, -30,
-123, -12, -113, 101, Byte.MIN_VALUE, 31, -87, 35, 3, -117, -112, 28, -95, -113, 85, -99, 25, 25, -87, 86,
77, -54, 53, -6, 88, -114, -44, -97, 34, -94, 104, 29, 125, 23, -46, -57, -126, -37, -28, -111,
-16, 60, -76, 75, -104, 56, -2, 10, 94, -20, 23, 1, 88, -96, 126, 66, 19, 19, 88, -16,
89, 117, -8, 103, -15, -92, -100, -103, 35, -5, -32, -9, -125, -20, -31, -34, 106, 1, 52, -26,
34, 51, 88, 112, 120, 81, -72, 99, 17, -7, -81, 64, -122, -80, -54, 36, -31, 62, -86, -59,
-32, 1, -74, -51, -49, -101, -8, 83, 97, 90, -94, 101, -110, 50, -31, 43, 112, 106, -5, -99,
51, 121, 52, 50, -4, -105, -100, -53, 14, 34, 104, -91, 105, 61, 33, 4, -77, 90, 107, -12,
90, -83, 78, -93, 118, 71, -10, -70, 91, 35, 75, -87, -42, -108, 27, 81, 10, 123, -26, -95,
-103, -107, -52, 97, -99, -21, -113, 115, 32, -44, -18, -125, -102, 76, 122, -115, 70, 37, 93, 33,
73, 18, -119, -30, 99, 99, -29, 39, 77, -98, 60, 41, -53, -83, 35, 83, -87, 111, -115, -4,
-9, -42, -83, 16, -117, -30, -60, 42, 115, 55, -97, -34, -64, 52, -26, 26, 115, 88, 112, 110,
-80, -89, -120, 0, -67, 86, -73, 35, 71, 38, 22, 39, -73, -98, 101, 52, 83, -100, -87, -56,
81, 106, 117, 58, Byte.MAX_VALUE, -77, -96, Byte.MIN_VALUE, 85, -109, -127, -56, -70, -41, 67, 35, 50, 119, 66, 6,
-79, 28, -120, 21, -80, -48, -10, 120, 26, 31, 12, 69, 109, 53, 53, 38, -109, 81, 111, -56,
87, 43, 101, -21, 36, -109, 39, 39, -59, -58, -118, 68, 73, -46, 21, 114, -51, -63, 114, -109,
9, 109, 59, -94, -89, -91, 73, -14, -65, -98, 2, 16, -92, 53, 51, -66, 59, -21, 14, -15,
-97, 122, 57, -103, -60, -126, -37, -91, Byte.MIN_VALUE, 25, -94, -10, -54, -123, -38, -84, -33, -23, 75, 10,
52, 57, 57, -39, 18, -119, 36, 35, 35, 61, 61, 45, 77, -100, 37, -37, -86, 86, 23, -24,
-76, 38, 107, -51, 45, 64, -35, -2, 102, 64, -86, 19, -69, -15, -29, -126, -119, -97, 64, 70,
-79, -82, -115, 48, -47, 107, 126, 90, -119, -84, 102, 125, 65, 97, 118, 118, 102, 74, -118, 40,
65, 36, -98, -68, 92, -102, -91, 80, 20, -108, -105, -21, 13, 6, -117, -39, -118, -42, -73, 61,
-47, 112, -38, 123, -25, -30, -39, -118, -64, 47, -81, 100, 56, 100, 22, 11, -26, 41, -88, -44,
51, -49, 115, -52, -82, -45, -85, -107, 57, 105, -23, 9, 45, -83, -113, 104, -6, 36, -71, 60,
-33, 115, 72, -121, 39, 88, 90, 102, 103, 76, 15, 120, -9, 77, 52, -93, -118, 105, -84, -117,
-61, -3, -50, -43, -14, 108, -90, -20, 110, Byte.MIN_VALUE, -22, -84, 103, -49, -102, -51, 122, 77, -127, 92,
-74, 98, -14, -92, -8, -24, -24, -8, -72, 116, -119, 76, -83, -42, 26, 77, 109, 117, 11, -57,
1, -53, 125, 2, -21, 116, 75, -96, 63, -86, 33, -43, -63, 52, 22, -36, -74, -40, -49, 3,
17, -41, 22, -27, -85, 21, 82, 119, 19, -108, -111, 54, 115, 124, -118, 88, -110, -87, 84, 104,
74, 75, 77, 103, 109, 55, -101, -97, -32, -91, -28, 51, 117, -127, -18, 88, 56, -27, 11, -56,
56, -106, -77, 111, 121, -41, 67, 53, -28, -58, 21, 91, -73, -86, -114, 30, -43, 106, -11, 38,
-45, 47, -105, -48, -10, -26, 25, 112, -47, -79, 4, -91, 1, -18, 27, 66, 106, -58, 64, -26,
-79, -32, Byte.MAX_VALUE, 18, 81, 63, 61, 119, 119, -76, -91, 4, -36, 119, -68, 3, 108, 10, -127, 13,
57, -49, 6, 22, 92, 82, 16, 126, -125, 15, -72, 116, 19, 100, 5, -21, 92, -78, 53, -20,
-76, -12, 67, 111, -80, -125, -27, 122, 71, 26, 110, 67, -90, 68, -6, 97, -56, 14, 22, 108,
-70, -21, -53, -16, 26, -114, 39, -14, -97, 117, -79, -123, 5, 79, -58, -122, -43, -60, 120, 96,
-119, -70, 0, 89, -61, -126, 27, -28, 97, -123, 53, -13, 99, -56, 34, 86, -45, 40, 125, 24,
105, 105, -26, 64, 54, -79, 96, 89, 114, -8, -76, 90, 117, -9, -97, 98, 23, 11, 46, 92,
17, 46, 79, 68, 114, -46, 46, -56, 50, 86, -13, 3, -123, -31, 81, 17, 9, -27, 24, 23,
-37, 88, -16, -25, 71, 45, 97, -47, -72, -21, -5, 55, 66, -42, -79, -32, -57, 25, -31, 80,
17, -47, -108, 10, 24, 4, 44, -41, -76, 48, 88, -32, 74, 100, 110, -7, 45, 24, 88, -48,
-39, -77, 36, -44, -101, 45, 60, -1, 97, 8, -125, -126, 5, -49, -36, 31, -30, -13, 76, 65,
73, -33, -58, 96, 97, -63, 98, 49, 26, -54, 90, -64, -4, -24, -49, 48, 104, 88, -65, 109,
-103, 28, -54, -71, 41, -102, 116, 24, 6, 15, 11, -62, 105, 91, 67, 86, 11, 16, -110, -43,
48, -88, 88, -51, 19, -108, 33, 91, -80, -92, 51, 92, -63, -59, -126, 13, 79, -106, -122, 102,
-39, -62, 85, 11, -102, 97, -112, -79, 96, 117, -116, 62, 20, -75, -56, -94, 97, 13, 48, -24,
88, -16, 71, 36, 4, 19, 8, -68, 52, -22, 12, -28, 0, 11, 126, -109, 104, 12, 53, 45,
80, -34, -1, 52, -28, 4, 11, 126, -98, 108, 14, -83, -102, 72, -24, -58, 85, 65, -114, -80,
-32, -79, 120, 75, 40, 105, -111, -122, -72, 74, -56, 25, 22, -4, 119, 66, 8, -19, 101, -118,
-21, -112, -17, 33, -121, 88, -16, -16, 8, 115, -88, 44, -34, 4, -70, -5, -53, 32, -89, 88,
-16, 80, -94, 46, 52, 106, 34, 81, 52, -76, 18, 114, -116, 5, 43, 7, -24, 66, -95, 108,
-111, -102, -2, -43, -112, 115, 44, 120, -94, 71, 8, 104, -127, -4, 123, 27, 33, 15, -80, -32,
-119, -66, 26, -64, -17, -124, 11, -40, 21, -125, 25, -80, 98, 2, 11, 94, 24, 35, -25, -11,
-8, 22, -80, 73, 94, 112, 64, -98, 96, -63, -85, 75, 36, -105, -8, -37, -52, 19, -26, -76,
45, -51, -112, 55, 88, -80, 121, -125, -56, -60, 87, 45, 82, 31, -65, -1, 6, -28, 17, 22,
-124, -97, 69, 107, -7, -71, -50, -50, 126, 16, -7, -106, -95, 123, 100, 12, 11, 86, 13, 83,
-93, -4, 123, 42, -30, 54, -7, 83, 13, -112, 119, 88, -80, 118, 81, 58, -17, -6, -43, -124,
126, -30, -22, -85, -112, -121, 88, -16, -6, -2, -8, 82, 126, -67, 126, 37, -13, -29, -65, 114,
66, 94, 98, 65, 120, -78, 103, 22, -113, 82, 8, Byte.MIN_VALUE, 101, 12, -68, -52, -28, -19, 49, -117,
5, -101, -25, 78, 50, -14, 36, 65, 5, -88, 118, -24, 26, 23, -28, 49, 22, -124, 121, -113,
41, 108, 124, 104, -71, 72, -77, -20, -55, 50, -122, -17, -115, 113, 44, 88, -5, 110, 82, 57,
-25, 90, Byte.MIN_VALUE, -48, 12, -6, -32, 87, -56, 123, 44, -24, -6, -74, -25, 123, 28, 87, 69, Byte.MIN_VALUE,
-90, -113, -68, 0, 97, 8, 96, 65, -24, -104, -15, -57, 114, 14, 59, -117, -32, 82, 126, -97,
45, 78, 24, 34, 88, 16, 126, 53, 35, 83, -57, 81, -23, 34, -48, 34, -15, -36, 19, -84,
-36, 21, 75, 88, -48, -15, -7, -13, -103, 53, 100, -16, -71, 0, -87, -101, 50, -89, -62, 9,
67, 10, 11, -62, -90, 61, -47, 114, Byte.MIN_VALUE, 7, -3, 25, -72, -72, -57, -111, 27, 108, -35, 18,
123, 88, 16, 54, 46, -116, 43, -86, 11, -30, 6, 73, -64, 94, -109, -35, 115, -115, -125, -67,
27, 98, 19, -53, -35, -71, 126, 105, -100, -54, 76, 4, -121, 11, 7, -58, -100, 39, 54, 95,
100, -13, 118, -40, -59, -126, -82, -22, 45, -55, 50, 35, -55, 126, 109, 36, -56, -14, -27, -29,
118, -98, -121, 48, -124, -79, -36, 92, 87, -74, 15, 72, 55, -77, -52, -123, -109, -38, -92, -5,
63, 107, 112, -63, 16, -57, 114, -121, -13, -93, -98, 105, 90, 22, -9, -17, -76, -93, -57, 19,
123, -1, 27, 6, 33, -18, 8, -58, -105, 52, Byte.MAX_VALUE, -4, -8, -117, 74, 35, -118, 51, -34, 122,
1, Byte.MIN_VALUE, -37, 12, 27, -97, 120, -70, 24, -62, -80, -63, -126, -16, -73, -86, -51, 83, 51, 84,
38, -126, -47, -42, 30, -112, -104, 46, 103, -26, -100, -36, 83, 16, -122, 21, -106, 59, 126, -83,
92, 37, 26, -81, -79, -111, 12, -11, -78, 1, 65, 90, -34, 19, 61, -74, -67, -70, 41, 104,
119, 16, 68, -84, -106, -42, -21, -21, 84, 68, 92, -60, -60, -74, 15, 0, 88, 85, -55, -56,
-110, -45, -82, 96, 94, 126, 112, -79, 90, -6, 65, -97, 60, -34, -21, 85, -75, -79, 6, -91,
-72, -107, -120, -69, -107, 2, 117, 22, -3, -114, -79, 119, -49, 45, 118, 6, -7, -38, -125, -114,
-43, -110, -39, 23, -81, -97, 49, 75, -110, 83, 100, 66, -55, 110, -75, 97, 0, 39, 72, -78,
78, -81, -111, 75, 102, -49, -33, 89, -47, 28, -4, 11, -25, 2, -85, -91, 124, -99, -85, -36,
-71, 54, 57, 81, -94, -48, 90, -55, 64, -60, 60, 78, -124, -79, 80, 46, 78, -100, -3, -42,
-95, -86, -38, 102, 78, -82, -102, 35, -84, -106, 108, -43, 121, -29, -52, -111, 85, 67, -112, -40,
116, -59, 113, 115, 103, 91, -4, 120, -74, -32, 114, -1, 75, -44, -88, -108, 37, 34, -56, -109,
-37, -65, -67, 118, -61, 5, 57, -117, 59, 32, -57, -15, -13, -31, 53, 99, -18, -20, 117, -1,
-84, -84, -115, -22, -93, 37, 103, 45, -26, -77, -74, -42, -88, 49, 91, 44, 53, -91, -123, -102,
-83, 27, -45, 103, -11, -70, -77, -9, -78, 45, 101, 103, -72, -66, 84, -18, -79, 60, 113, -19,
92, -59, -95, -68, -11, 75, -25, 15, 30, 60, 120, 96, 66, 107, -36, -21, -2, -13, -32, -91,
75, 87, -26, -26, -107, 85, 94, 107, -26, -59, 85, -14, 4, 43, 68, 66, -64, 18, -80, 4,
44, 1, 75, -64, 18, -80, -124, 16, -80, 4, 44, 1, 75, -64, 18, -80, 4, 44, 33, 4,
44, 1, 75, -64, 18, -80, 4, 44, 1, 75, 8, 1, 75, -64, 18, -80, 4, 44, 1, 75,
-64, 18, -30, -1, 1, 59, -126, 122, -23, Byte.MAX_VALUE, -26, 4, -9, 0, 0, 0, 0, 73, 69, 78,
68, -82, 66, 96, -126 };
}

@ -0,0 +1,324 @@
package hackvent2018.evil;
public class Sad
{
public static byte[] b = {
-119, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72, 68, 82, 0, 0, 1, 44,
0, 0, 1, 44, 8, 3, 0, 0, 0, 78, -93, 126, 71, 0, 0, 2, -3, 80, 76, 84,
69, 0, 1, 0, 4, 1, 6, 0, 3, 6, 3, 6, 2, 6, 7, 18, 7, 10, 6, 11,
10, 0, 11, 9, 14, 13, 16, 12, 15, 16, 24, 18, 17, 7, 18, 16, 20, 22, 19, 2,
18, 21, 3, 26, 23, 9, 24, 23, 15, 22, 23, 30, 23, 24, 22, 25, 24, 27, 26, 27,
6, 25, 27, 14, 27, 28, 35, 30, 28, 32, 32, 30, 21, 33, 32, 8, 31, 32, 15, 30,
31, 29, 35, 36, 19, 34, 34, 42, 36, 37, 14, 37, 35, 38, 35, 37, 35, 40, 38, 27,
41, 40, 13, 40, 40, 19, 40, 39, 33, 39, 41, 24, 43, 44, 22, 42, 43, 41, 43, 44,
32, 47, 45, 12, 44, 45, 28, 47, 46, 19, 43, 44, 51, 45, 44, 47, 47, 47, 25, 51,
50, 23, 49, 51, 33, 51, 50, 38, 51, 51, 29, 51, 49, 52, 49, 50, 48, 52, 51, 44,
55, 53, 20, 50, 51, 59, 55, 54, 27, 57, 58, 19, 59, 57, 30, 59, 56, 44, 56, 59,
24, 55, 57, 54, 56, 56, 64, 53, 58, 60, 59, 59, 37, 58, 58, 50, 59, 57, 60, 63,
64, 24, 66, 63, 30, 65, 63, 35, 61, 63, 60, 64, 64, 51, 64, 66, 32, 64, 63, 66,
66, 66, 43, 63, 64, 72, 66, 66, 58, 66, 67, 49, 65, 67, 64, 69, 70, 30, 72, 72,
26, 69, 72, 37, 73, 71, 42, 72, 71, 63, 72, 70, 73, 68, 72, 74, 70, 72, 69, 70,
71, 80, 74, 75, 34, 78, 79, 38, 75, 77, 74, 81, 80, 34, 82, 80, 51, 77, 78, 86,
81, 79, 66, 80, 78, 81, 80, 79, 72, 80, 83, 47, 82, 83, 42, 77, 81, 83, 80, 82,
79, 86, 87, 45, 88, 87, 40, 90, 88, 35, 82, 86, 88, 84, 86, 83, 90, 90, 49, 89,
87, 91, 92, 91, 44, 90, 89, 81, 95, 94, 47, 93, 92, 84, 94, 91, 95, 91, 93, 90,
99, 97, 44, 98, 97, 50, 93, 94, 102, 91, 95, 98, 95, 97, 94, 98, 96, 100, 102, 101,
53, 104, 102, 48, 102, 105, 50, 97, 102, 104, 100, 102, 99, 102, 101, 105, 108, 105, 51, 110,
108, 54, 108, 110, 48, 109, 112, 56, 106, 108, 105, 109, 107, 111, 107, 108, 117, 106, 111, 113,
112, 115, 59, 114, 116, 54, 113, 111, 115, 118, 118, 50, 117, 119, 57, 114, 116, 113, 117, 115,
119, 114, 119, 121, 123, 123, 55, 122, 124, 62, 119, 124, 126, Byte.MAX_VALUE, Byte.MIN_VALUE, 66, 122, 124, 121, 125,
123, Byte.MAX_VALUE, -127, -127, 61, 126, Byte.MIN_VALUE, 125, -120, -122, 59, -121, -121, 66, -127, -125, Byte.MIN_VALUE, -121, -124, -120,
-126, -121, -119, -116, -117, 70, -122, -120, -123, -113, -115, 66, -115, -117, -113, -120, -115, -112, -108, -110,
70, -116, -114, -117, -110, -112, -108, -104, -106, 74, -101, -105, 69, -104, -102, 70, -100, -102, 78, -104,
-107, -103, -109, -104, -101, -101, -98, 80, -105, -103, -106, -97, -95, 77, -96, -99, -95, -99, -97, -100,
-101, -96, -94, -92, -89, 82, -87, -86, 78, -87, -84, 87, -92, -90, -93, -94, -89, -86, -88, -90,
-86, -82, -81, 83, -78, -78, 86, -81, -84, -79, -86, -81, -79, -83, -81, -85, -75, -74, 89, -71,
-71, 93, -67, -68, 89, -79, -74, -71, -72, -75, -70, -67, -67, 96, -73, -71, -75, -62, -63, 93,
-66, -68, -64, -69, -64, -61, -66, -64, -68, -56, -57, 99, -61, -63, -59, -51, -53, 103, -56, -58,
-54, -47, -50, 99, -60, -55, -53, -49, -46, 101, -55, -53, -56, -109, -40, -17, -46, -43, 104, -102,
-39, -22, -96, -37, -27, -43, -40, 107, -47, -49, -45, -52, -47, -44, -49, -46, -50, -92, -34, -36,
-39, -36, 111, -83, -31, -42, -34, -33, 107, -76, -30, -49, -41, -39, -42, -37, -40, -36, -43, -37,
-35, -67, -27, -58, -29, -28, 111, -63, -24, -64, -26, -24, 115, -37, -31, -29, -56, -21, -71, -33,
-31, -34, -22, -21, 118, -49, -19, -77, -20, -19, 120, -31, -26, -24, -28, -26, -29, -16, -16, 116,
-36, -15, -91, -13, -14, 118, -27, -21, -19, -29, -12, -98, -23, -21, -24, -25, -10, -103, -9, -10,
122, -21, -8, -108, -17, -6, -112, -5, -6, 125, -16, -14, -17, -14, -4, -117, -19, -13, -11, -3,
-4, Byte.MAX_VALUE, -10, -2, -122, -1, -2, 122, -1, -2, -127, -1, -1, -125, -11, -9, -13, -1, -1, -119,
-8, -5, -9, -2, -1, -4, -37, -38, -3, -8, 0, 0, 0, 1, 98, 75, 71, 68, 0, -120,
5, 29, 72, 0, 0, 0, 9, 112, 72, 89, 115, 0, 0, 29, -121, 0, 0, 29, -121, 1,
-113, -27, -15, 101, 0, 0, 0, 7, 116, 73, 77, 69, 7, -30, 9, 19, 18, 23, 27, 72,
-96, -80, 77, 0, 0, 21, 96, 73, 68, 65, 84, 120, -38, -19, -35, 123, 88, 84, -43, -38,
0, -16, -55, 57, -124, -95, 7, 79, 68, 38, -110, -95, 24, 117, 52, -95, -68, 20, 81, 120,
-44, -46, -58, 46, 20, 106, 6, 114, -52, 52, -95, 44, 34, -17, 102, 41, -95, -106, 26, 114,
-60, 11, -118, -120, 122, 70, 41, -87, 32, 39, 11, -121, 2, 83, 70, 27, 112, -68, 96, -109,
70, 115, 56, 124, -45, -16, 73, -24, 52, -58, -73, -49, 25, -110, -10, -13, -50, -52, 122, -66,
-31, -110, -96, -52, 48, 123, -42, -66, -114, 123, -65, 79, Byte.MAX_VALUE, -16, -104, 110, -42, -6, -19, -75,
-42, 94, -73, -67, -74, 12, 73, 65, 57, 100, 18, -127, -124, 37, 97, 73, 88, 18, -106, -124,
37, 97, 73, 4, 18, -106, -124, 37, 97, 73, 88, 18, -106, -124, 37, 17, 72, 88, 18, -106,
-124, 37, 97, 73, 88, 18, -106, 68, 32, 97, 73, 88, 18, -106, -124, -27, 93, -40, -102, 47,
-42, -41, 29, 43, -34, -69, 97, -11, -44, -87, 83, 31, 9, -18, -120, 7, -90, 78, 125, 122,
-53, -122, 93, -59, -57, -21, -22, 47, 94, -79, 73, 88, 8, 57, -50, 21, 111, -99, -7, -48,
-45, Byte.MAX_VALUE, Byte.MAX_VALUE, -19, -19, -115, 74, -107, 90, -83, 59, -91, -85, 49, 119, -124, -31, -44, -87, 83,
101, -22, 34, -27, 7, 11, 95, 123, -14, -23, -121, 102, -82, 41, 57, 33, 102, 44, 91, -59,
-5, -3, 123, 5, -89, -26, 107, 1, 72, -46, -7, -97, -69, 0, 18, 0, -76, 5, 115, 66,
100, 97, 43, 42, 108, -30, -61, 106, -86, 44, 92, -14, -52, -125, 73, -69, 53, 22, 59, 64,
15, 78, 93, -60, 0, -20, -106, -61, -71, 73, Byte.MAX_VALUE, 125, 98, 69, 97, 101, -109, 120, -80, -102,
-10, -116, 13, 122, 45, 95, 103, 36, 40, 58, 93, 35, 70, 24, -85, 63, 122, -83, -49, -40,
61, -105, 68, Byte.MIN_VALUE, 117, -91, -2, -45, -15, 55, 39, 29, -10, -102, -23, 58, -78, -61, 41, 55,
-113, -1, -72, -34, 118, 67, 99, -99, 120, 47, 46, 121, -69, -90, -123, -114, -44, 31, 94, 45,
-38, -19, -55, 113, 107, -114, -33, -88, 88, -114, -67, 125, 66, -44, 68, 11, -55, 88, -76, 16,
7, 67, -3, 119, -34, Byte.MIN_VALUE, 88, -105, -113, 44, 29, -80, -80, -38, 14, 36, -93, 1, 118, 93,
-58, -112, 5, 71, -102, 110, 40, -84, 11, 43, -5, -81, -46, -104, -127, 97, -86, -10, -6, 104,
-42, -82, -22, 63, -65, -23, 70, -63, 114, 92, 90, 32, -49, 38, 88, Byte.MIN_VALUE, -70, 10, 70, 100,
-53, 87, -41, 59, 110, 4, -84, -110, 89, 10, 37, 1, 44, 90, -75, 22, 47, -117, 50, 126,
102, -119, -49, 99, 125, 27, 52, -15, -108, -107, -28, 32, 90, 116, 49, -3, -65, -11, 101, 44,
-37, -79, -23, 15, 106, -20, 64, 114, 18, -50, -50, -41, -125, -45, 43, 109, -66, -118, 85, 49,
34, 85, 7, 28, 81, -75, -113, 33, -75, 41, -9, 29, -9, 73, -84, 75, 113, -63, -27, 28,
74, 117, 120, 105, -6, 78, -81, -9, 57, -84, -90, 53, 35, -117, Byte.MIN_VALUE, 115, -85, -42, -54, 88,
48, 50, -21, -78, 111, 97, 125, -20, -81, 36, 72, -98, -62, -102, -21, Byte.MAX_VALUE, -64, -121, -80, -50,
-59, 62, 106, 4, -66, -84, -100, -123, -53, -12, 104, -36, 57, 95, -63, 90, 121, -65, 26, -8,
-77, 106, 107, -23, 15, -33, -65, -58, 39, -80, -22, -125, -106, -13, 42, -43, -31, -107, 60, -80,
86, -16, 88, -51, -17, 13, -41, 8, -64, -118, 36, -19, -27, 81, -21, -101, -123, -115, 85, -37,
63, -97, 16, -124, 85, -21, -120, 113, 119, -1, 90, 1, 99, 57, 14, 4, -108, 11, -124, -86,
-115, -85, -68, 111, -79, 67, -88, 88, 77, -45, 82, 76, 2, -78, 114, 106, 25, 83, -89, 53,
11, 19, -21, -76, -65, 82, 80, 84, 109, -95, -108, -99, 22, 34, 86, 97, -56, 41, 16, 30,
22, 104, 67, 11, -123, -121, 53, 75, 65, 8, -113, -86, 85, -53, 28, 51, 77, 96, 88, -51,
-93, 51, 64, -112, 86, -83, -99, -120, -123, -109, 46, 10, 9, -21, -36, 64, -107, 80, -87, 90,
-121, 63, -86, -96, -45, -62, -63, 58, -17, -89, 35, -123, 28, -96, -21, 125, 82, 40, 88, -123,
-125, 116, 64, 10, 91, 75, 31, 81, 40, 12, -84, -11, -118, 6, -127, 91, -75, 54, -13, -47,
91, -123, Byte.MIN_VALUE, -11, -50, -93, 86, -66, 4, 26, 27, -67, -104, -120, 120, 120, 19, -1, 88, -53,
-46, 120, 123, 12, -38, -109, -125, -67, 24, -76, 91, -109, 22, -13, -115, -75, 52, -123, -73, 25,
81, -46, -24, 39, -109, 121, 51, 29, -76, 112, 61, -65, 88, -53, -98, -27, -81, -71, 106, -119,
-105, 57, 35, 82, 75, 57, 5, -42, -25, -42, -16, -119, -75, 108, 121, 11, 111, 88, -96, -108,
-75, -123, -33, 114, -54, -1, -94, 101, -7, 98, -2, -80, -106, 60, -58, -29, 76, 123, -107, -20,
-113, 8, 49, 80, 78, 70, -46, 38, -66, -80, 120, 108, -37, 73, -78, 49, 88, -42, 25, -101,
-87, 38, -60, -102, -76, -110, 31, -84, -49, -98, -91, -45, -74, -45, 116, -122, 69, -78, -82, 65,
-71, 112, -127, -94, -112, 15, -84, 125, 3, 26, -15, -77, 74, -108, -57, 107, 104, 89, 21, -55,
-82, 11, 37, -75, 73, 15, -80, 12, 57, -64, 61, -42, -111, 104, 11, 110, -39, 0, 123, 89,
-76, 76, -106, 64, 103, 11, -82, 86, 126, 61, -106, 44, -86, -118, -94, 86, 72, 9, -41, 88,
77, 1, 6, -20, 71, -66, 49, -86, 45, 119, 52, -90, -96, -95, 58, 68, -42, 61, 10, -88,
93, -48, 60, -8, 2, -73, 88, -11, 119, 96, -82, 76, 0, 84, 45, -22, 40, 21, 41, -76,
118, 119, -25, -6, 117, -41, 82, 104, 41, -75, -124, -27, -73, 54, 115, -119, 101, 27, -95, -58,
-76, 34, 82, -81, 86, -96, -34, 70, 90, 77, 124, 67, 100, 119, 45, 121, -66, -99, 82, -125,
119, 123, 51, -121, 88, -17, -28, 96, 89, -127, -87, -96, 107, -50, 10, 104, -10, -76, 54, 7,
118, -61, -110, 41, -12, 20, 82, 6, 57, -53, -72, -61, -38, -6, 44, 94, -43, -55, -66, -74,
-91, -119, -89, 57, -84, -124, -102, -28, -18, -123, 43, Byte.MIN_VALUE, -54, 125, 108, 73, -36, -55, 21, -42,
-15, -69, -79, -78, -90, -22, -42, -54, -104, 105, 119, -29, -9, -69, 104, -25, -93, 45, -98, -1,
-95, 37, -32, 56, 55, 88, -51, 67, -67, -97, 24, 5, -21, 65, 69, -9, 108, -47, -33, 65,
2, 6, 23, -123, -53, 79, 73, 122, -70, 48, -100, 26, 122, -103, 19, -84, -69, -68, 95, 75,
-123, 83, -111, 114, 23, 101, 64, 102, -95, 63, 92, 2, -115, -117, -57, 98, -108, -57, 110, 9,
20, 77, -30, 2, 43, 43, -43, -18, 101, 118, 72, 67, -94, -52, 117, 100, 51, 48, -74, 4,
34, -66, -5, -115, -112, 31, -76, 122, -72, 52, 60, -101, -59, 62, -42, -71, -119, 94, 54, -53,
-96, 75, -23, -19, -58, 74, 54, -56, 66, 50, -96, 5, -22, -16, -18, -105, 78, -84, 1, 15,
13, 67, -24, 49, -42, -79, -122, -106, 123, -103, -105, 85, 114, 119, 84, -78, 20, 53, 19, 88,
-83, -109, 9, -82, 90, -82, -125, -98, 70, 1, -79, 14, -106, -79, 102, -83, -13, -90, -26, 56,
59, 86, 110, -87, 2, 82, -11, -52, -51, -16, -40, 15, -71, 40, 92, -55, 30, 10, 87, -58,
59, -20, 98, -107, 62, 14, -34, -44, -113, -51, -3, -36, -106, -86, 85, 6, -110, -55, -55, 48,
-80, 108, 118, 113, 63, 10, 122, 108, 94, 33, -28, 0, -101, 88, -74, -15, 6, 47, 26, -34,
-93, 33, 110, 75, 85, -102, -103, -15, 105, 67, -88, 10, -19, -2, -117, -30, 123, 122, 44, -126,
-15, -82, 38, 22, -79, 22, 124, 0, -108, 75, -107, -85, -114, 85, 7, 85, 110, 13, 43, -81,
30, 90, 114, -70, -1, -82, -48, -3, 61, 105, -19, -34, -64, 30, 86, 69, 0, 101, 43, 99,
-88, -37, 10, -104, -51, -34, -94, -84, -95, 123, 89, -106, 39, -12, -16, -12, -74, -36, 118, -98,
45, 44, -37, 61, 122, -118, 71, 48, -24, -45, -36, 73, -35, -10, 46, -101, 107, -3, -50, 86,
-78, 123, 23, 53, 80, -35, 67, -113, 54, -56, -63, 18, 86, 94, 38, 53, 43, -29, -100,
0, 119, 86, -7, 70, -106, -41, 56, 64, -81, 112, 81, -72, -36, -2, 82, -56, -50, 98, 7, -85,
-71, -81, -119, -46, 6, -124, 124, -73, 109, -43, -69, 36, 7, -85, 65, -112, -21, -30, 86, 29,
117, -9, -73, -119, -5, -101, 88, -63, 26, -21, 121, -38, 22, Byte.MIN_VALUE, -56, 15, 118, -41, 91, 87,
114, -76, -39, 6, -86, 93, -116, -82, 82, -36, 61, 126, -107, 115, -39, -64, 42, -115, -12, -100,
87, 80, -6, -71, -23, -124, -54, -117, -72, 92, Byte.MIN_VALUE, 45, -22, -98, Byte.MIN_VALUE, -34, 110, 90, 46, -24,
-5, 53, 11, 88, -45, -12, 30, -89, 97, -54, -94, -36, -108, -86, -16, -51, -36, 46, -57, -126,
-15, -6, -62, 37, -113, -81, 113, 55, 116, 29, -31, 96, 28, -85, 34, -55, -45, 48, -66, 60,
-58, 93, 91, -91, -30, 124, -73, 27, 88, -53, -81, 105, -71, 66, 52, 110, 55, 101, -64, -14,
82, -58, -79, -4, 122, -34, -83, 2, -90, 104, 55, -11, 47, 32, -97, -97, 69, 126, 75, -25,
-52, -115, -4, -35, -98, -110, 80, 61, -108, 105, -84, -84, -123, 61, -49, 98, -103, -35, 12, 109,
-94, -107, 102, -98, -10, 67, 56, -57, 16, 29, -125, -21, -8, -98, -105, 95, 33, 101, 39, -77,
88, 77, 97, 30, -101, 118, 87, 84, -95, 26, -66, -74, 80, -74, -9, 11, 82, 91, -117, -107,
-38, -61, 60, 32, -104, 111, 106, 102, 20, -85, -40, -29, -102, 9, 116, -21, -76, -53, 35, 63,
-31, -5, 69, 2, 40, -117, -116, -9, 92, -78, 33, 123, 43, -93, 88, -125, 107, 60, -33, -58,
57, -41, -51, -125, -105, 89, -8, -33, -60, 12, -108, 14, 118, 49, 63, 114, -123, 65, -84, -99,
84, -106, -38, 77, 93, -102, 45, 121, 72, -103, -32, -73, 123, 119, 33, -51, 56, -64, 28, -106,
-51, -97, 74, 43, 13, -70, -85, -113, -97, -104, 34, -46, -121, -84, 72, 82, -33, -113, 57, -84,
-62, 69, -44, 70, -48, -38, -114, -3, 25, 85, -36, -66, 32, 6, 0, 116, -73, -58, 61, -69,
-113, 41, 44, -57, 100, 19, -59, 95, -102, 43, -109, -7, 69, 105, 92, -91, 28, -64, 106, 50,
-22, -85, -85, 13, 38, 51, 48, -42, -20, 59, -81, -44, 104, -48, 105, 62, -36, -67, 123, -9,
-121, 90, -99, -95, 17, 123, 59, 33, -24, 111, 119, 48, -124, 85, -105, 72, -75, 3, 0, 41,
1, 71, 93, 84, 64, -89, -108, -22, -107, -65, 62, -13, -52, 27, 111, -66, -7, -30, -72, 33,
15, -25, 48, 115, -100, 29, -40, 107, 114, 30, 11, Byte.MAX_VALUE, 113, 69, 86, 97, 73, 73, 73, 113,
-42, -118, -105, 34, 30, -34, -120, 123, 101, 72, 62, -58, 16, -42, -36, 34, -54, 41, 0, 87,
-81, -46, -127, -23, 45, -39, -13, 95, 94, -99, 10, 57, -67, -38, 63, 66, 77, -65, -1, 5,
85, 35, 111, 122, -1, -38, -119, -50, -38, -9, 123, -123, 99, 30, -108, -96, 89, -62, 12, 86,
-19, -51, -34, 100, -95, -5, -97, -44, 44, -4, 91, -34, 117, -109, 70, -57, 95, -120, 80, -47,
-84, Byte.MIN_VALUE, -97, 79, 121, -63, -43, -104, -18, -56, -52, -119, 88, 7, 6, 89, -122, 52, 49, -126,
53, 63, -97, 78, -91, -127, 67, -127, 95, 117, 63, 1, -52, 113, 41, -114, -50, -69, 25, -48,
-14, 96, 92, -99, -21, 86, -58, 113, 97, -58, 112, -116, -25, 11, 108, -4, 7, 19, 88, 77,
-3, -23, 89, -35, -18, 102, 7, 103, 86, 4, -10, 114, 52, 24, -18, -18, -46, -25, 110, -86,
61, 95, 123, -51, -31, -63, -1, -68, -93, -38, -5, -83, 43, 38, -103, -125, 1, -84, -46, 85,
116, -118, -64, 71, -9, -72, -35, -38, -13, -79, 2, -77, 51, 6, -122, -48, -50, 26, -40, -76,
32, -52, -39, 91, 25, -72, -96, -21, 45, 57, 54, 88, -17, -67, 86, -38, 62, 6, -80, -106,
106, 105, 20, 44, -45, 29, 93, -18, -41, -123, 13, -109, 86, 116, 109, -111, -41, -32, 109, -74,
36, -119, -66, 21, -99, -3, -27, -80, 63, 102, 66, -69, 14, -122, -65, -19, -21, 117, -87, -123,
-102, -89, 28, -76, -79, 28, 3, 104, -20, -49, -125, -20, -50, -9, 25, -102, -106, -74, 101, 106,
110, 103, -115, -71, -28, -113, 55, 41, -72, -67, -53, -46, -24, -24, -50, 121, -29, -82, 121, -35,
-111, -31, -3, 101, -89, 92, -90, -115, -11, -49, -123, 116, 106, 97, -97, -50, 3, -8, 86, 119,
100, -86, -53, 2, -63, -54, 12, -84, 107, 63, -48, 121, -14, 64, 69, -105, -111, -5, -89, 93,
-109, -3, -124, -9, 13, -30, -10, -113, 105, 99, -7, 87, -45, -40, -37, 95, -43, -65, -77, 96,
93, -51, 84, 103, 77, -84, 29, -126, 113, 109, -48, 63, 101, 115, 56, 108, -51, 109, -79, -94,
11, 86, -20, 23, -97, 125, -10, -39, -89, -85, -37, 98, -76, -65, -9, -5, -12, -75, -29, -23,
98, 29, 15, -91, 83, -80, 10, -26, 95, -67, -48, -34, -85, -103, -102, -41, 121, -11, 1, 24,
-5, -107, 97, 119, -97, -72, -72, -72, -40, -114, 24, 61, 48, 44, 44, -84, -19, -89, -23, -45,
-29, 90, 99, -18, 60, 103, -52, 93, 49, 1, -29, 92, -100, -66, -75, 52, -79, -78, 10, -24,
96, 125, 56, -21, -77, 29, -19, -79, 107, 82, 103, -29, -46, -98, 43, 103, 76, 15, -88, -63,
-72, -24, -26, 81, -37, -74, 116, -60, 54, -73, 49, 107, 45, -112, -65, -1, -22, -35, -123, -41,
-83, -95, -121, 101, -5, 27, -99, -19, -41, 96, -112, -115, -2, -93, 8, 76, 106, -29, -103, -79,
96, -63, -126, 121, 87, 35, 54, 6, -89, 100, -19, Byte.MAX_VALUE, 104, -57, 54, -113, 49, -7, 19, 32,
Byte.MAX_VALUE, -6, -105, 87, 55, 26, -116, -73, 92, -95, -123, 117, 57, -98, -42, 32, 14, -122, -83, -36,
113, 109, 116, -51, -48, -82, -2, 69, 56, -59, -42, -4, -105, 45, 30, -83, -74, -36, 105, 36,
Byte.MAX_VALUE, 59, 123, -10, 55, -17, 82, -5, -28, 9, 90, 88, 95, 126, Byte.MIN_VALUE, -39, 111, -4, -41, -17,
-19, -3, -9, 81, 61, -28, 104, 73, 63, -68, -117, 79, 124, -33, 35, -42, -122, -111, 22, -14,
-25, -77, 103, -2, -41, -53, 38, -74, -112, 22, 86, 92, 57, 94, -111, -6, -27, 76, 123, 123,
65, -60, -68, -68, -53, -19, -35, 15, -46, -30, 97, -87, 7, -18, -14, 96, -75, 43, -84, Byte.MIN_VALUE,
-4, -3, -57, -77, 103, -49, -4, -18, -35, -124, -23, 92, 58, 88, -74, -101, -15, -58, 111, 112,
-10, -20, 15, -19, 63, 53, 4, -68, -20, -90, -123, -39, 113, 107, 62, 110, -27, 78, -72, -85,
-25, 86, 107, -57, -88, 104, 32, -1, 115, -42, -119, -11, -109, 119, 21, 124, 36, 29, -84, 47,
49, -89, 6, 126, 114, -90, -13, -41, -114, 69, -71, -16, -25, -73, -72, -56, -38, -114, 119, 6,
102, 98, 63, 103, 97, -50, -124, 109, 61, 112, 109, -103, 28, -17, -68, -12, -1, -100, 113, 106,
-3, -32, 85, -47, -126, -92, -45, 52, -80, 38, 99, -75, -64, -28, 111, 63, 56, -45, -7, 99,
71, 2, 26, -45, -1, -76, 100, -41, 117, 89, -37, -79, 101, -60, 29, -121, 105, -12, 73, -84,
-117, -126, 86, -69, -45, -38, -79, 33, 40, -79, -11, 33, -37, 106, 117, -10, -69, -1, -13, -82,
11, -73, 20, 31, -53, -10, 23, -68, -91, -65, -97, 90, 19, -6, -35, Byte.MAX_VALUE, -2, 72, -126, 38,
36, 108, 73, -41, 62, -47, -90, 13, -79, -14, 116, 122, 19, -15, 80, 20, -16, -68, -21, 103,
-30, -106, -105, 3, -38, -5, -93, 56, 88, 6, 63, 124, -84, -17, -89, -32, -27, -24, -69, -42,
116, -98, -3, -91, 115, 90, -77, 124, -31, -72, -80, -5, -90, -51, 90, 54, Byte.MAX_VALUE, -39, -21, -45,
38, -36, -7, 64, -30, 110, -38, 71, 116, -126, 105, -29, -67, -9, -51, -33, 118, 77, -111, -35,
-79, 107, -37, -78, -121, 6, -81, 51, -76, -33, -121, -74, 59, -10, -125, 119, -17, 25, 65, 64,
45, 54, 86, 41, -34, 28, -54, Byte.MAX_VALUE, -37, 110, -22, -39, 107, -98, -37, -124, 89, -109, -7, -42,
-56, -104, -24, -60, -52, 79, 12, 22, 43, 35, -53, 59, 102, 85, -60, 77, 35, -26, 110, -72,
-38, -123, -37, -14, -14, -120, -101, 66, -117, -82, 118, -94, Byte.MAX_VALUE, -5, -15, -52, -103, -17, -2, -21,
-27, 45, 72, -33, -121, -115, -75, 30, -17, -20, -123, 118, -84, 51, 63, -69, 88, -35, -93, -65,
-60, 119, -51, -14, -114, 49, 63, 113, 72, -24, -67, 99, 90, -29, -34, -16, 33, 9, 5, -41,
110, -17, -3, -11, 87, -81, -81, -88, -103, -119, -115, -11, 18, -26, 113, 4, 63, -74, 105, -3,
-121, -109, -27, -43, 22, -109, 65, 87, 85, 85, -91, 51, 52, 88, 25, -72, 15, -60, -88, 43,
-72, 88, -111, -104, 103, -126, -76, 61, 13, Byte.MAX_VALUE, 38, 125, 49, -98, -84, -57, -60, -70, -16, 48,
-10, -103, 32, -65, -4, -14, -101, 79, 90, -111, 11, -65, -57, -60, -38, -69, 14, 72, -79, -59,
71, -59, -104, 88, -49, Byte.MAX_VALUE, 46, 62, -84, -61, 11, 48, -79, 122, 85, -117, 15, -85, -6, 17,
60, -84, 75, -67, -20, -94, -77, 34, 45, 125, -15, -80, -114, 69, -120, 16, 11, 6, -100, -61,
-62, -38, 35, -62, -10, -99, -124, -108, 98, 44, -84, 53, 42, 49, 98, 41, -25, 99, 97, -67,
80, 35, 70, 44, -51, 8, 28, 44, -57, -40, 22, 82, -124, 88, -90, 91, 112, -80, -102, -98,
16, 97, -63, 34, 73, -69, Byte.MAX_VALUE, 19, 6, -42, -59, -65, -117, 18, 11, -18, -1, 30, 3, -85,
126, 54, 41, 74, -84, -39, -57, 48, -80, -2, -67, 80, -100, 37, -21, -35, 18, 12, -84, 19,
31, -120, -77, 100, -87, -10, 97, 96, 21, 43, -59, -119, 85, -108, -121, -127, -75, -9, 35, 81,
98, -111, -43, -17, 97, 96, 109, 80, -117, 19, -53, -80, 24, 7, -21, -112, 56, -79, -116, 43,
48, -80, -34, -48, -119, 19, -53, -12, 6, 6, -42, 84, 9, 75, -62, -14, -120, -11, 38, 14,
-42, 41, 113, 98, 53, 62, -125, -127, 117, -81, 81, -100, 88, -106, -31, 24, 88, -63, 102, -111,
98, 69, 74, 88, 18, -106, -124, 37, 97, 73, 88, 18, -106, -124, -123, -127, -11, Byte.MIN_VALUE, 65, -62,
-110, -122, 59, 30, -62, -4, -92, -124, 37, -115, 13, 5, 51, -21, -16, -26, 97, -87, 100, 73,
-45, -54, 30, -62, -80, 76, -62, -94, -114, -123, 51, 7, 47, -42, -91, 48, 21, -50, 82, 88,
-55, 110, 9, -117, 50, 86, -99, 88, -105, -17, 75, 113, 54, -122, -92, -118, -77, 100, -67, 118,
68, -38, 69, 67, 25, 107, -36, 9, 12, -84, -53, -49, -120, 115, 51, -37, -83, 23, 48, -80,
108, 19, -60, -120, 5, 102, -84, 109, -110, -114, -79, 38, 49, 110, -64, 61, 21, -124, -75, 91,
121, -27, 65, 105, 107, 55, 101, -84, -68, -51, 98, -60, 90, -72, 15, 11, -21, -56, 72, 49,
-66, -114, 50, -28, 52, 22, 86, -99, 92, -124, 88, 4, -26, -117, 78, -88, -105, 65, -124, -81,
-48, -115, -63, -60, -118, 21, -29, -53, -103, 111, 98, 98, 109, 18, -31, 107, 97, 69, -5, 48,
-79, -50, 63, 38, 62, -84, -27, 39, 112, -113, 42, -120, 22, -33, -46, -31, 20, -36, -93, 10,
-48, 84, -15, 45, 29, -58, 98, 31, -126, -127, 121, -68, -118, 15, -9, -78, -76, 47, 96, 31,
-81, 82, -100, 35, -78, 70, 11, -46, -13, -80, -79, 78, 78, 20, 27, 86, -65, -45, -8, -121,
-115, 5, -119, 11, 11, 12, 114, 26, -57, -40, 77, 59, 36, 42, 45, -8, -120, -58, 49, 118,
-88, 80, 92, 61, 45, 72, -86, -96, -127, -27, -112, 19, 98, -62, 50, 79, 116, -48, 57, -44,
53, -74, 92, 76, 88, -6, -23, -76, 78, -64, 61, -112, 35, -86, 38, 107, 15, 45, -84, -117,
-15, 86, 17, 97, 77, -87, -28, -15, -120, 115, 31, -77, 34, 110, -79, -47, 59, 60, Byte.MAX_VALUE, -3,
126, 46, -97, -121, 12, 31, 55, -23, -27, 47, -49, -99, 79, -13, 75, 3, -57, 67, Byte.MIN_VALUE, 19,
36, -46, -46, 104, 52, -24, 85, 69, -83, 113, -48, 96, 48, -103, 9, -18, -47, 110, -93, -5,
89, 6, -44, 71, 15, 108, 67, -39, -51, -22, -20, 68, 69, -62, -100, -44, 69, -71, -7, -83,
-79, 57, 53, 117, -114, 34, 38, 85, 121, -118, -28, -44, 75, 59, 6, -47, -59, -38, -16, 54,
-69, 9, -122, 6, -27, 32, -71, 34, 71, 11, -42, 46, -97, -59, -122, 22, 107, 75, -7, -94,
16, -65, 100, 45, -121, 92, -37, -9, -48, -58, 114, 12, 50, -77, 87, -90, 44, -102, -4, -124,
-120, -12, 50, -85, 29, 92, 125, 20, -47, 110, 84, -58, 68, 46, 82, -101, 56, 2, -101, -46,
68, 27, 11, -51, -45, -79, 69, 101, 76, 11, 78, 57, 88, -45, -61, -9, 120, -99, -51, -106,
-87, 42, 61, 80, 81, -59, 1, 23, -104, -58, -38, -24, 99, -107, 102, -80, -110, 82, -30, 104,
66, -17, 76, 51, 5, 5, Byte.MIN_VALUE, -94, -64, -88, 67, 22, -42, -79, -46, 60, -42, 66, 10, 88,
-105, -62, Byte.MIN_VALUE, -7, 66, 101, 88, 21, -99, -94, 38, 40, 22, 24, Byte.MIN_VALUE, -14, -12, -24, -75, 122,
86, -117, 23, -104, -27, -51, 12, 96, -95, 105, 74, 96, -70, -60, 39, 7, 40, -51, -34, 93,
-76, 37, -33, 47, -115, -51, 99, -11, 32, -121, -62, 119, 70, 41, 96, -99, 11, 102, 50, -111,
64, 84, -91, -123, -25, -72, 44, 37, 0, -18, -113, 65, 119, -2, 73, 118, -56, -94, 42, -42,
62, 79, 77, 12, 103, -26, 51, -93, 104, -70, -118, -63, 35, -36, 15, 70, -60, -105, 119, -5,
12, 104, -101, -113, -35, 82, 83, -90, -54, 77, 79, 79, -49, 84, 29, 52, -72, 16, -125, -58,
50, 69, -116, -50, -50, 14, -105, -10, 85, -60, 12, -42, -71, 4, 43, 83, -91, 74, 23, 17,
-34, -67, -109, 75, -104, 107, -54, -42, -50, -119, -111, -53, -3, -94, 19, 50, 91, 123, -91, -15,
10, -71, 44, 42, 109, -65, -63, 76, 92, 119, 70, 35, -108, -11, -98, -61, -54, 6, 12, -26,
62, -115, -20, -120, 51, 49, -45, -84, -85, 20, 9, -27, 46, 106, 88, -74, 34, 121, -107, 82,
-83, 49, -127, -3, 106, 45, -76, 19, 90, 85, -10, 28, 69, 66, -78, -23, -6, 107, 40, 35,
-34, 98, 126, 76, 1, -90, -37, 109, 12, 97, 81, -3, -100, -69, -121, 4, -43, 4, 39, 24,
92, 22, 81, -62, -11, 56, 16, 90, 8, 115, 99, -9, -29, 63, -119, -125, -127, -117, -104, 126,
48, -62, -93, -123, -120, 41, -84, -53, -2, 102, -102, -87, 3, -78, 42, 45, -124, -95, -90, 15,
90, 22, -123, 42, 27, 25, -27, -86, 9, 64, -116, 97, -95, -99, 41, -12, -46, 6, 6, 69,
100, -103, -107, -71, -57, -124, 97, -35, -96, 124, 38, 75, 87, -58, 23, 12, 98, -95, -63, 53,
116, -46, 66, -84, -107, 23, 49, 91, 113, Byte.MIN_VALUE, -120, 9, 101, -82, -91, -73, -116, 111, 102, 18,
-117, -58, 66, 62, 88, -14, 35, 50, 27, -104, 111, -109, 15, -59, -92, 104, -103, -39, -57, 9,
-39, 91, 17, -109, 88, -105, -79, -57, 60, -96, -14, -53, 110, 96, -27, 105, 79, 28, 13, 72,
109, 97, -30, -55, 99, -110, -37, 24, -59, 66, -21, -45, 113, -110, 5, 80, -107, 24, -55, -38,
40, 5, 96, 109, -24, 126, 11, -19, -85, -61, 43, 59, 17, -77, 88, -56, 15, -93, 119, 3,
53, -119, -118, -14, 22, 54, 71, 116, -6, -12, 72, 21, -35, 62, -67, -31, 94, -60, 52, 86,
69, -110, -9, -97, -109, -49, 15, 40, 96, 123, 34, -54, -39, 123, 123, -100, -34, 107, 51, -16,
118, 41, -29, 88, 104, -110, 119, -33, 74, 1, 40, 122, 60, -83, -111, -125, 73, 59, -40, 31,
-71, -42, 72, -29, -61, -32, -43, 119, -38, -104, -57, 58, 50, -52, -18, 85, 5, 9, 79, 52,
114, 51, 29, 12, -106, -126, -64, 92, -20, -25, 34, -12, -83, 64, -52, 99, -95, 81, -44, -5,
74, 96, -54, 14, 80, 115, -73, -44, 0, -90, -104, 72, -36, -39, 27, -27, 12, -60, 6, -42,
-91, -66, 13, 84, 107, -58, -26, -16, 28, -126, -37, -59, -39, -93, -118, 120, -100, -89, 46, 88,
-17, -65, -64, 10, 22, -38, -73, -111, 90, 2, -86, -126, -25, 112, -65, -88, 12, 7, -3, 48,
58, -50, -80, 106, 43, 98, 7, -85, 121, 4, -123, -18, 3, -24, -105, 71, -106, -13, -79,
0, 15, -106, -76, -88, 34, 47, -5, 41, -96, 13, 106, 102, 9, 11, 125, -29, 113, 45, 31, 32,
51, 80, 69, -16, -77, 89, 1, 72, 125, 74, -72, 119, -33, -15, 38, -62, -49, 35, -74, -80,
-48, -85, 61, Byte.MAX_VALUE, -5, 25, 90, -76, -95, -119, -64, -29, -50, 74, 40, 15, 88, -21, -59, -102,
48, 40, -41, 32, -10, -80, 28, 99, 76, 61, 118, 16, -29, 21, 26, 126, 55, -95, 2, -111,
31, -107, 73, -11, 118, 65, 67, 88, 19, -117, 88, -88, 116, -92, -5, -124, 64, -90, 92, 45,
Byte.MIN_VALUE, -17, 26, 17, -23, 84, 123, 45, 16, -4, 21, 98, 19, 11, -51, 114, 91, 17, 33, 59,
-115, 16, -60, -34, 102, -69, 46, 58, -75, -118, 74, 74, -42, 45, 64, -20, 98, 57, -18, 113,
-5, 62, -113, -123, 20, 72, 64, -117, 38, -100, -62, -85, -110, -6, 88, 27, -53, 88, -88, 46,
-38, 23, 118, -103, -126, -25, -17, 20, -61, -35, -57, 16, -37, 88, -104, 51, 91, -36, -9, 35,
60, -3, -123, -92, 44, -60, 62, 22, -70, -89, -32, 70, 120, -19, -94, 40, 22, 113, -127, 101,
27, -22, -5, 31, -74, 5, -61, -64, 43, -100, 96, -95, 35, 119, -5, -68, 85, 99, -33, -29,
-120, 27, 44, -108, 21, -29, -29, 69, -53, -102, -80, 23, 113, -123, -123, -26, 109, -12, 105, 45,
-56, Byte.MAX_VALUE, 21, 113, -121, -43, 60, 74, -19, -61, 90, 80, 112, 87, 51, -121, 88, -88, -74, -113,
-58, 103, -75, 64, 115, 107, 19, -30, 18, 11, -43, 5, -42, -8, -86, -107, 105, -16, 57, -60,
45, 22, 58, 54, -46, 71, -117, 22, 4, 126, -119, -72, -58, 66, 121, -61, 27, 124, -47, -54,
28, -67, 7, 113, -113, -123, -66, 120, -50, 7, -117, -107, 61, 97, 31, -30, 3, 11, 45, 94,
14, -66, 86, 21, 33, 113, 22, -30, 7, 11, -83, 124, -50, -73, -34, 115, 5, 72, -7, 7,
-30, 11, 11, -67, -18, 91, -25, 47, -61, -86, -7, -120, 63, 44, -37, -52, 20, 31, 42, 91,
-42, -92, -7, 54, 30, -79, 16, -38, -12, 28, -8, 76, 29, 76, -38, 68, 51, -77, 116, -79,
-48, 50, -97, 105, -27, 19, 95, 71, 124, 99, -95, -107, -113, -7, -60, -87, 34, -60, 99, 89,
-120, Byte.MAX_VALUE, 44, -12, 113, -108, 15, 20, 45, 8, -35, -119, -124, Byte.MIN_VALUE, -123, -10, -124, -22, 5, -50,
5, -6, 97, 121, 72, 24, 88, -24, 100, -96, 86, -48, 90, -96, -23, -9, 45, 18, 10, 22,
58, -33, -89, 76, -56, 86, -121, -4, -49, 35, -31, 96, -95, -38, -55, -21, -124, -6, 80, 4,
120, 123, 122, 29, 18, 18, 22, -78, 45, -119, 18, 104, -9, -44, 50, 124, 30, 67, 121, 100,
12, 11, -95, -68, 97, 58, 1, -106, 45, -48, -115, -52, 67, -62, -61, 66, -57, -121, 102, -125,
-32, -86, 96, 78, -65, -109, 72, -120, 88, 8, -115, 74, 52, 11, -118, 11, -120, 57, 19, 28,
72, -96, 88, 40, 111, -112, -112, 86, 125, 64, 29, -70, -121, -47, -20, 49, -117, -123, -102, -18,
-55, 16, -116, 22, -84, -69, -21, 18, 18, 50, 22, 114, -52, 31, 41, -120, 14, 42, Byte.MIN_VALUE, 118,
-36, -21, 14, 36, 108, 44, 103, 119, 126, 76, -118, 21, -8, 111, -83, -110, -58, 84, 50, -98,
53, -26, -79, 16, 122, 63, 64, -57, -13, -34, 82, -48, -9, -37, -60, 66, -58, -40, -64, 66,
39, 39, -65, -62, -25, -82, 36, -48, 39, -115, 58, -119, 124, 5, 11, 57, 42, -6, 101, -13,
54, -4, -127, -52, -34, 21, 54, -28, 59, 88, 8, 53, -65, 62, 76, -51, -57, -26, 101, 32,
14, 15, 91, -42, -52, 82, -90, -40, -62, 66, -24, -36, -46, 33, 42, -82, 75, 23, 64, -39,
-16, 37, -25, 88, -53, 18, 123, 88, 8, -43, -10, 87, 24, 57, -43, -126, -102, -119, 65, -89,
89, -52, 16, -101, 88, 8, -107, 76, 72, 41, -25, -86, 116, 1, -108, 39, 77, 46, 97, 53,
59, -20, 98, 33, -37, -55, -15, 3, -72, -31, -78, -85, -121, 79, 58, -18, 64, -66, -116, -27,
-116, 111, -18, 27, -89, 54, -77, -21, 5, 96, -42, -116, 27, -11, 21, -21, 89, 97, 31, 11,
-95, -54, -107, 17, 25, 70, -10, -72, -64, 110, -56, -120, 88, 83, -55, 65, 70, -72, -64, 114,
-42, -58, 29, 55, 37, -77, -75, 2, 4, 53, -119, -67, -74, 56, 56, -55, 6, 55, 88, -50,
40, 124, 106, -36, -10, 42, -122, 15, 75, 118, 94, 77, -69, 125, -54, -40, 66, -82, -14, -64,
25, 22, 114, 92, 44, 25, -13, -25, 124, -126, 57, 46, 0, 34, -9, -74, 49, -97, -42, 59,
-48, -115, -121, -43, 26, 23, -106, -35, 50, 91, 101, -80, -48, 7, 3, -80, 24, -117, 102, -33,
-78, -78, -98, -45, -28, 115, -117, -27, 44, 95, -107, 121, 51, 98, 94, 81, 53, -40, -15, -63,
90, 15, -23, 84, -67, 18, 61, 35, -81, -46, -63, 113, -30, -71, -58, 106, 107, -18, -65, -98,
43, 11, -55, -44, -31, 113, 1, -24, -14, 35, -28, 51, -66, -74, -15, -112, 112, 62, -80, -38,
-106, -126, -74, -114, 29, 51, 59, -29, 115, -115, -63, 74, -19, 59, 12, 109, Byte.MAX_VALUE, -53, -88, -3,
-4, -125, -39, -93, -97, -38, 90, -55, 83, -94, -7, -62, 114, -58, -27, -70, -54, -68, -105, -18,
-8, -13, -61, 25, -86, -102, -114, 19, 74, -35, 41, 57, -1, -73, 81, -107, -7, -32, 109, -95,
111, 108, 59, -15, -17, -53, -4, -91, -104, 71, -84, -114, 58, -7, 77, -34, -28, 62, -2, -125,
39, -66, -107, -83, 42, 55, 24, 76, -50, 48, 91, -38, -93, -63, -7, -77, -63, -88, 41, -54,
125, 119, -54, -32, 63, -7, 79, -53, -6, -6, 2, -33, 105, -27, 29, -85, 93, -84, -18, 100,
105, 113, -34, -42, -59, -117, -33, 112, -58, -72, -56, -74, 24, -2, -94, -13, -25, -59, -117, -77,
-14, -118, 75, 43, -21, -102, 5, -111, 76, 97, 96, -7, 72, 72, 88, 18, -106, -124, 37, 97,
73, 88, 18, -106, 20, 18, -106, -124, 37, 97, 73, 88, 18, -106, -124, 37, -123, -124, 37, 97,
73, 88, 18, -106, -124, 37, 97, 73, 33, 97, 73, 88, 18, -106, -124, -27, 75, -15, -1, 58,
-37, -102, -15, 114, -81, 89, -22, 0, 0, 0, 0, 73, 69, 78, 68, -82, 66, 96, -126 };
}

75
Day 19/decode.py Normal file

@ -0,0 +1,75 @@
#!/usr/bin/python
# document
# .querySelector('.validate')
# .addEventListener(
# 'click',
# function() {
# var promoCode = document
# .getElementById('promoCode').value;
# var strptr = Module._malloc(promoCode.length + 2);
# Module.writeAsciiToMemory(promoCode, strptr, false);
#
# var retstrptr = Module.ccall('checkPromoCode',
# 'number', [ 'number' ], [ strptr ]);
#
# var retstr = Pointer_stringify(retstrptr);
# document.getElementById("flag").innerHTML = "<h2>Your flag is</h2><p>"
# + retstr + "</p>";
# });
#
# var promoCode = document.getElementById('promoCode').value;
# var retstrptr = Module.ccall('checkPromoCode', 'number', [ 'number' ], [ strptr ]);
# var retstr = Pointer_stringify(retstrptr);
# promoCode = ""
# strptr = [0 for i in range(len(promoCode) + 2)]
# retstr = hex(strptr)
#
#
# if strptr & 3 == 0:
# r2 = trptr
# else
def ascii(h):
return ''.join([chr(int(h[i:i+2], 16)) for i in range(0,len(h),2)])
# def f32(ptr):
gvar_400 = 'F0BC51F36874F2C1' # 8 Bytes
gvar_408 = 'E357D1A08AAB8700' # 8 Bytes
gvar_410 = '2FEB8572F31271DE' # 8 Bytes
gvar_418 = 'ABABA787' # 6 Bytes
gvar_41C = '74FF' # 2 Bytes
gvars = [gvar_400, gvar_408, gvar_410, gvar_418, gvar_41C]
r11 = ''.join(gvars)
r11 = [int(r11[i:i+2], 16) for i in range(0, len(r11), 2)] # 30 Bytes
r22 = [0 for i in range(15)] # 15 Bytes
r33 = "HV18-TRYH-ARDE-RTRY_HARD_ER!!"
input = [0 for i in range(15)] # ???
r44 = 0
r55 = 165
for r59 in range(15):
r60 = input[r59] * r55 + 1337
r44 = input[r59] + r44 + r60
r61 = r60 % 255
r22[r59] = r61
r55 = r61
print(r44)
result = []
for i in range(30):
var142 = r11[i]
var153 = r22[i%15]
result.append(chr(var142 ^ var153))
print(''.join(result))
# F0 ^ r55 = 48

63
Day 19/decode_new.py Normal file

@ -0,0 +1,63 @@
#!/usr/bin/python
gvar_400 = "217A1F180C53651F" # 8 Bytes
gvar_408 = "3D597206213A4104" # 8 Bytes
gvar_410 = "695676183C433A2B" # 8 Bytes
gvar_418 = "41360D" # 3 Bytes
gvar_41C = "745C00" # 3 Bytes
gvar_420 = "690000000D" # 5 Bytes
gvar_428 = "6E00000038" # 5 Bytes
gvar_430 = "370000006F" # 5 Bytes
gvar_438 = "290000006B" # 5 Bytes
gvar_440 = "3600000008" # 5 Bytes
gvar_448 = "1C00000023" # 5 Bytes
gvar_450 = "6F0000006E" # 5 Bytes
gvar_458 = "2E00000000" # 1 Byte
def memcpy(dest, src, offset, len):
for i in range(len):
dest[offset + i] = src[i]
# r22 = char[32]
# r22[0:7] = gvar_400
# r22[8:15] = gvar_408
# r22[16:23] = gvar_410
# r22[24:27] = gvar_418
# r22[28:31] = gvar_41C
# r33 = char[20]
# r33[0:4] = gvar_420
# r33[5:9] = gvar_428
# r33[10:14] = gvar_430
# r33[15:19] = gvar_438
# r33[8:12] = gvar_440
# r33[10:14] = gvar_448
# r33[12:16] = gvar_450
# r33[14:18] = gvar_458
# r42 = "HV18-TRYH-ARDE-RTRY_HARD_ER!!"
r22 = ["0" for i in range(32)]
r33 = ["0" for i in range(20)]
r42 = "HV18-TRYH-ARDE-RTRY_HARD_ER!!"
input = 0
memcpy(r22, gvar_400, 0, 8)
memcpy(r22, gvar_408, 8, 8)
memcpy(r22, gvar_410, 16, 8)
memcpy(r22, gvar_418, 24, 4)
memcpy(r22, gvar_41C, 28, 4)
memcpy(r33, gvar_400, 0, 5)
memcpy(r33, gvar_428, 5, 5)
memcpy(r33, gvar_430, 10, 5)
memcpy(r33, gvar_438, 15, 5)
memcpy(r33, gvar_440, 8, 5)
memcpy(r33, gvar_448, 10, 5)
memcpy(r33, gvar_450, 12, 5)
memcpy(r33, gvar_458, 14, 5)
r3 = 0
for r43 in range(0, 15):
if

Binary file not shown.

Binary file not shown.

BIN
Day 19/promo.id0 Normal file

Binary file not shown.

BIN
Day 19/promo.id1 Normal file

Binary file not shown.

2488
Day 19/promo.js Normal file

File diff suppressed because it is too large Load Diff

BIN
Day 19/promo.nam Normal file

Binary file not shown.

BIN
Day 19/promo.til Normal file

Binary file not shown.

BIN
Day 19/promo.wasm Normal file

Binary file not shown.

BIN
Day 19/promo_new.wasm Normal file

Binary file not shown.

5
Day 19/test.cpp Normal file

@ -0,0 +1,5 @@
int main() {
unsigned int i = 10;
unsigned int *par0 = &i;
int r3 = (int)par0;
}

BIN
Day 20/HaRdvent.id0 Normal file

Binary file not shown.

BIN
Day 20/HaRdvent.id1 Normal file

Binary file not shown.

BIN
Day 20/HaRdvent.nam Normal file

Binary file not shown.

BIN
Day 20/HaRdvent.nro Normal file

Binary file not shown.

BIN
Day 20/HaRdvent.til Normal file

Binary file not shown.

10
Day 20/decode.py Normal file

@ -0,0 +1,10 @@
#!/usr/bin/python
encrypted = "f42df92b389fffca59598465c7a51d36082ecfea567a900e5eac9e5e9fb1"
print((0xF4 - 0x48) % 256)
print((0x2D - 0x56) % 256)
print((0xf9 - 0x31) % 256)
print((0x2b - 0x38) % 256)
print(len(encrypted))

BIN
Day 20/exctracted.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.