import java.util.*;
import java.lang.*;
import java.io.*;
import java.util.Scanner;
class Ideone
{
{
Scanner sc
= new Scanner
(System.
in); System.
out.
println("Translating phrase..."); String phrase
= sc.
nextLine();
//Map<String, String> m = getDictionary(false); // Translate Maren phrase to English
Map
<String, String
> m
= getDictionary
(); // Translate English phrase to Maren translate(phrase, m);
}
public static Map
<String, String
> getDictionary
() { return getDictionary(true);
}
public static Map
<String, String
> getDictionary
(boolean useEnglishKey
) {
String[] dictionary
= { "again",
"po",
"air",
"vellak",
"all",
"buurd",
"allow",
"lax",
"alteror",
"dipi",
"amulet",
"bacca",
"and",
"en",
"and",
"ulp",
"anger",
"grrth",
"antidote",
"'dote",
"any",
"prak",
"aoe",
"resancae",
"art",
"maxtrik",
"artifact",
"hruril",
"as",
"aw",
"at",
"ek",
"attack",
"pantz",
"attacks",
"attakjsks",
"avatar",
"aviktra",
"avoid",
"gwelf",
"away",
"vorasha",
"back",
"anti",
"bad",
"puuu",
"bane",
"xizjkama",
"banish",
"vzedk",
"battlewaker",
"dargonn",
"be",
"sba",
"because",
"ngig",
"become",
"gnetam",
"betray",
"betrasis",
"blade",
"honl",
"bloody",
"vyoovs",
"blue",
"scyla",
"bring",
"efron",
"but",
"xup",
"can",
"wepz",
"care",
"ventil",
"chakram",
"pow-itake",
"chamele",
"ulvsuti",
"change",
"volu",
"chaos",
"choa",
"charm",
"pow-sees",
"circle",
"spira",
"city",
"spira-arc",
"clothes",
"jeoktl",
"codex",
"apo",
"collapse",
"kipaktra",
"collapsed",
"kapuxtra",
"comes",
"coatm",
"coming",
"cmag",
"consume",
"ztaglin",
"cookie",
"coogie",
"corrupt",
"calpurs",
"counts",
"xnombo",
"crest",
"hyzta",
"crime",
"jiffl",
"crystal",
"beso",
"curse",
"guexe",
"dance",
"ladhe",
"dark",
"nocgofp",
"darkmare",
"kotoke",
"daughter",
"beanfon",
"day",
"solbex",
"daymare",
"datoke",
"death",
"klatr",
"destroy",
"ztath",
"disappear/evaporate/fire/destroyer",
"ztatha",
"diamond",
"tyhtni",
"die",
"frrgth",
"difference",
"dsis",
"do",
"prnaf",
"dol",
"lum",
"drain",
"eobek",
"dreamer",
"eovoc",
"duel",
"contrk",
"earn",
"kiptotik",
"earth",
"elo",
"eat",
"gobolo",
"eclipse",
"'klips",
"egg",
"zaaaa",
"ehhh",
"fff",
"eight",
"pln",
"elemen",
"petha",
"enemy",
"omono",
"enhance",
"ehaknce",
"essence",
"ekonu",
"essences",
"ekonus",
"every",
"eheh",
"everyone",
"eheheoke",
"everywhere",
"ehehvdere",
"evil",
"uuura",
"evoke",
"flhba",
"expect",
"expacta",
"expects",
"expacts",
"eye",
"kata",
"face",
"bvauiq",
"far",
"vzidal",
"female",
"tha",
"fire",
"atsila",
"first",
"prim",
"five",
"gec",
"flame",
"atsila-jospi",
"follow",
"ifnru",
"fool",
"ngi",
"fools",
"ngis",
"for",
"pal",
"four",
"mfln",
"free",
"weeak",
"friend",
"dorfn",
"fun",
"fuma",
"funny",
"kard",
"gen",
"yewvashk",
"girl",
"thama",
"give",
"creeak",
"go",
"voragar",
"good",
"mrul",
"goodbye",
"gagaron",
"gote",
"got",
"great",
"bimrul",
"greet",
"prnaf",
"grins",
"grwij",
"guardian",
"holow",
"halo",
"maxsple",
"hammer",
"smalt-honl",
"happy",
"trefny",
"hat",
"zfan",
"hate",
"odpor",
"have",
"amne",
"hc",
"calor",
"hello",
"aieka",
"help",
"porce",
"here",
"dap",
"hide",
"skryt",
"hide",
"skyrt",
"hit",
"smalt",
"horde",
"arak",
"house",
"ara",
"how",
"pa",
"however",
"ngea",
"hunt",
"ambak",
"hunter",
"kuntra",
"hurt",
"tese",
"if",
"ef",
"imprison",
"qnuasej",
"in",
"in",
"is",
"isis",
"it",
"ejt",
"item",
"itaka",
"items",
"itakas",
"join",
"glu",
"judgement",
"njazk",
"kill",
"carnge",
"know",
"klopa",
"knowledge",
"nawlej",
"koes",
"nocto",
"lack",
"hla",
"lake",
"unadeli",
"lead",
"nhon",
"leave",
"plahka",
"lesson",
"gohwel",
"life",
"ganodu",
"light",
"luminae",
"like",
"niila",
"listen",
"sge",
"longwinded",
"gvilta",
"look",
"ni",
"lose",
"qyno",
"love",
"nula",
"make",
"kipotik",
"male",
"cha",
"many",
"muh",
"mare",
"kotke",
"maren",
"kototke",
"master",
"baka",
"mate",
"iomoc",
"me",
"neki",
"memories",
"eonimus",
"mighty",
"palg",
"near",
"intimni",
"need",
"musit",
"nest",
"payna",
"next",
"kecz",
"night",
"nocowuda",
"nine",
"dok",
"no",
"tzi",
"none",
"nic",
"not",
"tzin",
"now",
"pas",
"of",
"da",
"okdiedokie",
"kie'die",
"old",
"zal",
"on",
"etn",
"one",
"hum",
"oosn",
"lun",
"or",
"bz",
"or",
"e",
"otherwise",
"glbi",
"owner",
"majet",
"parent",
"patriad",
"peace",
"pracie",
"pearl",
"pajnara",
"penis",
"ickna",
"perish",
"flata",
"piss_off",
"kial_otk",
"play",
"dacta",
"poison",
"vnom",
"por",
"solkr",
"portal",
"porl",
"power",
"maxtrika",
"powerful",
"maxtra",
"prepare",
"grrzt",
"prime",
"bimrul-hruril",
"protect",
"yubnub",
"puny",
"putra",
"relative",
"palp",
"release",
"capthk",
"require",
"gross",
"restore",
"resanc",
"return",
"jospi",
"return",
"depax",
"revulsion",
"creeak-goss'na",
"room",
"arc",
"ruler",
"hhref",
"run",
"druh",
"sad",
"smutn",
"same",
"imnk",
"sanctuary",
"kipkge",
"save",
"kimip",
"scared",
"vang",
"scholar",
"vorsate",
"scourge",
"zta-kuntra",
"see",
"zap",
"seneschal",
"hhrak",
"seven",
"jos",
"shield",
"yub-itaka",
"shithead",
"pojo",
"shoot",
"pow",
"sir",
"qqpritzy",
"six",
"nmi",
"small",
"imelv",
"some",
"peco",
"son",
"seplan",
"sorry",
"mathz",
"souls",
"ventils",
"soulsphere",
"nocowle",
"speak",
"rict",
"sphere",
"orbtka",
"stagger",
"shuuk",
"steal",
"krast",
"stop",
"klapka",
"student",
"ashagrie",
"summon",
"sumaxtra",
"swim",
"sphplisch",
"take",
"ktak",
"talk",
"kajna",
"teach",
"lanna",
"teacher",
"dideyohvsgi",
"telescope",
"akatati",
"ten",
"bipl",
"than",
"tajnee",
"thank",
"fak",
"that",
"etok",
"the",
"ny",
"them",
"nek",
"then",
"ne",
"those",
"dos",
"threaten",
"moka",
"three",
"krp",
"tick",
"chuk",
"time",
"dagiawuga",
"to",
"na",
"trade",
"danal",
"trail",
"nvneh",
"trap",
"qufn",
"trash",
"guasata",
"trust",
"kartel",
"two",
"debll",
"understand",
"minit",
"uoc",
"unc",
"wait",
"ceka",
"want",
"wafa",
"ward",
"klamxtexa",
"warrior",
"qntfa",
"was",
"waqa'd",
"water",
"akzur",
"what",
"vdat",
"when",
"vden",
"where",
"vdere",
"why",
"eh",
"will",
"waqa",
"with",
"quop",
"words",
"vakal",
"wounded",
"wouex",
"yall",
"buurdna",
"yes",
"besa",
"you",
"hw",
"young",
"nita",
"aeika",
"hello",
"maren curse",
"kilktok/pliktok",
"aeika neki",
"hello i am",
"afraid",
"vang",
"aeikna heki",
"hello all i am",
"afraid all",
"vangni",
"aeka",
"great mare",
"again",
"foa/fia",
"aekna",
"great mares/respect for mare",
"all",
"burrd/buurd/buuurd",
"aieka",
"hello",
"alteror",
"dipi",
"aiekna",
"hello all",
"amulet",
"bacca",
"ana",
"and",
"and",
"ana/en/mo/ulp",
"anti",
"between/behind",
"antidote",
"'dote",
"apo",
"codex",
"AoE",
"behotew/resancae",
"ara",
"house member/house",
"are you",
"klopta",
"arc",
"room",
"art",
"maxtrik",
"atsala-isopi",
"reward",
"artifact",
"perm-itaka",
"attakisha",
"attack",
"as",
"aw",
"attakjsha",
"attack",
"at",
"nip",
"attakjski",
"attack",
"attack",
"attakisha/attakjsha/attakjska/attaksk",
"attakjsks",
"attacks",
"attacks",
"attaksjsks",
"attaksk",
"attack",
"avatar",
"actrka/axtra/aviktra",
"aviktra",
"avatar",
"avatars",
"axtrka",
"aww",
"as/same",
"away",
"mafsra/vorasha",
"axtra",
"avatar",
"baby",
"xadx",
"axtrka",
"avatars",
"bad",
"pittz",
"bacca",
"amulet",
"be",
"ulp",
"bamra",
"blade",
"become",
"beh",
"bana",
"man",
"befriend",
"efron",
"bapa",
"UoC",
"behind",
"anti",
"baqa",
"beware",
"believe",
"sge",
"beanfon",
"daughter",
"betray",
"betrasis",
"beas",
"yes",
"between",
"anti",
"beex",
"here",
"beware",
"baqa",
"beh",
"become/go",
"beware of our master",
"quop baka/quop baqa",
"behotew",
"AoE",
"blade",
"bamra",
"besa",
"yes",
"blue",
"scyla",
"beso",
"crystal",
"bring",
"vata",
"betrasis",
"betray",
"but",
"xup",
"bigtr",
"DoL",
"can",
"waqa",
"bimrul",
"general",
"care",
"hur/ventil",
"bin",
"that/other",
"caves",
"karnavl",
"bkote",
"OoSM",
"chakram",
"pow-itake",
"bnnti",
"shield",
"chaos",
"chao",
"bnu",
"touch",
"Chaos Eclipse",
"Kao’klips",
"bovar",
"PoR",
"chaotic dreamer",
"paana",
"boxtra",
"GoE",
"charm",
"pow-sees",
"brotew",
"HC",
"chase",
"ophosh",
"buna",
"only",
"Chasm",
"kasm",
"burd",
"all",
"circle",
"spira",
"buurd",
"all",
"closed",
"suti",
"buurdna",
"everything",
"codex",
"apo",
"buuurd",
"all",
"collaspe",
"kipaktra/kipaxtra/zdak",
"cadan",
"mare sect",
"collapsed",
"kapuxtra",
"calor",
"HC",
"come",
"coatm/coatum/vata",
"calpurs",
"why",
"coming",
"cmag",
"carnge",
"kill",
"comrade",
"comatra",
"cekat",
"wait",
"correct",
"monon",
"cha",
"male",
"counts",
"xnombo",
"chao",
"chaos",
"cowardly",
"paan",
"chuk chuk",
"time passes",
"crystal",
"beso",
"chuk",
"tick",
"darkmare",
"kotoke",
"cmag",
"coming",
"dark mares",
"kotovok",
"coatm",
"come",
"daugheter",
"beanfon",
"coatum",
"come",
"death",
"frrgth",
"comaxtra",
"comrade",
"depart",
"depax",
"crange",
"kill",
"die",
"frrgtht/prazah",
"creeak",
"give",
"difference",
"dsis",
"creeak gossna",
"receive",
"different than",
"dsis gntf",
"dacta",
"attack/play",
"disappear/evaporate/fire/destroyer",
"ztatha",
"dami",
"understand",
"DoL",
"bigxtr/lum",
"dantanle",
"Dreamer",
"drain essence",
"eobek",
"danto",
"teach/teacher",
"dread",
"uurg/uuurg",
"da",
"of",
"dream",
"eovov",
"dap",
"here",
"dreamer",
"eokius/eoknu/eovek/eovoc/drayatha",
"dargone",
"gone/ran",
"Dreamer",
"dantanle",
"depax",
"depart/gone",
"dreamer essence",
"ekonu/eoknus/tetta",
"dideyohvsgi",
"teacher",
"earn",
"kipotik/kiptotik",
"dipi",
"alteror",
"eat",
"eakt",
"dorfn",
"friend",
"egg",
"ogv/zaaa",
"dos",
"that/those",
"elemen",
"patha",
"'dote",
"antidote",
"elsewhere",
"vorasha",
"drayatha",
"dreamer",
"enemy",
"omono",
"druh",
"run",
"English",
"eovtoc",
"dsis",
"difference",
"equal",
"nike",
"dsis gntf",
"different than",
"essence",
"edsexoe/esqwex/exequex/exoquex/edoxsove",
"dum",
"two",
"essences",
"exeqcoxe/exes",
"eakt",
"eat",
"disappear/evaporate/fire/destroyer",
"ztatha",
"edoxsover",
"essence",
"everyone",
"buuurdna/eheheoke",
"edsexoe",
"essence",
"everywhere",
"ehehvdere",
"eema",
"sorry",
"evil",
"uura/uuura",
"ef",
"if",
"evoke",
"hyn",
"efron",
"befriend",
"expects",
"expacts",
"eheheoke",
"everyone",
"eye",
"kata",
"ehehvdere",
"everywhere",
"far",
"vsidal/vzidal",
"eh",
"how/why",
"female",
"tha",
"ekonu",
"dreamer essence",
"fight",
"pantz/ztath/prazah",
"ek",
"to",
"fight others",
"ztath",
"elo",
"floor/ground",
"disappear/evaporate/fire/destroyer",
"ztatha",
"en",
"and",
"first",
"kuntra",
"eobek",
"drain essence",
"floor",
"elo",
"eokius",
"dreamer",
"follow",
"ifnru",
"eoknu",
"dreamer/hunter",
"follow me",
"neki ifneu",
"eoknus",
"dreamer essence",
"follower",
"irfnu",
"e",
"or",
"followers",
"irfnuna",
"eovac",
"kill",
"fool",
"pojo/qntf",
"eovek",
"kill",
"for",
"dak/fon/pal",
"eovoc",
"dreamer",
"force restore",
"largnana",
"eovov",
"dream",
"free spirit",
"paana",
"eovtoc",
"English",
"friend",
"dorfn/nowcle/whosti",
"erirfnu",
"leave",
"friend for life",
"whoh",
"esqwex",
"essence",
"from",
"xkoz",
"exeeqcoxe",
"essences",
"front",
"prim",
"exequex",
"essence",
"girl",
"thama",
"exes",
"essences",
"give",
"creeak/jospi/jsopi",
"exoqcoxe",
"essence",
"general",
"bimrul/hruril",
"expacts",
"expects",
"get",
"kipotik",
"fak hw",
"thank you",
"go",
"burjk/voagar/voragar/beh",
"fia",
"again",
"go away",
"nhon",
"flaata",
"perish",
"GoE",
"got/boxtra",
"flata",
"perish",
"gone",
"dargone/depax/mafsra",
"foa",
"again/now",
"good",
"puu",
"fqw",
"small/short",
"good friend",
"whotl/whotsl",
"frrgth",
"death",
"goodbye",
"garagon/goragon/gagaron",
"frrgtht",
"die",
"great mare",
"aeka",
"gagaron",
"goodbye",
"great mares",
"aekna",
"garagon",
"goodbye",
"grin",
"grwij",
"gntf",
"than",
"ground",
"elo",
"gohwel",
"lesson",
"guardian",
"holow",
"goragon",
"leave/goodbye",
"happy",
"shiru",
"got",
"GoE",
"has",
"ha",
"grrth",
"hurt",
"have",
"wala",
"grrzt",
"prepare",
"HC",
"brotew/calor",
"gru",
"with/of",
"hello",
"aeika/aieka",
"grwij",
"grin",
"hello all",
"aeikna/aiekna",
"grzzt",
"prepare",
"hello all/i am",
"aeikna neki",
"guasata",
"reason",
"hello/i am",
"aeika neki",
"guasta",
"things",
"help",
"po'op/porce",
"guok",
"you",
"help all",
"po'opni",
"gvilta",
"long winded",
"here",
"beex/dap/ionon/qufn",
"gyrkth",
"share",
"hide",
"skyrt",
"ha",
"has",
"house",
"kranda/kronda/ara",
"hhref",
"ruler",
"house member",
"ara",
"holow",
"guardian",
"how",
"eh/pa",
"hruril",
"general",
"hunter",
"eoknu",
"hum",
"one",
"hurt",
"pantz",
"hur",
"care",
"hurt/attack",
"grrth",
"hw",
"you",
"i",
"vodo",
"hyn",
"evoke",
"i am",
"neki isis/ulpda",
"ifnru",
"follow",
"i am the mighty",
"palg ulpda isis",
"imkip",
"stay",
"i don't",
"vodo no",
"imnk",
"same",
"i won't",
"ngig",
"iomac",
"mate with/mate",
"if",
"ef/ni",
"iomoc",
"mate with/mate",
"initiate",
"kifflo",
"ionon",
"here",
"is",
"isis/ix",
"irfnu",
"follower",
"item",
"itaka",
"irfnuna",
"follower",
"kill",
"carnge/crange/eovac",
"isis",
"is",
"know",
"klope/knu/kon/nowley/klopra",
"itaka",
"item",
"knowledge",
"nawlej/nowlej",
"itakas",
"take item",
"KoES",
"notco",
"ix",
"is",
"leave",
"gotagon/plahka/erirfnu",
"jospi",
"give",
"lesson",
"gohwel",
"jsopi",
"give/offer",
"let",
"lax",
"kajna",
"speak",
"like",
"nike",
"Kao’klips",
"Chaos Eclipse",
"little",
"putra",
"Kao’klips",
"ChaosEclipse",
"long winded",
"gvilta",
"kapuxtra",
"collapsed",
"look",
"zap",
"karnavl",
"caves",
"looking",
"zapatzk",
"kartel",
"trust",
"love",
"nula/tala",
"kata",
"eye",
"mad",
"pi'ip",
"katoke",
"mare",
"male",
"cha",
"kazm",
"Chasm",
"make",
"kipotik",
"kecz",
"next",
"man",
"bana",
"kifflo",
"initiate",
"mare",
"katoke/kotke",
"kilktok",
"((maren curse))",
"mare sect",
"cadan/satex",
"kipaktra",
"collapse",
"Maren",
"kototke",
"kipaxtra",
"collapse",
"mate",
"iomozc/iomoc",
"kipkge",
"sanctuary",
"me",
"neki",
"kipotik",
"earn/get/make",
"mighty",
"palg/plag",
"kiptotik",
"earn",
"more",
"momo/po",
"kirra",
"yesterday",
"much",
"nonto",
"klapka",
"stop",
"my name is",
"palq ulpda",
"klope",
"know",
"need",
"musit/lax",
"klopra",
"know",
"nest",
"payne",
"klopta",
"are you",
"nevermind",
"tzinna",
"knu",
"know",
"next",
"kecz",
"kon",
"know",
"no",
"nos/tzi",
"korra",
"today",
"none",
"nic",
"kotka",
"mare",
"not",
"tzin",
"kotoke",
"darkmare",
"now",
"foa/pa/pas/nimma",
"kototke",
"maren",
"of",
"da/gru/ti",
"kototvoc",
"the dream",
"offer",
"jsopi",
"kotovok",
"dark mares",
"one",
"hum",
"kranda",
"house",
"only",
"buna",
"krast",
"steal",
"OoSM",
"bkote/lun",
"kronde",
"house",
"open",
"safa",
"krs",
"try",
"or",
"e/mon",
"ktak’d",
"took",
"other",
"bin",
"ktak",
"take",
"owner",
"majet",
"kuntra",
"first",
"parent",
"palp",
"lanna",
"teach",
"peace",
"pariah/pracie/prich",
"largnana",
"force restore/soul evoke",
"perish",
"flaata/flata",
"larng",
"restore",
"plan",
"plad/tese",
"lax",
"let/need",
"play",
"dacta",
"lum",
"DoL",
"poison",
"vnom",
"lun",
"OoSM",
"PoR",
"solkr/bovar",
"mafsra",
"gone/away",
"portal",
"porl",
"majet",
"owner",
"power",
"maxtrik/maxtrika",
"mathzni",
"sorry you all",
"powerful",
"maxtra",
"mathz",
"sorry",
"perpare",
"grrzt/grzzt",
"maxtra",
"powerful",
"protect",
"yubnub",
"maxtrika",
"power/strengthen",
"ran",
"dargone",
"maxtrik",
"power/art",
"reason",
"guasata",
"minit",
"understand",
"receive",
"creeak gossna",
"mo",
"and",
"relative",
"pal/palp",
"moke",
"threaten",
"restore",
"larng/resanc",
"momo",
"more",
"reward",
"atsila-jspoi",
"monon",
"correct",
"room",
"arc",
"mon",
"or",
"ruler",
"hhref",
"musita",
"needs",
"run",
"druh",
"musit",
"need",
"sad",
"smutn",
"mu",
"you",
"safe",
"qufn",
"na",
"the",
"same",
"aw/imnk/nurata",
"neki ifneu",
"follow me",
"sanctuary",
"kipkge",
"neki isis",
"i am",
"see",
"zap",
"neki",
"me",
"share",
"gyrkth",
"ngig",
"i won't",
"shield",
"yub-itaka/bnnti",
"nhon",
"go away",
"short",
"fqw",
"nic",
"none",
"sir/madam",
"qqpritzy",
"nike",
"equal/like",
"small",
"fqw",
"nimma",
"now",
"some",
"peco",
"nip",
"at",
"son",
"seplan",
"nita",
"with",
"sorry",
"eema/mathz",
"ni",
"to/if",
"sorry/you all",
"mathzni",
"nocowle",
"soulsphere",
"soul evoke",
"largnana",
"nowcle",
"friend",
"soulsphere",
"nocwole/nowcowle",
"nowlej",
"knowledge",
"speak",
"rict/vacal/cakal/kajna",
"nowley",
"know",
"stay",
"qufn/imkip",
"nula",
"love",
"steal",
"krast",
"nurata",
"same",
"stop",
"klapka",
"odpor",
"war",
"strengthen",
"maxtrika",
"ogv",
"egg",
"summon",
"sumaxtra",
"omono",
"enemy",
"swim",
"sphplisch",
"ophosh",
"chase",
"swimming",
"schplisching",
"paana",
"free spirit/chaotic dreamer",
"take",
"ktak",
"paan",
"cowardly",
"take item",
"itakas",
"pa",
"how or now",
"teach",
"danto/lanna",
"palg",
"mighty",
"teacher",
"danto/ideyohvsgi",
"palg ulpda isis",
"i am the mighty",
"tell me",
"rict neki",
"palp",
"parent/relative",
"than",
"gntf",
"palq ulpda",
"my name is",
"thank you",
"fak hw",
"pal",
"relative/for",
"that",
"bin/dos",
"pantz",
"fight/hurt",
"the",
"na",
"pariah",
"peace",
"the dream",
"kototvoc/kototvok",
"pas",
"now",
"then",
"ne",
"payna",
"nest",
"things",
"guasta",
"peco",
"some",
"those",
"dos",
"perm-itaka",
"artifact",
"threaten",
"moka",
"petha",
"elemen",
"tick",
"chuk",
"pi'ip",
"mad",
"time",
"dagiawuga",
"pittz",
"bad",
"time passes",
"chuk chuk",
"plad",
"plan",
"to",
"ti/ni/um/ek",
"plag",
"mighty",
"today",
"korra",
"plahka",
"leave",
"took",
"ktak’d",
"pliktok",
"((maren curse))",
"touch",
"bnu",
"pojo",
"fool",
"trust",
"kartel",
"po",
"more",
"try",
"krs",
"po'op",
"help",
"two",
"dum",
"po'opni",
"help all",
"understand",
"dami/minit",
"porce",
"help",
"UoC",
"unc/bapa",
"porl",
"portal",
"voice",
"vacal/vakal",
"pow",
"fire (shoot)",
"wait",
"cekat",
"pow-itake",
"chakram",
"want",
"wafa",
"pow-sees",
"charm",
"war",
"odpor",
"pracie",
"peace",
"was",
"wana",
"prazah",
"die/fight",
"weak",
"puuu",
"prich",
"peace",
"what",
"vdat",
"prim",
"front",
"when",
"vden",
"putra",
"little",
"where",
"vdere",
"puu",
"good",
"why",
"calpurs/eh",
"puuu",
"bad/weak",
"will",
"waga/waka/waqa",
"qntf",
"fool",
"wind",
"wd",
"qqprtzy",
"sir/madam",
"with",
"gru/quop/nita",
"qufn",
"stay/here/safe",
"won’t",
"waqa’d",
"quop baka",
"beware of our master",
"words",
"vacal/vakal",
"quop baqa",
"beware of our master",
"wounded",
"wouex/wovex",
"quop",
"with",
"yes",
"besa/beas/xup",
"resanc",
"restore",
"yesterday",
"kirra",
"rict neki",
"tell me",
"you",
"guok/hw/mu",
"rict",
"speak",
"youth",
"yodth",
"safa",
"open",
"satex",
"mare sect",
"schplisching",
"swimming",
"scyle",
"blue",
"seplan",
"son",
"sge",
"believe",
"shiru",
"happy",
"skyrt",
"hide",
"smutn",
"sad",
"solkr",
"PoR",
"sphplisch",
"swim",
"spira",
"circle",
"sumaxtra",
"summon",
"suti",
"closed",
"tala",
"love",
"tese",
"plan",
"tette",
"dreamer essence",
"tha",
"female",
"thama",
"girl",
"ti",
"to/of",
"tzinna",
"nevermind",
"tzin",
"not/don’t",
"tzi",
"no",
"ulp",
"be/and",
"ulpda",
"i am",
"um",
"to",
"unc",
"UoC",
"uura",
"evil",
"uurg",
"dread",
"uuura",
"evil",
"uuurg",
"dread",
"vacal",
"words/speak/voice",
"vakal",
"words/speak/voice",
"vang",
"afraid",
"vangni",
"afraid all",
"vats",
"come/bring",
"vdat",
"what",
"vden",
"when",
"vdere",
"where",
"ventil",
"care",
"vnom",
"poison",
"voagar",
"go",
"vodo",
"i",
"vodo no",
"i don't",
"voragar",
"go",
"vorasha",
"away/elsewhere",
"vsidal",
"far",
"vzidal",
"far",
"wafa",
"want",
"waga",
"will",
"waka",
"will",
"wala",
"have",
"wana",
"was",
"waqa",
"can/will",
"waqa’d",
"won’t",
"wd",
"wind",
"whoh",
"friend for life",
"whotl",
"good friend",
"whotsi",
"friend",
"whotsl",
"good friend",
"wouex",
"wounded",
"wovex",
"wounded",
"xadx",
"baby",
"xkoz",
"from",
"xnombo",
"counts",
"xup",
"but/yes",
"yodth",
"youth",
"yub-itake",
"shield",
"zaaa",
"egg",
"zapatzk",
"looking",
"zap",
"see/look",
"zdak",
"collapse",
"ztah",
"fight/fight others",
"ztatha",
"disappear/evaporate/fire/destroyer" };
for (int i = 0; i < dictionary.length; i += 2) {
if(useEnglishKey) {
m.put(dictionary[i], dictionary[i + 1]);
} else {
m.put(dictionary[i + 1], dictionary[i]);
}
}
return m;
}
public static void translate
(String textToTranslate, Map
<String, String
> map
) { // Split the text parameter
String[] words
= textToTranslate.
split(" "); List<String> finalStrList = new ArrayList<String>();
// check for the words in the text parameter
if (map.containsKey(word.toLowerCase())) {
// get value
finalStrList.add(map.get(word.toLowerCase()));
} else {
System.
out.
println(String.
format("Could not find key %s", word
)); }
}
for (String w
: finalStrList
) { finalStr += w + " ";
}
System.
out.
println(finalStr.
trim()); }
public static void translateFromMaren
(String textToTranslate, Map
<String, String
> map
) { // Split the text parameter
String[] words
= textToTranslate.
split(" "); List<String> finalStrList = new ArrayList<String>();
// check for the words in the text parameter
if (map.containsValue(word.toLowerCase())) {
// get value
finalStrList.add(map.get(word.toLowerCase()));
}
}
for (String w
: finalStrList
) { finalStr += w + " ";
}
System.
out.
println(finalStr.
trim()); }
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnV0aWwuU2Nhbm5lcjsKCmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCQlTY2FubmVyIHNjID0gbmV3IFNjYW5uZXIoU3lzdGVtLmluKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oIlRyYW5zbGF0aW5nIHBocmFzZS4uLiIpOwoJCVN0cmluZyBwaHJhc2UgPSBzYy5uZXh0TGluZSgpOwoKCQkvL01hcDxTdHJpbmcsIFN0cmluZz4gbSA9IGdldERpY3Rpb25hcnkoZmFsc2UpOyAvLyBUcmFuc2xhdGUgTWFyZW4gcGhyYXNlIHRvIEVuZ2xpc2gKCQlNYXA8U3RyaW5nLCBTdHJpbmc+IG0gPSBnZXREaWN0aW9uYXJ5KCk7IC8vIFRyYW5zbGF0ZSBFbmdsaXNoIHBocmFzZSB0byBNYXJlbgoJCXRyYW5zbGF0ZShwaHJhc2UsIG0pOwoJfQoJCglwdWJsaWMgc3RhdGljIE1hcDxTdHJpbmcsIFN0cmluZz4gZ2V0RGljdGlvbmFyeSgpIHsKCQlyZXR1cm4gZ2V0RGljdGlvbmFyeSh0cnVlKTsKCX0KCglwdWJsaWMgc3RhdGljIE1hcDxTdHJpbmcsIFN0cmluZz4gZ2V0RGljdGlvbmFyeShib29sZWFuIHVzZUVuZ2xpc2hLZXkpIHsKCgkJU3RyaW5nW10gZGljdGlvbmFyeSA9IHsgImFnYWluIiwicG8iLCJhaXIiLCJ2ZWxsYWsiLCJhbGwiLCJidXVyZCIsImFsbG93IiwibGF4IiwiYWx0ZXJvciIsImRpcGkiLCJhbXVsZXQiLCJiYWNjYSIsImFuZCIsImVuIiwiYW5kIiwidWxwIiwiYW5nZXIiLCJncnJ0aCIsImFudGlkb3RlIiwiJ2RvdGUiLCJhbnkiLCJwcmFrIiwiYW9lIiwicmVzYW5jYWUiLCJhcnQiLCJtYXh0cmlrIiwiYXJ0aWZhY3QiLCJocnVyaWwiLCJhcyIsImF3IiwiYXQiLCJlayIsImF0dGFjayIsInBhbnR6IiwiYXR0YWNrcyIsImF0dGFranNrcyIsImF2YXRhciIsImF2aWt0cmEiLCJhdm9pZCIsImd3ZWxmIiwiYXdheSIsInZvcmFzaGEiLCJiYWNrIiwiYW50aSIsImJhZCIsInB1dXUiLCJiYW5lIiwieGl6amthbWEiLCJiYW5pc2giLCJ2emVkayIsImJhdHRsZXdha2VyIiwiZGFyZ29ubiIsImJlIiwic2JhIiwiYmVjYXVzZSIsIm5naWciLCJiZWNvbWUiLCJnbmV0YW0iLCJiZXRyYXkiLCJiZXRyYXNpcyIsImJsYWRlIiwiaG9ubCIsImJsb29keSIsInZ5b292cyIsImJsdWUiLCJzY3lsYSIsImJyaW5nIiwiZWZyb24iLCJidXQiLCJ4dXAiLCJjYW4iLCJ3ZXB6IiwiY2FyZSIsInZlbnRpbCIsImNoYWtyYW0iLCJwb3ctaXRha2UiLCJjaGFtZWxlIiwidWx2c3V0aSIsImNoYW5nZSIsInZvbHUiLCJjaGFvcyIsImNob2EiLCJjaGFybSIsInBvdy1zZWVzIiwiY2lyY2xlIiwic3BpcmEiLCJjaXR5Iiwic3BpcmEtYXJjIiwiY2xvdGhlcyIsImplb2t0bCIsImNvZGV4IiwiYXBvIiwiY29sbGFwc2UiLCJraXBha3RyYSIsImNvbGxhcHNlZCIsImthcHV4dHJhIiwiY29tZXMiLCJjb2F0bSIsImNvbWluZyIsImNtYWciLCJjb25zdW1lIiwienRhZ2xpbiIsImNvb2tpZSIsImNvb2dpZSIsImNvcnJ1cHQiLCJjYWxwdXJzIiwiY291bnRzIiwieG5vbWJvIiwiY3Jlc3QiLCJoeXp0YSIsImNyaW1lIiwiamlmZmwiLCJjcnlzdGFsIiwiYmVzbyIsImN1cnNlIiwiZ3VleGUiLCJkYW5jZSIsImxhZGhlIiwiZGFyayIsIm5vY2dvZnAiLCJkYXJrbWFyZSIsImtvdG9rZSIsImRhdWdodGVyIiwiYmVhbmZvbiIsImRheSIsInNvbGJleCIsImRheW1hcmUiLCJkYXRva2UiLCJkZWF0aCIsImtsYXRyIiwiZGVzdHJveSIsInp0YXRoIiwiZGlzYXBwZWFyL2V2YXBvcmF0ZS9maXJlL2Rlc3Ryb3llciIsInp0YXRoYSIsImRpYW1vbmQiLCJ0eWh0bmkiLCJkaWUiLCJmcnJndGgiLCJkaWZmZXJlbmNlIiwiZHNpcyIsImRvIiwicHJuYWYiLCJkb2wiLCJsdW0iLCJkcmFpbiIsImVvYmVrIiwiZHJlYW1lciIsImVvdm9jIiwiZHVlbCIsImNvbnRyayIsImVhcm4iLCJraXB0b3RpayIsImVhcnRoIiwiZWxvIiwiZWF0IiwiZ29ib2xvIiwiZWNsaXBzZSIsIidrbGlwcyIsImVnZyIsInphYWFhIiwiZWhoaCIsImZmZiIsImVpZ2h0IiwicGxuIiwiZWxlbWVuIiwicGV0aGEiLCJlbmVteSIsIm9tb25vIiwiZW5oYW5jZSIsImVoYWtuY2UiLCJlc3NlbmNlIiwiZWtvbnUiLCJlc3NlbmNlcyIsImVrb251cyIsImV2ZXJ5IiwiZWhlaCIsImV2ZXJ5b25lIiwiZWhlaGVva2UiLCJldmVyeXdoZXJlIiwiZWhlaHZkZXJlIiwiZXZpbCIsInV1dXJhIiwiZXZva2UiLCJmbGhiYSIsImV4cGVjdCIsImV4cGFjdGEiLCJleHBlY3RzIiwiZXhwYWN0cyIsImV5ZSIsImthdGEiLCJmYWNlIiwiYnZhdWlxIiwiZmFyIiwidnppZGFsIiwiZmVtYWxlIiwidGhhIiwiZmlyZSIsImF0c2lsYSIsImZpcnN0IiwicHJpbSIsImZpdmUiLCJnZWMiLCJmbGFtZSIsImF0c2lsYS1qb3NwaSIsImZvbGxvdyIsImlmbnJ1IiwiZm9vbCIsIm5naSIsImZvb2xzIiwibmdpcyIsImZvciIsInBhbCIsImZvdXIiLCJtZmxuIiwiZnJlZSIsIndlZWFrIiwiZnJpZW5kIiwiZG9yZm4iLCJmdW4iLCJmdW1hIiwiZnVubnkiLCJrYXJkIiwiZ2VuIiwieWV3dmFzaGsiLCJnaXJsIiwidGhhbWEiLCJnaXZlIiwiY3JlZWFrIiwiZ28iLCJ2b3JhZ2FyIiwiZ29vZCIsIm1ydWwiLCJnb29kYnllIiwiZ2FnYXJvbiIsImdvdGUiLCJnb3QiLCJncmVhdCIsImJpbXJ1bCIsImdyZWV0IiwicHJuYWYiLCJncmlucyIsImdyd2lqIiwiZ3VhcmRpYW4iLCJob2xvdyIsImhhbG8iLCJtYXhzcGxlIiwiaGFtbWVyIiwic21hbHQtaG9ubCIsImhhcHB5IiwidHJlZm55IiwiaGF0IiwiemZhbiIsImhhdGUiLCJvZHBvciIsImhhdmUiLCJhbW5lIiwiaGMiLCJjYWxvciIsImhlbGxvIiwiYWlla2EiLCJoZWxwIiwicG9yY2UiLCJoZXJlIiwiZGFwIiwiaGlkZSIsInNrcnl0IiwiaGlkZSIsInNreXJ0IiwiaGl0Iiwic21hbHQiLCJob3JkZSIsImFyYWsiLCJob3VzZSIsImFyYSIsImhvdyIsInBhIiwiaG93ZXZlciIsIm5nZWEiLCJodW50IiwiYW1iYWsiLCJodW50ZXIiLCJrdW50cmEiLCJodXJ0IiwidGVzZSIsImlmIiwiZWYiLCJpbXByaXNvbiIsInFudWFzZWoiLCJpbiIsImluIiwiaXMiLCJpc2lzIiwiaXQiLCJlanQiLCJpdGVtIiwiaXRha2EiLCJpdGVtcyIsIml0YWthcyIsImpvaW4iLCJnbHUiLCJqdWRnZW1lbnQiLCJuamF6ayIsImtpbGwiLCJjYXJuZ2UiLCJrbm93Iiwia2xvcGEiLCJrbm93bGVkZ2UiLCJuYXdsZWoiLCJrb2VzIiwibm9jdG8iLCJsYWNrIiwiaGxhIiwibGFrZSIsInVuYWRlbGkiLCJsZWFkIiwibmhvbiIsImxlYXZlIiwicGxhaGthIiwibGVzc29uIiwiZ29od2VsIiwibGlmZSIsImdhbm9kdSIsImxpZ2h0IiwibHVtaW5hZSIsImxpa2UiLCJuaWlsYSIsImxpc3RlbiIsInNnZSIsImxvbmd3aW5kZWQiLCJndmlsdGEiLCJsb29rIiwibmkiLCJsb3NlIiwicXlubyIsImxvdmUiLCJudWxhIiwibWFrZSIsImtpcG90aWsiLCJtYWxlIiwiY2hhIiwibWFueSIsIm11aCIsIm1hcmUiLCJrb3RrZSIsIm1hcmVuIiwia290b3RrZSIsIm1hc3RlciIsImJha2EiLCJtYXRlIiwiaW9tb2MiLCJtZSIsIm5la2kiLCJtZW1vcmllcyIsImVvbmltdXMiLCJtaWdodHkiLCJwYWxnIiwibmVhciIsImludGltbmkiLCJuZWVkIiwibXVzaXQiLCJuZXN0IiwicGF5bmEiLCJuZXh0Iiwia2VjeiIsIm5pZ2h0Iiwibm9jb3d1ZGEiLCJuaW5lIiwiZG9rIiwibm8iLCJ0emkiLCJub25lIiwibmljIiwibm90IiwidHppbiIsIm5vdyIsInBhcyIsIm9mIiwiZGEiLCJva2RpZWRva2llIiwia2llJ2RpZSIsIm9sZCIsInphbCIsIm9uIiwiZXRuIiwib25lIiwiaHVtIiwib29zbiIsImx1biIsIm9yIiwiYnoiLCJvciIsImUiLCJvdGhlcndpc2UiLCJnbGJpIiwib3duZXIiLCJtYWpldCIsInBhcmVudCIsInBhdHJpYWQiLCJwZWFjZSIsInByYWNpZSIsInBlYXJsIiwicGFqbmFyYSIsInBlbmlzIiwiaWNrbmEiLCJwZXJpc2giLCJmbGF0YSIsInBpc3Nfb2ZmIiwia2lhbF9vdGsiLCJwbGF5IiwiZGFjdGEiLCJwb2lzb24iLCJ2bm9tIiwicG9yIiwic29sa3IiLCJwb3J0YWwiLCJwb3JsIiwicG93ZXIiLCJtYXh0cmlrYSIsInBvd2VyZnVsIiwibWF4dHJhIiwicHJlcGFyZSIsImdycnp0IiwicHJpbWUiLCJiaW1ydWwtaHJ1cmlsIiwicHJvdGVjdCIsInl1Ym51YiIsInB1bnkiLCJwdXRyYSIsInJlbGF0aXZlIiwicGFscCIsInJlbGVhc2UiLCJjYXB0aGsiLCJyZXF1aXJlIiwiZ3Jvc3MiLCJyZXN0b3JlIiwicmVzYW5jIiwicmV0dXJuIiwiam9zcGkiLCJyZXR1cm4iLCJkZXBheCIsInJldnVsc2lvbiIsImNyZWVhay1nb3NzJ25hIiwicm9vbSIsImFyYyIsInJ1bGVyIiwiaGhyZWYiLCJydW4iLCJkcnVoIiwic2FkIiwic211dG4iLCJzYW1lIiwiaW1uayIsInNhbmN0dWFyeSIsImtpcGtnZSIsInNhdmUiLCJraW1pcCIsInNjYXJlZCIsInZhbmciLCJzY2hvbGFyIiwidm9yc2F0ZSIsInNjb3VyZ2UiLCJ6dGEta3VudHJhIiwic2VlIiwiemFwIiwic2VuZXNjaGFsIiwiaGhyYWsiLCJzZXZlbiIsImpvcyIsInNoaWVsZCIsInl1Yi1pdGFrYSIsInNoaXRoZWFkIiwicG9qbyIsInNob290IiwicG93Iiwic2lyIiwicXFwcml0enkiLCJzaXgiLCJubWkiLCJzbWFsbCIsImltZWx2Iiwic29tZSIsInBlY28iLCJzb24iLCJzZXBsYW4iLCJzb3JyeSIsIm1hdGh6Iiwic291bHMiLCJ2ZW50aWxzIiwic291bHNwaGVyZSIsIm5vY293bGUiLCJzcGVhayIsInJpY3QiLCJzcGhlcmUiLCJvcmJ0a2EiLCJzdGFnZ2VyIiwic2h1dWsiLCJzdGVhbCIsImtyYXN0Iiwic3RvcCIsImtsYXBrYSIsInN0dWRlbnQiLCJhc2hhZ3JpZSIsInN1bW1vbiIsInN1bWF4dHJhIiwic3dpbSIsInNwaHBsaXNjaCIsInRha2UiLCJrdGFrIiwidGFsayIsImtham5hIiwidGVhY2giLCJsYW5uYSIsInRlYWNoZXIiLCJkaWRleW9odnNnaSIsInRlbGVzY29wZSIsImFrYXRhdGkiLCJ0ZW4iLCJiaXBsIiwidGhhbiIsInRham5lZSIsInRoYW5rIiwiZmFrIiwidGhhdCIsImV0b2siLCJ0aGUiLCJueSIsInRoZW0iLCJuZWsiLCJ0aGVuIiwibmUiLCJ0aG9zZSIsImRvcyIsInRocmVhdGVuIiwibW9rYSIsInRocmVlIiwia3JwIiwidGljayIsImNodWsiLCJ0aW1lIiwiZGFnaWF3dWdhIiwidG8iLCJuYSIsInRyYWRlIiwiZGFuYWwiLCJ0cmFpbCIsIm52bmVoIiwidHJhcCIsInF1Zm4iLCJ0cmFzaCIsImd1YXNhdGEiLCJ0cnVzdCIsImthcnRlbCIsInR3byIsImRlYmxsIiwidW5kZXJzdGFuZCIsIm1pbml0IiwidW9jIiwidW5jIiwid2FpdCIsImNla2EiLCJ3YW50Iiwid2FmYSIsIndhcmQiLCJrbGFteHRleGEiLCJ3YXJyaW9yIiwicW50ZmEiLCJ3YXMiLCJ3YXFhJ2QiLCJ3YXRlciIsImFrenVyIiwid2hhdCIsInZkYXQiLCJ3aGVuIiwidmRlbiIsIndoZXJlIiwidmRlcmUiLCJ3aHkiLCJlaCIsIndpbGwiLCJ3YXFhIiwid2l0aCIsInF1b3AiLCJ3b3JkcyIsInZha2FsIiwid291bmRlZCIsIndvdWV4IiwieWFsbCIsImJ1dXJkbmEiLCJ5ZXMiLCJiZXNhIiwieW91IiwiaHciLCJ5b3VuZyIsIm5pdGEiLCJhZWlrYSIsImhlbGxvIiwibWFyZW4gY3Vyc2UiLCJraWxrdG9rL3BsaWt0b2siLCJhZWlrYSBuZWtpIiwiaGVsbG8gaSBhbSIsImFmcmFpZCIsInZhbmciLCJhZWlrbmEgaGVraSIsImhlbGxvIGFsbCBpIGFtIiwiYWZyYWlkIGFsbCIsInZhbmduaSIsImFla2EiLCJncmVhdCBtYXJlIiwiYWdhaW4iLCJmb2EvZmlhIiwiYWVrbmEiLCJncmVhdCBtYXJlcy9yZXNwZWN0IGZvciBtYXJlIiwiYWxsIiwiYnVycmQvYnV1cmQvYnV1dXJkIiwiYWlla2EiLCJoZWxsbyIsImFsdGVyb3IiLCJkaXBpIiwiYWlla25hIiwiaGVsbG8gYWxsIiwiYW11bGV0IiwiYmFjY2EiLCJhbmEiLCJhbmQiLCJhbmQiLCJhbmEvZW4vbW8vdWxwIiwiYW50aSIsImJldHdlZW4vYmVoaW5kIiwiYW50aWRvdGUiLCInZG90ZSIsImFwbyIsImNvZGV4IiwiQW9FIiwiYmVob3Rldy9yZXNhbmNhZSIsImFyYSIsImhvdXNlIG1lbWJlci9ob3VzZSIsImFyZSB5b3UiLCJrbG9wdGEiLCJhcmMiLCJyb29tIiwiYXJ0IiwibWF4dHJpayIsImF0c2FsYS1pc29waSIsInJld2FyZCIsImFydGlmYWN0IiwicGVybS1pdGFrYSIsImF0dGFraXNoYSIsImF0dGFjayIsImFzIiwiYXciLCJhdHRha2pzaGEiLCJhdHRhY2siLCJhdCIsIm5pcCIsImF0dGFranNraSIsImF0dGFjayIsImF0dGFjayIsImF0dGFraXNoYS9hdHRha2pzaGEvYXR0YWtqc2thL2F0dGFrc2siLCJhdHRha2pza3MiLCJhdHRhY2tzIiwiYXR0YWNrcyIsImF0dGFrc2pza3MiLCJhdHRha3NrIiwiYXR0YWNrIiwiYXZhdGFyIiwiYWN0cmthL2F4dHJhL2F2aWt0cmEiLCJhdmlrdHJhIiwiYXZhdGFyIiwiYXZhdGFycyIsImF4dHJrYSIsImF3dyIsImFzL3NhbWUiLCJhd2F5IiwibWFmc3JhL3ZvcmFzaGEiLCJheHRyYSIsImF2YXRhciIsImJhYnkiLCJ4YWR4IiwiYXh0cmthIiwiYXZhdGFycyIsImJhZCIsInBpdHR6IiwiYmFjY2EiLCJhbXVsZXQiLCJiZSIsInVscCIsImJhbXJhIiwiYmxhZGUiLCJiZWNvbWUiLCJiZWgiLCJiYW5hIiwibWFuIiwiYmVmcmllbmQiLCJlZnJvbiIsImJhcGEiLCJVb0MiLCJiZWhpbmQiLCJhbnRpIiwiYmFxYSIsImJld2FyZSIsImJlbGlldmUiLCJzZ2UiLCJiZWFuZm9uIiwiZGF1Z2h0ZXIiLCJiZXRyYXkiLCJiZXRyYXNpcyIsImJlYXMiLCJ5ZXMiLCJiZXR3ZWVuIiwiYW50aSIsImJlZXgiLCJoZXJlIiwiYmV3YXJlIiwiYmFxYSIsImJlaCIsImJlY29tZS9nbyIsImJld2FyZSBvZiBvdXIgbWFzdGVyIiwicXVvcCBiYWthL3F1b3AgYmFxYSIsImJlaG90ZXciLCJBb0UiLCJibGFkZSIsImJhbXJhIiwiYmVzYSIsInllcyIsImJsdWUiLCJzY3lsYSIsImJlc28iLCJjcnlzdGFsIiwiYnJpbmciLCJ2YXRhIiwiYmV0cmFzaXMiLCJiZXRyYXkiLCJidXQiLCJ4dXAiLCJiaWd0ciIsIkRvTCIsImNhbiIsIndhcWEiLCJiaW1ydWwiLCJnZW5lcmFsIiwiY2FyZSIsImh1ci92ZW50aWwiLCJiaW4iLCJ0aGF0L290aGVyIiwiY2F2ZXMiLCJrYXJuYXZsIiwiYmtvdGUiLCJPb1NNIiwiY2hha3JhbSIsInBvdy1pdGFrZSIsImJubnRpIiwic2hpZWxkIiwiY2hhb3MiLCJjaGFvIiwiYm51IiwidG91Y2giLCJDaGFvcyBFY2xpcHNlIiwiS2Fv4oCZa2xpcHMiLCJib3ZhciIsIlBvUiIsImNoYW90aWMgZHJlYW1lciIsInBhYW5hIiwiYm94dHJhIiwiR29FIiwiY2hhcm0iLCJwb3ctc2VlcyIsImJyb3RldyIsIkhDIiwiY2hhc2UiLCJvcGhvc2giLCJidW5hIiwib25seSIsIkNoYXNtIiwia2FzbSIsImJ1cmQiLCJhbGwiLCJjaXJjbGUiLCJzcGlyYSIsImJ1dXJkIiwiYWxsIiwiY2xvc2VkIiwic3V0aSIsImJ1dXJkbmEiLCJldmVyeXRoaW5nIiwiY29kZXgiLCJhcG8iLCJidXV1cmQiLCJhbGwiLCJjb2xsYXNwZSIsImtpcGFrdHJhL2tpcGF4dHJhL3pkYWsiLCJjYWRhbiIsIm1hcmUgc2VjdCIsImNvbGxhcHNlZCIsImthcHV4dHJhIiwiY2Fsb3IiLCJIQyIsImNvbWUiLCJjb2F0bS9jb2F0dW0vdmF0YSIsImNhbHB1cnMiLCJ3aHkiLCJjb21pbmciLCJjbWFnIiwiY2FybmdlIiwia2lsbCIsImNvbXJhZGUiLCJjb21hdHJhIiwiY2VrYXQiLCJ3YWl0IiwiY29ycmVjdCIsIm1vbm9uIiwiY2hhIiwibWFsZSIsImNvdW50cyIsInhub21ibyIsImNoYW8iLCJjaGFvcyIsImNvd2FyZGx5IiwicGFhbiIsImNodWsgY2h1ayIsInRpbWUgcGFzc2VzIiwiY3J5c3RhbCIsImJlc28iLCJjaHVrIiwidGljayIsImRhcmttYXJlIiwia290b2tlIiwiY21hZyIsImNvbWluZyIsImRhcmsgbWFyZXMiLCJrb3Rvdm9rIiwiY29hdG0iLCJjb21lIiwiZGF1Z2hldGVyIiwiYmVhbmZvbiIsImNvYXR1bSIsImNvbWUiLCJkZWF0aCIsImZycmd0aCIsImNvbWF4dHJhIiwiY29tcmFkZSIsImRlcGFydCIsImRlcGF4IiwiY3JhbmdlIiwia2lsbCIsImRpZSIsImZycmd0aHQvcHJhemFoIiwiY3JlZWFrIiwiZ2l2ZSIsImRpZmZlcmVuY2UiLCJkc2lzIiwiY3JlZWFrIGdvc3NuYSIsInJlY2VpdmUiLCJkaWZmZXJlbnQgdGhhbiIsImRzaXMgZ250ZiIsImRhY3RhIiwiYXR0YWNrL3BsYXkiLCJkaXNhcHBlYXIvZXZhcG9yYXRlL2ZpcmUvZGVzdHJveWVyIiwienRhdGhhIiwiZGFtaSIsInVuZGVyc3RhbmQiLCJEb0wiLCJiaWd4dHIvbHVtIiwiZGFudGFubGUiLCJEcmVhbWVyIiwiZHJhaW4gZXNzZW5jZSIsImVvYmVrIiwiZGFudG8iLCJ0ZWFjaC90ZWFjaGVyIiwiZHJlYWQiLCJ1dXJnL3V1dXJnIiwiZGEiLCJvZiIsImRyZWFtIiwiZW92b3YiLCJkYXAiLCJoZXJlIiwiZHJlYW1lciIsImVva2l1cy9lb2tudS9lb3Zlay9lb3ZvYy9kcmF5YXRoYSIsImRhcmdvbmUiLCJnb25lL3JhbiIsIkRyZWFtZXIiLCJkYW50YW5sZSIsImRlcGF4IiwiZGVwYXJ0L2dvbmUiLCJkcmVhbWVyIGVzc2VuY2UiLCJla29udS9lb2tudXMvdGV0dGEiLCJkaWRleW9odnNnaSIsInRlYWNoZXIiLCJlYXJuIiwia2lwb3Rpay9raXB0b3RpayIsImRpcGkiLCJhbHRlcm9yIiwiZWF0IiwiZWFrdCIsImRvcmZuIiwiZnJpZW5kIiwiZWdnIiwib2d2L3phYWEiLCJkb3MiLCJ0aGF0L3Rob3NlIiwiZWxlbWVuIiwicGF0aGEiLCInZG90ZSIsImFudGlkb3RlIiwiZWxzZXdoZXJlIiwidm9yYXNoYSIsImRyYXlhdGhhIiwiZHJlYW1lciIsImVuZW15Iiwib21vbm8iLCJkcnVoIiwicnVuIiwiRW5nbGlzaCIsImVvdnRvYyIsImRzaXMiLCJkaWZmZXJlbmNlIiwiZXF1YWwiLCJuaWtlIiwiZHNpcyBnbnRmIiwiZGlmZmVyZW50IHRoYW4iLCJlc3NlbmNlIiwiZWRzZXhvZS9lc3F3ZXgvZXhlcXVleC9leG9xdWV4L2Vkb3hzb3ZlIiwiZHVtIiwidHdvIiwiZXNzZW5jZXMiLCJleGVxY294ZS9leGVzIiwiZWFrdCIsImVhdCIsImRpc2FwcGVhci9ldmFwb3JhdGUvZmlyZS9kZXN0cm95ZXIiLCJ6dGF0aGEiLCJlZG94c292ZXIiLCJlc3NlbmNlIiwiZXZlcnlvbmUiLCJidXV1cmRuYS9laGVoZW9rZSIsImVkc2V4b2UiLCJlc3NlbmNlIiwiZXZlcnl3aGVyZSIsImVoZWh2ZGVyZSIsImVlbWEiLCJzb3JyeSIsImV2aWwiLCJ1dXJhL3V1dXJhIiwiZWYiLCJpZiIsImV2b2tlIiwiaHluIiwiZWZyb24iLCJiZWZyaWVuZCIsImV4cGVjdHMiLCJleHBhY3RzIiwiZWhlaGVva2UiLCJldmVyeW9uZSIsImV5ZSIsImthdGEiLCJlaGVodmRlcmUiLCJldmVyeXdoZXJlIiwiZmFyIiwidnNpZGFsL3Z6aWRhbCIsImVoIiwiaG93L3doeSIsImZlbWFsZSIsInRoYSIsImVrb251IiwiZHJlYW1lciBlc3NlbmNlIiwiZmlnaHQiLCJwYW50ei96dGF0aC9wcmF6YWgiLCJlayIsInRvIiwiZmlnaHQgb3RoZXJzIiwienRhdGgiLCJlbG8iLCJmbG9vci9ncm91bmQiLCJkaXNhcHBlYXIvZXZhcG9yYXRlL2ZpcmUvZGVzdHJveWVyIiwienRhdGhhIiwiZW4iLCJhbmQiLCJmaXJzdCIsImt1bnRyYSIsImVvYmVrIiwiZHJhaW4gZXNzZW5jZSIsImZsb29yIiwiZWxvIiwiZW9raXVzIiwiZHJlYW1lciIsImZvbGxvdyIsImlmbnJ1IiwiZW9rbnUiLCJkcmVhbWVyL2h1bnRlciIsImZvbGxvdyBtZSIsIm5la2kgaWZuZXUiLCJlb2tudXMiLCJkcmVhbWVyIGVzc2VuY2UiLCJmb2xsb3dlciIsImlyZm51IiwiZSIsIm9yIiwiZm9sbG93ZXJzIiwiaXJmbnVuYSIsImVvdmFjIiwia2lsbCIsImZvb2wiLCJwb2pvL3FudGYiLCJlb3ZlayIsImtpbGwiLCJmb3IiLCJkYWsvZm9uL3BhbCIsImVvdm9jIiwiZHJlYW1lciIsImZvcmNlIHJlc3RvcmUiLCJsYXJnbmFuYSIsImVvdm92IiwiZHJlYW0iLCJmcmVlIHNwaXJpdCIsInBhYW5hIiwiZW92dG9jIiwiRW5nbGlzaCIsImZyaWVuZCIsImRvcmZuL25vd2NsZS93aG9zdGkiLCJlcmlyZm51IiwibGVhdmUiLCJmcmllbmQgZm9yIGxpZmUiLCJ3aG9oIiwiZXNxd2V4IiwiZXNzZW5jZSIsImZyb20iLCJ4a296IiwiZXhlZXFjb3hlIiwiZXNzZW5jZXMiLCJmcm9udCIsInByaW0iLCJleGVxdWV4IiwiZXNzZW5jZSIsImdpcmwiLCJ0aGFtYSIsImV4ZXMiLCJlc3NlbmNlcyIsImdpdmUiLCJjcmVlYWsvam9zcGkvanNvcGkiLCJleG9xY294ZSIsImVzc2VuY2UiLCJnZW5lcmFsIiwiYmltcnVsL2hydXJpbCIsImV4cGFjdHMiLCJleHBlY3RzIiwiZ2V0Iiwia2lwb3RpayIsImZhayBodyIsInRoYW5rIHlvdSIsImdvIiwiYnVyamsvdm9hZ2FyL3ZvcmFnYXIvYmVoIiwiZmlhIiwiYWdhaW4iLCJnbyBhd2F5IiwibmhvbiIsImZsYWF0YSIsInBlcmlzaCIsIkdvRSIsImdvdC9ib3h0cmEiLCJmbGF0YSIsInBlcmlzaCIsImdvbmUiLCJkYXJnb25lL2RlcGF4L21hZnNyYSIsImZvYSIsImFnYWluL25vdyIsImdvb2QiLCJwdXUiLCJmcXciLCJzbWFsbC9zaG9ydCIsImdvb2QgZnJpZW5kIiwid2hvdGwvd2hvdHNsIiwiZnJyZ3RoIiwiZGVhdGgiLCJnb29kYnllIiwiZ2FyYWdvbi9nb3JhZ29uL2dhZ2Fyb24iLCJmcnJndGh0IiwiZGllIiwiZ3JlYXQgbWFyZSIsImFla2EiLCJnYWdhcm9uIiwiZ29vZGJ5ZSIsImdyZWF0IG1hcmVzIiwiYWVrbmEiLCJnYXJhZ29uIiwiZ29vZGJ5ZSIsImdyaW4iLCJncndpaiIsImdudGYiLCJ0aGFuIiwiZ3JvdW5kIiwiZWxvIiwiZ29od2VsIiwibGVzc29uIiwiZ3VhcmRpYW4iLCJob2xvdyIsImdvcmFnb24iLCJsZWF2ZS9nb29kYnllIiwiaGFwcHkiLCJzaGlydSIsImdvdCIsIkdvRSIsImhhcyIsImhhIiwiZ3JydGgiLCJodXJ0IiwiaGF2ZSIsIndhbGEiLCJncnJ6dCIsInByZXBhcmUiLCJIQyIsImJyb3Rldy9jYWxvciIsImdydSIsIndpdGgvb2YiLCJoZWxsbyIsImFlaWthL2FpZWthIiwiZ3J3aWoiLCJncmluIiwiaGVsbG8gYWxsIiwiYWVpa25hL2FpZWtuYSIsImdyenp0IiwicHJlcGFyZSIsImhlbGxvIGFsbC9pIGFtIiwiYWVpa25hIG5la2kiLCJndWFzYXRhIiwicmVhc29uIiwiaGVsbG8vaSBhbSIsImFlaWthIG5la2kiLCJndWFzdGEiLCJ0aGluZ3MiLCJoZWxwIiwicG8nb3AvcG9yY2UiLCJndW9rIiwieW91IiwiaGVscCBhbGwiLCJwbydvcG5pIiwiZ3ZpbHRhIiwibG9uZyB3aW5kZWQiLCJoZXJlIiwiYmVleC9kYXAvaW9ub24vcXVmbiIsImd5cmt0aCIsInNoYXJlIiwiaGlkZSIsInNreXJ0IiwiaGEiLCJoYXMiLCJob3VzZSIsImtyYW5kYS9rcm9uZGEvYXJhIiwiaGhyZWYiLCJydWxlciIsImhvdXNlIG1lbWJlciIsImFyYSIsImhvbG93IiwiZ3VhcmRpYW4iLCJob3ciLCJlaC9wYSIsImhydXJpbCIsImdlbmVyYWwiLCJodW50ZXIiLCJlb2tudSIsImh1bSIsIm9uZSIsImh1cnQiLCJwYW50eiIsImh1ciIsImNhcmUiLCJodXJ0L2F0dGFjayIsImdycnRoIiwiaHciLCJ5b3UiLCJpIiwidm9kbyIsImh5biIsImV2b2tlIiwiaSBhbSIsIm5la2kgaXNpcy91bHBkYSIsImlmbnJ1IiwiZm9sbG93IiwiaSBhbSB0aGUgbWlnaHR5IiwicGFsZyB1bHBkYSBpc2lzIiwiaW1raXAiLCJzdGF5IiwiaSBkb24ndCIsInZvZG8gbm8iLCJpbW5rIiwic2FtZSIsImkgd29uJ3QiLCJuZ2lnIiwiaW9tYWMiLCJtYXRlIHdpdGgvbWF0ZSIsImlmIiwiZWYvbmkiLCJpb21vYyIsIm1hdGUgd2l0aC9tYXRlIiwiaW5pdGlhdGUiLCJraWZmbG8iLCJpb25vbiIsImhlcmUiLCJpcyIsImlzaXMvaXgiLCJpcmZudSIsImZvbGxvd2VyIiwiaXRlbSIsIml0YWthIiwiaXJmbnVuYSIsImZvbGxvd2VyIiwia2lsbCIsImNhcm5nZS9jcmFuZ2UvZW92YWMiLCJpc2lzIiwiaXMiLCJrbm93Iiwia2xvcGUva251L2tvbi9ub3dsZXkva2xvcHJhIiwiaXRha2EiLCJpdGVtIiwia25vd2xlZGdlIiwibmF3bGVqL25vd2xlaiIsIml0YWthcyIsInRha2UgaXRlbSIsIktvRVMiLCJub3RjbyIsIml4IiwiaXMiLCJsZWF2ZSIsImdvdGFnb24vcGxhaGthL2VyaXJmbnUiLCJqb3NwaSIsImdpdmUiLCJsZXNzb24iLCJnb2h3ZWwiLCJqc29waSIsImdpdmUvb2ZmZXIiLCJsZXQiLCJsYXgiLCJrYWpuYSIsInNwZWFrIiwibGlrZSIsIm5pa2UiLCJLYW/igJlrbGlwcyIsIkNoYW9zIEVjbGlwc2UiLCJsaXR0bGUiLCJwdXRyYSIsIkthb+KAmWtsaXBzIiwiQ2hhb3NFY2xpcHNlIiwibG9uZyB3aW5kZWQiLCJndmlsdGEiLCJrYXB1eHRyYSIsImNvbGxhcHNlZCIsImxvb2siLCJ6YXAiLCJrYXJuYXZsIiwiY2F2ZXMiLCJsb29raW5nIiwiemFwYXR6ayIsImthcnRlbCIsInRydXN0IiwibG92ZSIsIm51bGEvdGFsYSIsImthdGEiLCJleWUiLCJtYWQiLCJwaSdpcCIsImthdG9rZSIsIm1hcmUiLCJtYWxlIiwiY2hhIiwia2F6bSIsIkNoYXNtIiwibWFrZSIsImtpcG90aWsiLCJrZWN6IiwibmV4dCIsIm1hbiIsImJhbmEiLCJraWZmbG8iLCJpbml0aWF0ZSIsIm1hcmUiLCJrYXRva2Uva290a2UiLCJraWxrdG9rIiwiKChtYXJlbiBjdXJzZSkpIiwibWFyZSBzZWN0IiwiY2FkYW4vc2F0ZXgiLCJraXBha3RyYSIsImNvbGxhcHNlIiwiTWFyZW4iLCJrb3RvdGtlIiwia2lwYXh0cmEiLCJjb2xsYXBzZSIsIm1hdGUiLCJpb21vemMvaW9tb2MiLCJraXBrZ2UiLCJzYW5jdHVhcnkiLCJtZSIsIm5la2kiLCJraXBvdGlrIiwiZWFybi9nZXQvbWFrZSIsIm1pZ2h0eSIsInBhbGcvcGxhZyIsImtpcHRvdGlrIiwiZWFybiIsIm1vcmUiLCJtb21vL3BvIiwia2lycmEiLCJ5ZXN0ZXJkYXkiLCJtdWNoIiwibm9udG8iLCJrbGFwa2EiLCJzdG9wIiwibXkgbmFtZSBpcyIsInBhbHEgdWxwZGEiLCJrbG9wZSIsImtub3ciLCJuZWVkIiwibXVzaXQvbGF4Iiwia2xvcHJhIiwia25vdyIsIm5lc3QiLCJwYXluZSIsImtsb3B0YSIsImFyZSB5b3UiLCJuZXZlcm1pbmQiLCJ0emlubmEiLCJrbnUiLCJrbm93IiwibmV4dCIsImtlY3oiLCJrb24iLCJrbm93Iiwibm8iLCJub3MvdHppIiwia29ycmEiLCJ0b2RheSIsIm5vbmUiLCJuaWMiLCJrb3RrYSIsIm1hcmUiLCJub3QiLCJ0emluIiwia290b2tlIiwiZGFya21hcmUiLCJub3ciLCJmb2EvcGEvcGFzL25pbW1hIiwia290b3RrZSIsIm1hcmVuIiwib2YiLCJkYS9ncnUvdGkiLCJrb3RvdHZvYyIsInRoZSBkcmVhbSIsIm9mZmVyIiwianNvcGkiLCJrb3Rvdm9rIiwiZGFyayBtYXJlcyIsIm9uZSIsImh1bSIsImtyYW5kYSIsImhvdXNlIiwib25seSIsImJ1bmEiLCJrcmFzdCIsInN0ZWFsIiwiT29TTSIsImJrb3RlL2x1biIsImtyb25kZSIsImhvdXNlIiwib3BlbiIsInNhZmEiLCJrcnMiLCJ0cnkiLCJvciIsImUvbW9uIiwia3Rha+KAmWQiLCJ0b29rIiwib3RoZXIiLCJiaW4iLCJrdGFrIiwidGFrZSIsIm93bmVyIiwibWFqZXQiLCJrdW50cmEiLCJmaXJzdCIsInBhcmVudCIsInBhbHAiLCJsYW5uYSIsInRlYWNoIiwicGVhY2UiLCJwYXJpYWgvcHJhY2llL3ByaWNoIiwibGFyZ25hbmEiLCJmb3JjZSByZXN0b3JlL3NvdWwgZXZva2UiLCJwZXJpc2giLCJmbGFhdGEvZmxhdGEiLCJsYXJuZyIsInJlc3RvcmUiLCJwbGFuIiwicGxhZC90ZXNlIiwibGF4IiwibGV0L25lZWQiLCJwbGF5IiwiZGFjdGEiLCJsdW0iLCJEb0wiLCJwb2lzb24iLCJ2bm9tIiwibHVuIiwiT29TTSIsIlBvUiIsInNvbGtyL2JvdmFyIiwibWFmc3JhIiwiZ29uZS9hd2F5IiwicG9ydGFsIiwicG9ybCIsIm1hamV0Iiwib3duZXIiLCJwb3dlciIsIm1heHRyaWsvbWF4dHJpa2EiLCJtYXRoem5pIiwic29ycnkgeW91IGFsbCIsInBvd2VyZnVsIiwibWF4dHJhIiwibWF0aHoiLCJzb3JyeSIsInBlcnBhcmUiLCJncnJ6dC9ncnp6dCIsIm1heHRyYSIsInBvd2VyZnVsIiwicHJvdGVjdCIsInl1Ym51YiIsIm1heHRyaWthIiwicG93ZXIvc3RyZW5ndGhlbiIsInJhbiIsImRhcmdvbmUiLCJtYXh0cmlrIiwicG93ZXIvYXJ0IiwicmVhc29uIiwiZ3Vhc2F0YSIsIm1pbml0IiwidW5kZXJzdGFuZCIsInJlY2VpdmUiLCJjcmVlYWsgZ29zc25hIiwibW8iLCJhbmQiLCJyZWxhdGl2ZSIsInBhbC9wYWxwIiwibW9rZSIsInRocmVhdGVuIiwicmVzdG9yZSIsImxhcm5nL3Jlc2FuYyIsIm1vbW8iLCJtb3JlIiwicmV3YXJkIiwiYXRzaWxhLWpzcG9pIiwibW9ub24iLCJjb3JyZWN0Iiwicm9vbSIsImFyYyIsIm1vbiIsIm9yIiwicnVsZXIiLCJoaHJlZiIsIm11c2l0YSIsIm5lZWRzIiwicnVuIiwiZHJ1aCIsIm11c2l0IiwibmVlZCIsInNhZCIsInNtdXRuIiwibXUiLCJ5b3UiLCJzYWZlIiwicXVmbiIsIm5hIiwidGhlIiwic2FtZSIsImF3L2ltbmsvbnVyYXRhIiwibmVraSBpZm5ldSIsImZvbGxvdyBtZSIsInNhbmN0dWFyeSIsImtpcGtnZSIsIm5la2kgaXNpcyIsImkgYW0iLCJzZWUiLCJ6YXAiLCJuZWtpIiwibWUiLCJzaGFyZSIsImd5cmt0aCIsIm5naWciLCJpIHdvbid0Iiwic2hpZWxkIiwieXViLWl0YWthL2JubnRpIiwibmhvbiIsImdvIGF3YXkiLCJzaG9ydCIsImZxdyIsIm5pYyIsIm5vbmUiLCJzaXIvbWFkYW0iLCJxcXByaXR6eSIsIm5pa2UiLCJlcXVhbC9saWtlIiwic21hbGwiLCJmcXciLCJuaW1tYSIsIm5vdyIsInNvbWUiLCJwZWNvIiwibmlwIiwiYXQiLCJzb24iLCJzZXBsYW4iLCJuaXRhIiwid2l0aCIsInNvcnJ5IiwiZWVtYS9tYXRoeiIsIm5pIiwidG8vaWYiLCJzb3JyeS95b3UgYWxsIiwibWF0aHpuaSIsIm5vY293bGUiLCJzb3Vsc3BoZXJlIiwic291bCBldm9rZSIsImxhcmduYW5hIiwibm93Y2xlIiwiZnJpZW5kIiwic291bHNwaGVyZSIsIm5vY3dvbGUvbm93Y293bGUiLCJub3dsZWoiLCJrbm93bGVkZ2UiLCJzcGVhayIsInJpY3QvdmFjYWwvY2FrYWwva2FqbmEiLCJub3dsZXkiLCJrbm93Iiwic3RheSIsInF1Zm4vaW1raXAiLCJudWxhIiwibG92ZSIsInN0ZWFsIiwia3Jhc3QiLCJudXJhdGEiLCJzYW1lIiwic3RvcCIsImtsYXBrYSIsIm9kcG9yIiwid2FyIiwic3RyZW5ndGhlbiIsIm1heHRyaWthIiwib2d2IiwiZWdnIiwic3VtbW9uIiwic3VtYXh0cmEiLCJvbW9ubyIsImVuZW15Iiwic3dpbSIsInNwaHBsaXNjaCIsIm9waG9zaCIsImNoYXNlIiwic3dpbW1pbmciLCJzY2hwbGlzY2hpbmciLCJwYWFuYSIsImZyZWUgc3Bpcml0L2NoYW90aWMgZHJlYW1lciIsInRha2UiLCJrdGFrIiwicGFhbiIsImNvd2FyZGx5IiwidGFrZSBpdGVtIiwiaXRha2FzIiwicGEiLCJob3cgb3Igbm93IiwidGVhY2giLCJkYW50by9sYW5uYSIsInBhbGciLCJtaWdodHkiLCJ0ZWFjaGVyIiwiZGFudG8vaWRleW9odnNnaSIsInBhbGcgdWxwZGEgaXNpcyIsImkgYW0gdGhlIG1pZ2h0eSIsInRlbGwgbWUiLCJyaWN0IG5la2kiLCJwYWxwIiwicGFyZW50L3JlbGF0aXZlIiwidGhhbiIsImdudGYiLCJwYWxxIHVscGRhIiwibXkgbmFtZSBpcyIsInRoYW5rIHlvdSIsImZhayBodyIsInBhbCIsInJlbGF0aXZlL2ZvciIsInRoYXQiLCJiaW4vZG9zIiwicGFudHoiLCJmaWdodC9odXJ0IiwidGhlIiwibmEiLCJwYXJpYWgiLCJwZWFjZSIsInRoZSBkcmVhbSIsImtvdG90dm9jL2tvdG90dm9rIiwicGFzIiwibm93IiwidGhlbiIsIm5lIiwicGF5bmEiLCJuZXN0IiwidGhpbmdzIiwiZ3Vhc3RhIiwicGVjbyIsInNvbWUiLCJ0aG9zZSIsImRvcyIsInBlcm0taXRha2EiLCJhcnRpZmFjdCIsInRocmVhdGVuIiwibW9rYSIsInBldGhhIiwiZWxlbWVuIiwidGljayIsImNodWsiLCJwaSdpcCIsIm1hZCIsInRpbWUiLCJkYWdpYXd1Z2EiLCJwaXR0eiIsImJhZCIsInRpbWUgcGFzc2VzIiwiY2h1ayBjaHVrIiwicGxhZCIsInBsYW4iLCJ0byIsInRpL25pL3VtL2VrIiwicGxhZyIsIm1pZ2h0eSIsInRvZGF5Iiwia29ycmEiLCJwbGFoa2EiLCJsZWF2ZSIsInRvb2siLCJrdGFr4oCZZCIsInBsaWt0b2siLCIoKG1hcmVuIGN1cnNlKSkiLCJ0b3VjaCIsImJudSIsInBvam8iLCJmb29sIiwidHJ1c3QiLCJrYXJ0ZWwiLCJwbyIsIm1vcmUiLCJ0cnkiLCJrcnMiLCJwbydvcCIsImhlbHAiLCJ0d28iLCJkdW0iLCJwbydvcG5pIiwiaGVscCBhbGwiLCJ1bmRlcnN0YW5kIiwiZGFtaS9taW5pdCIsInBvcmNlIiwiaGVscCIsIlVvQyIsInVuYy9iYXBhIiwicG9ybCIsInBvcnRhbCIsInZvaWNlIiwidmFjYWwvdmFrYWwiLCJwb3ciLCJmaXJlIChzaG9vdCkiLCJ3YWl0IiwiY2VrYXQiLCJwb3ctaXRha2UiLCJjaGFrcmFtIiwid2FudCIsIndhZmEiLCJwb3ctc2VlcyIsImNoYXJtIiwid2FyIiwib2Rwb3IiLCJwcmFjaWUiLCJwZWFjZSIsIndhcyIsIndhbmEiLCJwcmF6YWgiLCJkaWUvZmlnaHQiLCJ3ZWFrIiwicHV1dSIsInByaWNoIiwicGVhY2UiLCJ3aGF0IiwidmRhdCIsInByaW0iLCJmcm9udCIsIndoZW4iLCJ2ZGVuIiwicHV0cmEiLCJsaXR0bGUiLCJ3aGVyZSIsInZkZXJlIiwicHV1IiwiZ29vZCIsIndoeSIsImNhbHB1cnMvZWgiLCJwdXV1IiwiYmFkL3dlYWsiLCJ3aWxsIiwid2FnYS93YWthL3dhcWEiLCJxbnRmIiwiZm9vbCIsIndpbmQiLCJ3ZCIsInFxcHJ0enkiLCJzaXIvbWFkYW0iLCJ3aXRoIiwiZ3J1L3F1b3Avbml0YSIsInF1Zm4iLCJzdGF5L2hlcmUvc2FmZSIsIndvbuKAmXQiLCJ3YXFh4oCZZCIsInF1b3AgYmFrYSIsImJld2FyZSBvZiBvdXIgbWFzdGVyIiwid29yZHMiLCJ2YWNhbC92YWthbCIsInF1b3AgYmFxYSIsImJld2FyZSBvZiBvdXIgbWFzdGVyIiwid291bmRlZCIsIndvdWV4L3dvdmV4IiwicXVvcCIsIndpdGgiLCJ5ZXMiLCJiZXNhL2JlYXMveHVwIiwicmVzYW5jIiwicmVzdG9yZSIsInllc3RlcmRheSIsImtpcnJhIiwicmljdCBuZWtpIiwidGVsbCBtZSIsInlvdSIsImd1b2svaHcvbXUiLCJyaWN0Iiwic3BlYWsiLCJ5b3V0aCIsInlvZHRoIiwic2FmYSIsIm9wZW4iLCJzYXRleCIsIm1hcmUgc2VjdCIsInNjaHBsaXNjaGluZyIsInN3aW1taW5nIiwic2N5bGUiLCJibHVlIiwic2VwbGFuIiwic29uIiwic2dlIiwiYmVsaWV2ZSIsInNoaXJ1IiwiaGFwcHkiLCJza3lydCIsImhpZGUiLCJzbXV0biIsInNhZCIsInNvbGtyIiwiUG9SIiwic3BocGxpc2NoIiwic3dpbSIsInNwaXJhIiwiY2lyY2xlIiwic3VtYXh0cmEiLCJzdW1tb24iLCJzdXRpIiwiY2xvc2VkIiwidGFsYSIsImxvdmUiLCJ0ZXNlIiwicGxhbiIsInRldHRlIiwiZHJlYW1lciBlc3NlbmNlIiwidGhhIiwiZmVtYWxlIiwidGhhbWEiLCJnaXJsIiwidGkiLCJ0by9vZiIsInR6aW5uYSIsIm5ldmVybWluZCIsInR6aW4iLCJub3QvZG9u4oCZdCIsInR6aSIsIm5vIiwidWxwIiwiYmUvYW5kIiwidWxwZGEiLCJpIGFtIiwidW0iLCJ0byIsInVuYyIsIlVvQyIsInV1cmEiLCJldmlsIiwidXVyZyIsImRyZWFkIiwidXV1cmEiLCJldmlsIiwidXV1cmciLCJkcmVhZCIsInZhY2FsIiwid29yZHMvc3BlYWsvdm9pY2UiLCJ2YWthbCIsIndvcmRzL3NwZWFrL3ZvaWNlIiwidmFuZyIsImFmcmFpZCIsInZhbmduaSIsImFmcmFpZCBhbGwiLCJ2YXRzIiwiY29tZS9icmluZyIsInZkYXQiLCJ3aGF0IiwidmRlbiIsIndoZW4iLCJ2ZGVyZSIsIndoZXJlIiwidmVudGlsIiwiY2FyZSIsInZub20iLCJwb2lzb24iLCJ2b2FnYXIiLCJnbyIsInZvZG8iLCJpIiwidm9kbyBubyIsImkgZG9uJ3QiLCJ2b3JhZ2FyIiwiZ28iLCJ2b3Jhc2hhIiwiYXdheS9lbHNld2hlcmUiLCJ2c2lkYWwiLCJmYXIiLCJ2emlkYWwiLCJmYXIiLCJ3YWZhIiwid2FudCIsIndhZ2EiLCJ3aWxsIiwid2FrYSIsIndpbGwiLCJ3YWxhIiwiaGF2ZSIsIndhbmEiLCJ3YXMiLCJ3YXFhIiwiY2FuL3dpbGwiLCJ3YXFh4oCZZCIsIndvbuKAmXQiLCJ3ZCIsIndpbmQiLCJ3aG9oIiwiZnJpZW5kIGZvciBsaWZlIiwid2hvdGwiLCJnb29kIGZyaWVuZCIsIndob3RzaSIsImZyaWVuZCIsIndob3RzbCIsImdvb2QgZnJpZW5kIiwid291ZXgiLCJ3b3VuZGVkIiwid292ZXgiLCJ3b3VuZGVkIiwieGFkeCIsImJhYnkiLCJ4a296IiwiZnJvbSIsInhub21ibyIsImNvdW50cyIsInh1cCIsImJ1dC95ZXMiLCJ5b2R0aCIsInlvdXRoIiwieXViLWl0YWtlIiwic2hpZWxkIiwiemFhYSIsImVnZyIsInphcGF0emsiLCJsb29raW5nIiwiemFwIiwic2VlL2xvb2siLCJ6ZGFrIiwiY29sbGFwc2UiLCJ6dGFoIiwiZmlnaHQvZmlnaHQgb3RoZXJzIiwienRhdGhhIiwiZGlzYXBwZWFyL2V2YXBvcmF0ZS9maXJlL2Rlc3Ryb3llciIgfTsKCgkJTWFwPFN0cmluZywgU3RyaW5nPiBtID0gbmV3IEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+KCk7CgoJCWZvciAoaW50IGkgPSAwOyBpIDwgZGljdGlvbmFyeS5sZW5ndGg7IGkgKz0gMikgewoJCQlpZih1c2VFbmdsaXNoS2V5KSB7CQkJCQoJCQkJbS5wdXQoZGljdGlvbmFyeVtpXSwgZGljdGlvbmFyeVtpICsgMV0pOwoJCQl9IGVsc2UgewoJCQkJbS5wdXQoZGljdGlvbmFyeVtpICsgMV0sIGRpY3Rpb25hcnlbaV0pOwoJCQl9CgkJfQoKCQlyZXR1cm4gbTsKCX0KCglwdWJsaWMgc3RhdGljIHZvaWQgdHJhbnNsYXRlKFN0cmluZyB0ZXh0VG9UcmFuc2xhdGUsIE1hcDxTdHJpbmcsIFN0cmluZz4gbWFwKSB7CgkJLy8gU3BsaXQgdGhlIHRleHQgcGFyYW1ldGVyCgkJU3RyaW5nW10gd29yZHMgPSB0ZXh0VG9UcmFuc2xhdGUuc3BsaXQoIiAiKTsKCQlMaXN0PFN0cmluZz4gZmluYWxTdHJMaXN0ID0gbmV3IEFycmF5TGlzdDxTdHJpbmc+KCk7CgkJU3RyaW5nIGZpbmFsU3RyID0gIiI7CgoJCWZvciAoU3RyaW5nIHdvcmQgOiB3b3JkcykgewoJCQkvLyBjaGVjayBmb3IgdGhlIHdvcmRzIGluIHRoZSB0ZXh0IHBhcmFtZXRlcgoJCQlpZiAobWFwLmNvbnRhaW5zS2V5KHdvcmQudG9Mb3dlckNhc2UoKSkpIHsKCgkJCQkvLyBnZXQgdmFsdWUKCQkJCWZpbmFsU3RyTGlzdC5hZGQobWFwLmdldCh3b3JkLnRvTG93ZXJDYXNlKCkpKTsKCQkJfSBlbHNlIHsKCQkJCVN5c3RlbS5vdXQucHJpbnRsbihTdHJpbmcuZm9ybWF0KCJDb3VsZCBub3QgZmluZCBrZXkgJXMiLCB3b3JkKSk7CgkJCX0KCQl9CgkJCgkJZm9yIChTdHJpbmcgdyA6IGZpbmFsU3RyTGlzdCkgewoJCQlmaW5hbFN0ciArPSB3ICsgIiAiOwoJCX0KCQkKCQkKCQlTeXN0ZW0ub3V0LnByaW50bG4oZmluYWxTdHIudHJpbSgpKTsKCX0KCQoJcHVibGljIHN0YXRpYyB2b2lkIHRyYW5zbGF0ZUZyb21NYXJlbihTdHJpbmcgdGV4dFRvVHJhbnNsYXRlLCBNYXA8U3RyaW5nLCBTdHJpbmc+IG1hcCkgewoJCS8vIFNwbGl0IHRoZSB0ZXh0IHBhcmFtZXRlcgoJCVN0cmluZ1tdIHdvcmRzID0gdGV4dFRvVHJhbnNsYXRlLnNwbGl0KCIgIik7CgkJTGlzdDxTdHJpbmc+IGZpbmFsU3RyTGlzdCA9IG5ldyBBcnJheUxpc3Q8U3RyaW5nPigpOwoJCVN0cmluZyBmaW5hbFN0ciA9ICIiOwoKCQlmb3IgKFN0cmluZyB3b3JkIDogd29yZHMpIHsKCQkJLy8gY2hlY2sgZm9yIHRoZSB3b3JkcyBpbiB0aGUgdGV4dCBwYXJhbWV0ZXIKCQkJaWYgKG1hcC5jb250YWluc1ZhbHVlKHdvcmQudG9Mb3dlckNhc2UoKSkpIHsKCQkJCS8vIGdldCB2YWx1ZQoJCQkJZmluYWxTdHJMaXN0LmFkZChtYXAuZ2V0KHdvcmQudG9Mb3dlckNhc2UoKSkpOwoJCQl9CgkJfQoJCQoJCWZvciAoU3RyaW5nIHcgOiBmaW5hbFN0ckxpc3QpIHsKCQkJZmluYWxTdHIgKz0gdyArICIgIjsKCQl9CgkJU3lzdGVtLm91dC5wcmludGxuKGZpbmFsU3RyLnRyaW0oKSk7Cgl9Cn0=